Build Flavor Conventions

This chapter discusses the purpose of build flavors and how they can be used. An important GPT convention is the format of the flavor label. This label is used in both package and file names. The figure here shows the components of a typical flavor name. The conventions is that any component that has the value none will contribute nothing to the label. The table here shows possible values of the flavor components. This table shows some examples

Figure 2.1. Flavor Labels Disected

Flavor Labels Disected

Table 2.1. Flavor Components

ComponentValuesLabelDescription
CompilergccgccUse the GNU C compiler
vendorccvendorccUse the C compiler provided by the platform vendor.
mpiccmpiccUse the wrapper script for the C compiler provided by MPI.
Number Size3232Compile with 32 bit integers
6464Compile with 64 bit integers
DebugdbgdbgHave the compiler produce debugging data inside the binary
nodbg Binary will not contain debugging data.
ThreadspthrpthrCompiler creates binaries that use pthreads
solaristhreadssolthrCompiler creates binaries that use solaris native threads
nothreads Compiler creates binaries that are not guaranteed to be thread safe.

Table 2.2. Flavor Examples

LabelCompilerNumber SizeDebuggingThreadsMPI
gcc32dbgpthrGNU C compiler32 bitsenabledpthreadsnot enabled
gcc32GNU C compiler32 bitsnot enablednonenot enabled
mpicc64pthrMPI wrapper script for the C compiler64 bitsnot enabledpthreadsenabled