AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MakeScript für Delphi Projekt

Ein Thema von Luckie · begonnen am 30. Jun 2008 · letzter Beitrag vom 30. Jun 2008
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 13:14
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?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#2

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 13:43
Hi,

starte mal direkt "dcc32.exe" - dann werden dir alle möglichen
Parameter erklärt, u.a. auch "-D<symbo>" ...
Gruß
Norman
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:14
Erklärt ist wohl etwas übertrieben:
Code:
-D<syms> = Define conditionals
Wo finde ich eine Erklärung, was ich da angeben muss?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:19
Ich konnte da auch nur Google benutzen, aber dort stehts dann:
http://safari.oreilly.com/1565926595/appa-1-fm2xml
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:25
Das habe ich auch gefunden, nur muss man da angemeldet sein und das kostet Geld.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:33

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.
Miniaturansicht angehängter Grafiken
seite_180.png  
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#7

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:35
Zitat von Luckie:
Erklärt ist wohl etwas übertrieben:
Code:
-D<syms> = Define conditionals
Wo finde ich eine Erklärung, was ich da angeben muss?
Ich verstehe das so:

Statt
{$DEFINE symbol}
im Quelltext
-Dsymbol
als Parameter
Gruß
Norman
  Mit Zitat antworten Zitat
Benutzerbild von iKilledKenny
iKilledKenny

Registriert seit: 25. Apr 2007
Ort: Bergstrasse
49 Beiträge
 
Delphi 5 Professional
 
#8

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 14:49
Man kann dcc32.exe auch mit einem CFG File benutzen, wo man verschiedenste Optionen eintragen kann. Das macht die Skripterei ein bischen übersichtlicher. Siehe Delphi Wiki

Leider finde ich gerade keinen Link zu den Optionen, die in den Config Files angegeben werden können.
Alexander Stork
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 15:11
Zitat von NormanNG:
Zitat von Luckie:
Erklärt ist wohl etwas übertrieben:
Code:
-D<syms> = Define conditionals
Wo finde ich eine Erklärung, was ich da angeben muss?
Ich verstehe das so:

Statt
{$DEFINE symbol}
im Quelltext
-Dsymbol
als Parameter
Wird damit der Kompilerschalter in der Programmdatei "überschrieben"?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#10

Re: MakeScript für Delphi Projekt

  Alt 30. Jun 2008, 15:38
Hi,

Zitat:
Wird damit der Kompilerschalter in der Programmdatei "überschrieben"?
Was willst du denn überschreiben

"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
Gruß
Norman
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 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