Helge Hess <[EMAIL PROTECTED]> 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 KoelmanTitle: The GNUstep development installer
The GNUstep development installer
This document describes what the Windows GNUstep development installer does.
Contents of the installer
Basically it contains
- a shell
- source
- libraries
- some scripts to compile the source
- some patches on the source
- some precompiled binaries if you decide not to compile the source
The shell is msys + mingw.
The source is
- ffcall
- libobjc
- base
- gui
- back
- make
The libraries are
- jpeg
- iconv
- png
- tiff
- zlib
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 toc:\GNUstep
Now all sources are installed in
c:\GNUstep\Development\SourceThe sources are actually nothing more than the unpacked tar files. The most interesting of the source directories is probably
c:\GNUstep\Development\Source\patcheswhere you can find out what the installer would patch for you.
Now take a look at
c:\GNUstep\Development\msys\1.0\installerThis 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\patchesand 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 inc:\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 inc:\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.
_______________________________________________ Discuss-gnustep mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnustep
