Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   MSBuild mit mehreren Defines (https://www.delphipraxis.net/186348-msbuild-mit-mehreren-defines.html)

Rainer Wolff 26. Aug 2015 10:33

MSBuild mit mehreren Defines
 
Hallo,

ich spiele grad mit automated builds rum und will eigentlich einfach nur zwei Defines auf der Kommandozeile übergeben.
Die grunsätzliche Syntax ist ja
Code:
msbuild meinproject.dproj /p:DCC_Define="MeinSupperDefine"
Ich habe gefühlt schon die hundertste Variante probiert, ein zweites Define mit reinzuschieben
Code:
msbuild meinproject.dproj /p:DCC_Define="MeinSupperDefine;MeinzweitesDefine",
msbuild meinproject.dproj /p:DCC_Define="MeinSupperDefine" /p:DCC_Define="MeinZweitesDefine"
msbuild meinproject.dproj /p:DCC_Define="MeinSupperDefine";DCC_Define="MeinZweitesDefine"
geht alles nicht. Maximal gewinnt das letzte Define. Aber das kann doch eigentlich nicht so schwer sein, oder?
Und nein, ich will jetzt nicht meine gesamten dproj-Files anfingern und da was zusätzlich reinbasteln.

Die Defines über eine lokale dcc32.cfg oder eine meinprojekt.cfg reinzuschieben hat auch nicht geklappt, das war mein erster Ansatz, werden die mit msbuild über die Kommandozeile nicht berücksichtigt?.

Memnarch 26. Aug 2015 11:10

AW: MSBuild mit mehreren Defines
 
Zitat:

msbuild meinproject.dproj /p:DCC_Define="MeinSupperDefine;MeinzweitesDefine"
Diese Variante sollte eigentlich funktionieren, da mit der direktive /p eine property, also praktisch eine Node des XML gesetzt/überschrieben wird. Klappt das bei keinem Projekt, oder nur bei den bereits bestehenden? Ich weiß aktuell nicht ob du das gerade in nem neuen sauberen Testprojekt ausprobierst.

Rainer Wolff 26. Aug 2015 12:48

AW: MSBuild mit mehreren Defines
 
Ich hab grad angefangen zu schreiben, daß es nicht funktioniert, da hab ich noch nen verzweifelten Versuch gemacht, der funktioniert hat:

Code:
msbuild meinprojekt.dproj /p:'DCC_Define="define1;define2"'
also das gesamte DCC_Define in einfache, die Defines in doppelte Anführungszeichen
(Vielleicht hätte ich noch erwähnen müssen, daß ich mit powershell unterwegs bin, ich müsste testen, ob das noch einen Unterschied macht)


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz