The Gentoo catalyst project develops and supports the catalyst release building tool. The design of catalyst is meant to be easy to use, cutomize, and maintain. It is also used in other Gentoo projects, such as GNAP.
The catalyst FAQ attempts to answer commonly asked questions related to catalyst and its usage.
The goal of the catalyst project is to provide a single multi-faceted tool that can reliably build all aspects of a Gentoo Linux release: stage tarballs, GRP package sets, and install CDs.
Our specific development goals for catalyst include the following: ensuring it provides high-quality builds of Gentoo Linux, and for the tool to be easy to use, customize, extend and maintain. The catalyst tool is intended to be used by those who wish to create their own customized versions of Gentoo Linux, or their own customized LiveCDs. Our goal is to make catalyst a powerful tool that's a pleasure to use, and to ensure that the code we write is maintainable and of high-quality.
Catalyst supports a number of architectures. In catalyst-speak, an "architecture" is a general type of CPU platform. Here is a complete list of architectures supported by catalyst:
| Architecture | Description |
| alpha | The Alpha processor (all flavors) |
| amd64 | AMD's 64-bit platform, also known as "Opteron" or "x86-64". This also includes Intel EM64T machines. |
| arm | ARM-based processors |
| hppa | HP's PA-RISC systems |
| ia64 | Intel's Itanium 64-bit platform (Itanium Classic and Itanium 2) |
| mips | MIPS-based systems |
| ppc | 32-bit PowerPC platforms, including original PowerPC systems, and Apple's G3, G4 and G5 in 32-bit mode |
| ppc64 | 64-bit PowerPC platforms, including IBM power chips and Apple's G5 in 64-bit mode |
| s390 | IBM's S/390 platform, including zSeries machines |
| sh | 32-bit SuperH-based systems |
| sparc | 32-bit Sparc-based systems |
| sparc64 | 64-bit Sparc-based systems |
| x86 | Intel-compatible 32-bit CPU, ranging from i386 to Pentium 4 and Athlon XP. |
For each architecture, catalyst supports a number of "sub-architectures." A sub-architecture is a specific variant of the architecture. For example, pentium4 is a sub-architecture of the x86 architecture. Here is a list of all sub-architectures supported by catalyst:
| Architecture | Sub-architectures |
| alpha | alpha ev4 ev45 ev5 ev56 pca56 ev6 ev67 |
| amd64 | amd64 |
| arm | arm |
| hppa | hppa |
| ia64 | ia64 |
| mips | mips mips1 mips2 mips3 mips4 mipsel mipsel1 mipsel2 mipsel3 mipsel4 cobalt |
| ppc | ppc power-ppc g3 g4 |
| ppc64 | ppc64 power3 power4 power5 g5 |
| s390 | s390 |
| sparc | sparc |
| sparc64 | sparc64 |
| x86 | x86 i386 i486 i586 i686 pentium-mmx athlon athlon-xp athlon-mp pentium3 pentium4 |
You'll notice that all architectures have a sub-architecture with the same name as the architecture. This sub-architecture is meant to represent a "generic" build that should work on all systems in that architecture.Each sub-architecture has an associated set of CFLAGS, CXXFLAGS, as well as a CHOST and set of USE variables that are enabled on that sub-architecture. The USE settings are intended to enable any CPU-specific options, such as mmx or altivec.
Note: Catalyst currently also supports the ability to build x86 architecture stages on amd64 systems. |