Hi,

I would like to contribute my Cygwin port of grub2.

A patch vs. current CVS (cvs co -D "2007-10-16 UTC" ...) is available
here:
http://franke.dvrdns.org/cygwin/grub/grub2-20071016-cygwin.patch
A proposed changelog entry is located in the patch itself
(Changelog.cygwin).

A compiled version is here:
http://franke.dvrdns.org/cygwin/grub/grub2-20071016-cygwin.tar.bz2
(Caution: grub-setup/install only tested in a VM yet ;-)

Major changes:

- Option -N of Cygwin ld has no effect. This is handled by a linker
script detected by configure.

- Cygwin gas supports only PE format, not ELF. The ".previous" and
".type" directive have been removed and the loader changed accordingly.

- For Cygwin, ELF .mod files are produced by an extra objcopy step.
Unfortunately, objcopy has a bug when converting PE to ELF: The pc
relative relocation offsets are not adjusted. This is handled by an ugly
hack in the loader. I hope to find a fix for objcopy.

- The HAVE_ASM_USCORE case is now handled properly. It actually works to
load modules compiled on Linux by a kernel compiled on Cygwin and vice
versa.

- Added options "-t prefix" and "-t all" to grub-probe.

- grub-emu curses KEY_*s work now.

- Fixed 2 bugs in "(host)" filesystem, grub-emu now finds partitions.

- Two fixes in the memory map evaluation, added a primitive memory
existence test.


Open issues found during testing:

- Cygwin "prefix" detection does no work for path below /cygdrive/.

- update-grub does not work on Cygwin yet.

- A memtest86+ zImage (from grml 1.0) does not boot when loaded with
"linux" command. Same image works with "kernel" command from grub 0.97.

- "terminal gfxterm", "videotest" and "vbetest" do not work. Characters
are not visible. This could also be reproduced when compiled on Linux.


Thanks for any comment.

Cheers,

Christian





_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to