Man erweitert Eclipse RCP nicht wirklich.
Du musst dir das so vorstellen:
Die Basis bildet OSGi (Equinox). OSGi lädt Bundles (im Prinzip jars mit einer bestimmten Funktionalität). Jedes Eclipse PlugIn ist ein solches Bundle. Bundle brauchen andere Bundles um zu funktionieren (Dependencies).
All das hat erstmal noch nichts mit Eclipse zu tun, das ist nur das eigentliche Framework.
Die Entwicklungsumgebung mit der du arbeitest (also die Eclipse IDE) ist ein sog. Eclipse Product. Darunter versteht man das OSGi Framework + eine Eclipse Executable (der launcher) + eine von dir zusammengestellte Menge von Bundles die im OSGi Framework installiert werden.
Grob zur Begriffsabsteckung:
OSGi Bundle
Ein Jar mit einem erweiterten Manifest, das in einem OSGi Framework läuft
Eclipse PlugIn
Ein OSGi Bundle das zusätlich eine plugin.xml besitzt um Extension Points zu nutzen
Eclipse Feature
Eine logische Gruppierung verschiedener PlugIns
Eclipse RCP
ein von den Eclipse Entwicklern zurechtgeschnürtes Paket an PlugIns die üblicherweise in einer RCP Anwendung benötigt werden.
Eclipse Product
Ein fertig gebautes Produkt anhand einer Product Definition. Die verschiedenen Pakete die du bei Eclipse runterladen kannst (Classic, J2EE,...) sind zB Eclipse Products.
Versteh es also nicht so, das man entweder ein Eclipse PlugIn schreibt, oder Eclipse RCP. Du schreibst in beiden Fällen PlugIns/Bundles. Nur die Art der Auslieferung macht den Unterschied.
Entweder du packst selbst zusammen was du für den Kunden als die richtige Konfiguration empfindest, oder du bietest deine Pakete (Plugins/Features) zum Download an um sie in irgendeinem Eclipse Product zu installieren (oder beides, natürlich).