The Eclipse platform .zip file is used as target platform while building
the RCP applications. The build script takes care of unzipping this file,
and the Eclipse builder picks up the necessary jars and releases them as
part of the RCP application.
