Das sind einfach schon drei Bugs, die einem aufhalten, eine saubere CI/CD Umgebung aufzubauen.
Wozu bezahlt man eigentlich noch teure Lizenzen, wenn die grundlegendsten Dinge nicht funktionieren.
Also das ist doch jetzt wirklich maßlos übertrieben! Die Variable $(SanitizedProjectName) ist nicht mal dokumentiert, noch für die von dir vorgesehene Verwendung gedacht. Die Kombination OptSet und SanitizedProjectName gehört wohl auch eher in den exotischen Bereich. Ich bin ziemlich sicher, dass man dieses Szenario bei Embarcadero nicht auf dem Schirm hat.
Intern hatte ich schon angeregt, die Variable bereits in der ersten PropertyGroup zu deklarieren, wo auch MainSource drin steht. Dann würde das auch mit den OptSets klappen. Vielleicht baue ich das irgendwann mal in den Project Magician ein.
Dass $(MSBuildProjectName) von der
IDE, insbesonder dem Debugger, nicht aufgelöst werden kann,
da es von MSBuild intern gesetzt wird, kann man Delphi kaum anlasten.
Zu den C++ Problemen kann ich nichts sagen, da ich diese Personality nie verwende. Aus diesem Grund gehört C++ auch nicht zu den von Project Magician unterstützten Zielen. Wenn's klappt ist es gut, wenn nicht dann eben nicht.
Ich kenne persönlich aber eine ganze Reihe von Delphi-Installationen, die problemlos in CI/CD Umgebungen laufen. Einige davon habe ich selbst eingerichtet.