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-23 02:10:44 +02:00
2010-09-21 21:57:57 +02:00
2010-09-21 16:58:08 +01:00
2010-09-21 13:41:23 +01:00
2010-09-20 01:40:58 +02:00
2010-07-13 00:43:28 +05:30
2010-09-14 21:07:39 +02:00
2010-09-05 13:05:36 +02:00
2010-07-13 00:43:28 +05:30
2010-09-21 00:09:23 +01:00
2010-09-14 23:06:01 +02:00
2010-05-06 11:34:04 +05:30
2010-09-05 17:12:13 +02:00
2010-09-23 02:10:44 +02:00
2010-09-23 02:10:44 +02:00
2010-09-22 16:57:49 +01:00
2010-09-20 22:24:30 +02:00
2010-09-21 19:03:11 +01:00
2010-09-20 21:45:06 +02:00
2010-05-06 11:34:04 +05:30
2010-09-20 23:01:34 +02:00
2010-09-20 16:27:33 +02:00
2010-09-14 23:06:01 +02:00
2010-09-16 00:37:30 +02:00
2010-05-06 11:34:04 +05:30
2010-05-06 11:34:04 +05:30
2010-09-19 19:29:36 +05:30
2010-08-29 16:43:07 +05:30
2010-08-29 11:17:30 +05:30
2010-05-06 11:34:04 +05:30
2010-05-06 11:34:04 +05:30
2010-09-19 22:22:43 +02:00
2010-09-23 02:10:44 +02:00