![]() |
MakeScript für Delphi Projekt
Ich habe mir eine Art Make-Script für meine Delphi Projekte geschrieben:
Code:
Das funktioniert so ganz gut. Allerdings ein Punkt stören mich etwas:
@echo off
set APP=Template echo Kompilieren der Ressourcen echo ========================== rcstamp res\resource.rc *.*.*.+ brcc32 res\resource.rc resources\-foresource.res echo. echo. echo Kompilieren der Anwendung echo ========================= echo Loeschen alter kompilierte Units... echo. del /s *.dcu echo. echo Kompilieren der Anwendung... echo. C:\Programme\Borland\Delphi6\Bin\dcc32 %APP%.dpr echo. echo Loeschen der temporaeren Dateien und der kompilierten Units... echo. del /s *.~* del /s *.dcu echo. echo. echo Packen mit UPX echo ============== echo. upx -9 --no-reloc --all-methods --all-filters ..\%APP%.exe echo. echo. echo Mit 7Zip packen... echo ================== echo bestehendes Archiv loeschen... echo. del Template.zip echo. echo Archiv neu erstellen... echo. 7z a -tzip ..\%APP%.zip ..\* echo. echo. echo Programmstarten echo =============== set /P CHS=Programm starten mit [Return]. Beenden mit "E": if /I "%CHS%"=="E" goto :ENDE start ..\%APP%.exe :ENDE Ich benutze folgende Datei für die Kompilerschalter:
Code:
Und dann entsprechender Kompilerschalter in der Projektdatei:
{$DEFINE Debug}
{$IFDEF Debug} {$OPTIMIZATION OFF} {$DEBUGINFO ON} {$LOCALSYMBOLS ON} {$REFERENCEINFO ON} {$DEFINITIONINFO ON} {$ASSERTIONS ON} {$ELSE} {$OPTIMIZATION ON} {$DEBUGINFO OFF} {$LOCALSYMBOLS OFF} {$REFERENCEINFO OFF} {$ASSERTIONS OFF} {$ENDIF}
Delphi-Quellcode:
Jetzt muss ich natürlich vorher immer den Kompilerschalter von Hand im Source auskommentieren. Wie kann ich das noch automatisieren mit dem Script?
{$DEFINE DEBUG}
|
Re: MakeScript für Delphi Projekt
Hi,
starte mal direkt "dcc32.exe" - dann werden dir alle möglichen Parameter erklärt, u.a. auch "-D<symbo>" ... |
Re: MakeScript für Delphi Projekt
Erklärt ist wohl etwas übertrieben:
Code:
Wo finde ich eine Erklärung, was ich da angeben muss?
-D<syms> = Define conditionals
|
Re: MakeScript für Delphi Projekt
Ich konnte da auch nur Google benutzen, aber dort stehts dann:
![]() |
Re: MakeScript für Delphi Projekt
Das habe ich auch gefunden, nur muss man da angemeldet sein und das kostet Geld. :(
|
Re: MakeScript für Delphi Projekt
Liste der Anhänge anzeigen (Anzahl: 1)
:shock:
Ist ja merkwürdig. Also der Direktlink via Google geht noch. Dort nach "dcc32 define conditionals" suchen und man bekmommt eine Seite wie im Anhang. Diese hatte ich auch vor Augen, als ich den Link in meinen Beitrag weiter oben einfügte. |
Re: MakeScript für Delphi Projekt
Zitat:
Statt {$DEFINE symbol} im Quelltext -Dsymbol als Parameter |
Re: MakeScript für Delphi Projekt
Man kann dcc32.exe auch mit einem CFG File benutzen, wo man verschiedenste Optionen eintragen kann. Das macht die Skripterei ein bischen übersichtlicher. Siehe
![]() Leider finde ich gerade keinen Link zu den Optionen, die in den Config Files angegeben werden können. |
Re: MakeScript für Delphi Projekt
Zitat:
|
Re: MakeScript für Delphi Projekt
Hi,
Zitat:
"define" definiert ein Symbol. Nochmal definiern (i.e. "überschreiben") ändert daran ja nichts. Einfach alle debug-Defines im Quellcode entfernen. Dann in deinem CMD-Script im Aufruf von dcc32 den Paramteter "-Ddebug" einfügen. Jetzt wird immer eine Debug-Version compiliert. In einem anderen Script lässt du das -D... weg, schon gibts die Final-Version :-D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:14 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