Submitting this as a patch rather than committing it directly per Hisham's request. After the patch provided below, Rootless happily installs on Cygwin. It also works under OS X, with a caveat or two.

As Carlo suggested, I did have to install a GNU userland in order to get this to work correctly on my MacPro, but it actually wasn't too difficult to do, and, and I can now "Compile CoreUtils" successfully. The process I used wasn't added to the CreateRootlessEnvironment script because it would have been a lot of Mac-specific code, and would have added DarwinPorts as a dependency. With a couple more tweaks, though, I could supply both i386.Darwin and ppc.Darwin packages for CoreUtils based on our recipe, then modify CreateRootlessEnvironment to install them before they're needed.

This project has revealed a couple of bugs with respect to Rootless in general (not just my Cygwin/Mac version) elsewhere in the scripts which currently prevent SignProgram from working correctly on Cygwin, Mac, or Linux hosts. Once I hunt those down, I'd like to see a new +0.0.1 version (are those called "microversions"?) release of Scripts and Compile regardless of whether we decide to use this patch. As of the current release, the Rootless does not work, even on a Linux machine, because of some bugs in the latest released version that have since been fixed in CVS.

90% of my changes were in CreateRootlessEnvironment:
- Checks for its own dependencies on the host machine before it runs
- Version number of the Scripts it tries to download is fixed
- Offers to recompile the Scripts for you if it's necessary
- Uses .bash_profile instead of .bashrc, since I have yet to see any bash installation anywhere that actually sources .bashrc without being told to by .bash_profile

Changes to other files:
- src/List.c: Added an #ifdef because Apple puts sys headers in weird places - Makefile: Added something to automatically fix the version number in the CreateRootlessEnvironment script when you run make dist. - src/Makefile: Added a fix for the fact that Cygwin's gcc appends .exe to all its filenames, regardless of whether you specify a -o option.


Sorry this took me so long (there really isn't much here). Stuff kept coming up. Anyway, without further ado:

Attachment: big_rootless_patch.bz2
Description: Binary data


I await your comments with great eagerness :)

_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to