Wir machen das so, dass wir gemeinsame allgemeine Units haben und diese in einem eigenen
Package vorher kompilieren, genauso wie Fremdkomponenten. Das geht inklusive Eintragung der Pfade usw. alles per Batchdatei.
In den Projekten sind dann alle Units direkt eingebunden, die zu dem Projekt selbst gehören.
Auf diese Weise sind Units wie Common.Utils.StringTools usw., die wirklich allgemeinen Charakter haben, nicht in allen Projekten drin, was die Zeit zum Erzeugen der Projekte deutlich reduziert. Andererseits ist der Aufwand für die Benutzer recht gering. Lediglich das Pflegen ist mit einem gewissen Aufwand verbunden, der aber abgesehen vom Initialaufwand auch sehr überschaubar ist. Und das macht auch nur einer und nicht alle.