grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] grub2 for Cygwin


From: Christian Franke
Subject: Re: [PATCH] grub2 for Cygwin
Date: Sat, 05 Apr 2008 14:44:08 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071128 SeaMonkey/1.1.7

Pavel Roskin wrote:
On Thu, 2008-04-03 at 21:56 +0200, Christian Franke wrote:

OK, if there is no chance to get this accepted, grub2 project managers should tell me soon.

I'm not a project manager, but I would hate to see useful code
discarded.

:-)


I think the ability to install GRUB from Windows would allow creating
installers for Windows that install a free OS without reboots and would
not rely on booting from any media other than the hard drive.  I think a
non-Cygwin port would be preferred for that, but Cygwin could be a
useful stepping stone, a testbed and the build environment for the
native port.


Yes, it actually is. I also use cygwin to build the non-Cygwin packages for my other Windows ports (smartmontools, hdparm).

Cygwin's "kernel" is essentially a dll which emulates a Linux/POSIX API. The GRUB2 cygwin binaries need only the following files to run OOTB from Windows cmd.exe:
cygwin1.dll
cyglzo2-2.dll
cygncurses-8.dll (grub-emu only)
terminfo/c/cygwin (grub-emu only)

The shell scripts would require additional files from bash and coreutils, of course.

...
Maybe we could start with simple changes that don't make the code
significantly more complex?

OK, then I would suggest to (re)start with the small change for grub-mkdevicemap.

http://lists.gnu.org/archive/html/grub-devel/2007-12/msg00179.html

The patch is still current and already got positive feedback from Marco and Robert.
I can also repost it, if desired.


I think it would be nice to have a universal infrastructure for all
platforms that would use linker scripts instead of strip and objcopy on
all platforms.

objcopy has to be used if the native object format on a platform is not (the) ELF (variant the grub loader expects).

Unfortunately, libbfd is apparently not designed to support conversion of relocation info.


Perhaps you could clone git://repo.or.cz/grub2.git and keep the patches
in your local copy?

OK, added this as remote to my repo.


  The great thing about git is that it relieves the
urgency of merges, as the changes can be held as separate patches and
rebased to the current tree as needed.


BTW: Thanks to the clean upstream changes, merging from CVS was never a problem since I started the Cygwin port in oct 2007.


The cygwin port of grub2 is targeted to users who want a *n[iu]x environment, but (have to) use Windows as main work OS for whatever reason. They likely have already installed cygwin :-)

Why would they benefit from GRUB?  Just wondering.


The ability to maintain the boot manger and create rescue discs from Cygwin shell without reboot is useful. (There were some requests for a Cygwin release in the past, e.g: http://savannah.gnu.org/bugs/?20497)

Christian





reply via email to

[Prev in Thread] Current Thread [Next in Thread]