Appendix A. Packaging details

1. The makefile

You do not have to build every subcomponent of this release. The makefile specifies subtargets for different functional subpieces. See the component map at GT4 Facts for more details.

Makefile targets

  • i18n: Internationalization libraries
  • prewsgram: Pre-webservices GRAM
  • gridftp: GridFTP
  • prewsmds: OpenLDAP-based MDS2
  • prews: Pre-WS GRAM, MDS2, and GridFTP
  • wsjava: Java WS Core
  • wsc: C WS core
  • wsmds: MDS4
  • wsdel: Delegation Service
  • wsrft: Reliable File Transfer service
  • wsgram: GRAM4
  • wscas: Community Authorization Service
  • wstests: Tests for java webservices
  • wsctests: Tests for C webservices
  • prews-test: Tests for pre-webservices components
  • rls: Replica Location Service

Note that all of these targets require the "install" target also. So, for instance, to build GridFTP alone, you would run:

$ ./configure --prefix=/path/to/install
$ make gridftp install

2. The Grid Packaging Toolkit

The Globus Toolkit is packaged using the Grid Packaging Toolkit (GPT). The GPT provides a way for us to version packages and express dependencies between packages. The Makefile for the installer is automatically generated based on the GPT dependencies expressed in CVS. GPT versions also allow us to release update packages for small subsets of our code. For more information on the GPT, you may see its website.

3. Picking a flavor for a source installation

If you're building on a platform that is not auto-detected by the configure script, you will be prompted to specify a flavor for the --with-flavor= option. Typically "gcc32dbg" will work as a flavor to build 32-bit binaries using gcc. If you want to force a 64bit build, "gcc64dbg" should work.

Some platforms have better support from their native compilers, so you can use "vendorcc32dbg" to build using the native cc. Similarly, "vendorcc64dbg" will force a 64bit build instead.