Vladimir 'phcoder' Serbinenko
6d0fa83c79
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-23 02:10:44 +02:00
..
2010-09-08 13:53:47 +01:00
2010-09-22 23:32:58 +02:00
2010-05-06 11:34:04 +05:30
2010-09-23 02:10:44 +02:00
2010-09-19 00:04:31 +02:00
2010-09-23 02:10:44 +02:00
2010-09-03 14:54:04 +02:00
2010-09-14 20:59:00 +02:00
2010-05-06 11:34:04 +05:30
2010-09-14 23:06:01 +02:00
2010-09-20 23:01:34 +02:00
2010-09-20 21:45:06 +02:00
2010-09-20 21:45:06 +02:00
2010-08-25 21:19:45 +02:00
2010-09-05 13:05:36 +02:00
2010-05-06 11:34:04 +05:30
2010-09-20 17:46:35 +02:00
2010-09-05 13:05:36 +02:00
2010-07-13 00:43:28 +05:30
2010-07-13 00:43:28 +05:30
2010-07-13 00:43:28 +05:30
2010-09-19 22:22:43 +02:00
2010-08-29 00:19:13 +02:00
2010-07-13 00:43:28 +05:30
2010-09-08 21:22:41 +02:00
2010-07-13 00:43:28 +05:30
2010-08-31 14:03:29 +02:00
2010-08-31 14:03:29 +02:00
2010-05-06 11:34:04 +05:30