discuss-gnustep
[Top][All Lists]
Advanced

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

Re: Graphical Installers


From: Tom Koelman
Subject: Re: Graphical Installers
Date: Mon, 21 Nov 2005 22:14:22 +0100
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (windows-nt)

Helge Hess <helge.hess@opengroupware.org> writes:

> A document which explains in a very detailed way how the installer 
> works and what it actually does would definitely be helpful.

I whipped up a short document that gives an impression. Let me know if
you want to know more.

Regards,
Tom Koelman

The GNUstep development installer

This document describes what the Windows GNUstep development installer does.

Contents of the installer

Basically it contains

The shell is msys + mingw.

The source is

The libraries are

Overview of running the installer

It allows one to choose what it should do.

The choices are

Install all source plus binaries for base and gui
This would install everything to one directory, plus all already compiled libraries of base and gui
Install all source plus binaries for base
Same as above, but no installing of already compiled libraries for gui.
Install all source and build binaries for base and gui
Installs everything to one directory, and then runs the scripts to compile everything.
Install all source and build binaries for base
Same as above, but no compiling of gui.
Install all source
Just installs everything and does nothing smart.

Where is everything installed

If you really want to figure out what happens, you could run the "Install all source" option and the look at the installed files. Say you installed to
c:\GNUstep

Now all sources are installed in

c:\GNUstep\Development\Source
The sources are actually nothing more than the unpacked tar files. The most interesting of the source directories is probably
c:\GNUstep\Development\Source\patches
where you can find out what the installer would patch for you.

Now take a look at

c:\GNUstep\Development\msys\1.0\installer
This contains all the scripts that would be run to compile the source. For example, it contains the apply-patches.sh script that iterates over all the patches in
c:\GNUstep\Development\Source\patches
and applies them. The subdirectory log here contains all the logging that was created during the running of the installer. If you would actually have let the installer compile for you, this one would contain interesting logs. The temp directory here is used for miscellaneous purposes in the scripts.

Compiling

All needed source is already untarred. Basically what the compile scripts do is follow the recipe of the README.MinGW file. All configuring and making and such is logged in
c:\GNUstep\Development\msys\1.0\installer\log

Prebuilt binaries

Actually, when the installer itself is built, first a version is created that doesn't contain the binaries. Then it is run with the option to compile everything from scratch. When that succeeds, a new installer is built containing everything the original installer contained plus the newly built binaries. In effect, the binaries that are included are the ones in
c:\GNUstep\System

After all is installed, the installer runs the replace-gnustep-system-root.sh script. It changes the GNUstep.sh script to contain the location of where the binaries are installed instead of where they were originally compiled.


reply via email to

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