Date: Monday May 10, 2004 @ 22:43
Author: my
Update of /server/cvs/freexp
In directory m6s15:/tmp/cvs-serv6628
Modified Files:
gendate.pas
Log Message:
MY:- Konstanten comp_MO, comp_DD, comp_HH, comp_MI und comp_SS via
typeform.strs() ggf. mit Nullen zu zweistelligen Zahlen auff�llen
und allen Konstanten in der erzeugten Unit 'compdate.pas' als
String zuweisen (damit in den Units, die danach compdate.pas
verwenden, keine Typumwandlung mehr erforderlich ist).
- Dateiname 'compdate.pas' jetzt klein schreiben.
MY:- Hinweise zur Verwendung von gendate.pas/compdate.pas:
-----------------------------------------------------
1. gendate.pas wird bei jedem via BUILD.BAT ausgel�sten
Compiliervorgang compiliert, anschlie�end im Source-Root
ausgef�hrt und erzeugt eine Unit compdate.pas, die in diversen
Konstanten, die beliebig zusammengesetzt werden k�nnen,
lediglich den Timestamp des aktuell zu erstellenden Compilats
enth�lt.
2. Da compdate.pas in die jeweiligen Programme (XP, UUZ usw.)
eingebunden wird, l��t sich so der echte Compile-Timestamp
fest in diese Programme eincompilieren (statt wie bisher den
Timestamp der erzeugten EXE als Referenz nehmen zu m�ssen).
Damit ist gew�hrleistet, da� auch bei Ver�nderungen des
Timestamps der EXE (z.B. beim Entpacken oder Kopieren) das
Programm in den diversen Ausgaben, Versionsmeldungen usw. immer
den tats�chlichen Compile-Timestamp ausgibt.
3. Anschlie�end werden alle zu einer Distribution geh�renden
Dateien auf den in compdate.pas enthaltenen Timestamp via
TOUCH.EXE auf denselben korrekten Compile-Timestamp gesetzt.
4. Das Ganze funktioniert *nicht* bei (z.B. zu Testzwecken) �ber
die IDE erzeugten Compilaten. Damit diese �berhaupt erstellt
werden k�nnen, befindet sich im CVS-Repository ein Dummy-Unit
compdate.pas, die ausschlie�lich Strings aus Nullen enth�lt. Die
Programme, die compdate.pas benutzen, m�ssen darauf pr�fen (z.B.
"if comp_YY='0000'") und sollten dann wie fr�her ersatzweise den
Timestamp der EXE f�r die Ausgabe heranziehen.
GENDATE.EXE sollte daher nie h�ndisch im Source-Root ausgef�hrt
werden, weil es die bestehende Dummy-Unit �berschreiben und die
oben beschriebene Logik bei IDE-Compilaten dann nicht mehr
funktionieren w�rde. Ggf. sollte nach einem versehentlichen
Ausf�hren von GENDATE.EXE der aktuelle Stand der compdate.pas
neu vom CVS-Repository bezogen werden.
5. BUILD.BAT hingegen sichert bei jedem Lauf den Dummy der
compdate.pas, um ihn am Ende des Compiliervorgangs wieder zu
restaurieren.
===================================================================
File: no file gendate.pas Status: Needs Checkout
Working revision: 1.2 Mon May 10 20:43:46 2004
Repository revision: 1.2 /server/cvs/freexp/gendate.pas,v
Existing Tags:
No Tags Exist
------------------------------------------------------------------------
FreeXP CVS-Mailingliste
[EMAIL PROTECTED]
http://www.freexp.de/cgi-bin/mailman/listinfo/cvs-list