Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Compiler Switches über Konsolen Compiler setzen (https://www.delphipraxis.net/167589-compiler-switches-ueber-konsolen-compiler-setzen.html)

Luckie 7. Apr 2012 20:18

Compiler Switches über Konsolen Compiler setzen
 
Ich habe in meinem Projekt folgenden Compiler Switch:
Code:
{.$DEFINE DEMO}
Wenn ich jetzt beide Versionen compilieren will muss ich jedes mal den Compilerswitch ändern und zwei mal mein Skript zum Compilieren aufrufen:
Code:
@echo off
echo Kompilieren der Ressourcen...
echo =============================
rcstamp resources\resource1.rc 6.1.*.+
rem rcstamp resources\resource1.rc 6.0.0.0
brcc32.exe resources\resource1.rc -foresources\resource1.res -v
brcc32.exe resources\manifest.rc -foresources\manifest.res -v
echo.
echo Loeschen alter kompilierte Units...
echo ===================================
 del /s *.dcu
echo.
echo Kompilieren der Anwendung...
echo.
dcc32 Usermanager.dpr
echo.
echo Loeschen der temporaeren Dateien und der kompilierten Units...
echo ==============================================================
del /s *.~*
del /s *.dcu
echo.
echo Packen mit UPX...
echo =================
upx -9 ..\Usermanager.exe
echo.
set /P CHS=Programm starten mit [Return]. Beenden mit "E":
if /I "%CHS%"=="E" goto :ENDE

start ..\Usermanager.exe

:ENDE
Kann man das auch irgendwie mit einem Aufruf des Scriptes erledigen? Also dass es beide Versionen in einem Durchlauf erstellt?

USchuster 7. Apr 2012 20:42

AW: Compiler Switches über Konsolen Compiler setzen
 
Code:
dcc32 -DDEMO Usermanager.dpr

brechi 7. Apr 2012 20:44

AW: Compiler Switches über Konsolen Compiler setzen
 
Geht mit Sicherheit, kann leider auf anhiebt net sagen wie. Aber im Notfall kannst du doch 2 Includes anlegen mit den defines (z.b. DEFINE_FULL.inc, DEFINE_DEMO.inc) und im PrepBuild die DEFINE_BUILD.inc jeweils damit überschreiben. Muss dann nur die DEFINE_BUILD.inc überall einbinden wo diese benötigt wird einbinden.

Google hilft:
http://docwiki.embarcadero.com/RADSt..._Line_Compiler

Luckie 7. Apr 2012 21:05

AW: Compiler Switches über Konsolen Compiler setzen
 
Zitat:

Zitat von USchuster (Beitrag 1160638)
Code:
dcc32 -DDEMO Usermanager.dpr

Genial!!! Warum erfahre ich erst jetzt, dass das geht. :(

himitsu 7. Apr 2012 21:34

AW: Compiler Switches über Konsolen Compiler setzen
 
Und ich dachte du würdest
Delphi-Quellcode:
dcc32 -?
kennen. :stupid:

PS: Auch die IDE kennt diesen Parameter (auch wenn in der aufgehenden OH was anderes drinsteht :lol: )
und öffnet dann eine fast geheime Seite in der OH.

Luckie 7. Apr 2012 21:58

AW: Compiler Switches über Konsolen Compiler setzen
 
Zitat:

Zitat von himitsu (Beitrag 1160649)
Und ich dachte du würdest
Delphi-Quellcode:
dcc32 -?
kennen. :stupid:

Gnarf :stupid:

implementation 7. Apr 2012 22:08

AW: Compiler Switches über Konsolen Compiler setzen
 
Zitat:

Zitat von Luckie (Beitrag 1160643)
Genial!!! Warum erfahre ich erst jetzt, dass das geht. :(

Der Parameter heißt doch bei fast jedem Kommandozeilencompiler so :lol:
Immer entweder -D oder -d

himitsu 7. Apr 2012 22:15

AW: Compiler Switches über Konsolen Compiler setzen
 
Wenn dein Debugger dann mal wieder geht, dann könntest du diesen "DEMO"-Compierschalter auch in den Projektoptionen setzen.

PS: In neueren Delphis gibt es ein nettes Feature.
Wenn man innerhalb der IDE kompilert, dann wird in den Compilermeldungen auch die Aufrufzeile angezeigt, mit welcher der DCC32 aufgerufen werden könnte.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:42 Uhr.

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