Ich habe mir eine Art Make-Script für meine Delphi Projekte geschrieben:
Code:
@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
Das funktioniert so ganz gut. Allerdings ein Punkt stören mich etwas:
Ich benutze folgende Datei für die Kompilerschalter:
Code:
{$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}
Und dann entsprechender Kompilerschalter in der Projektdatei:
{$DEFINE DEBUG}
Jetzt muss ich natürlich vorher immer den Kompilerschalter von Hand im Source auskommentieren. Wie kann ich das noch automatisieren mit dem Script?