Folgendes Problem:
Ich habe zwei Projekte, die eine gemeinsame
Unit benutzen. Abhängig vom Projekt sollen innerhalb dieser
Unit Prozeduren unterschiedliche Code-Abschnitte ausführen.
Ich habe dies folgendermaßen gelöst:
1. Jedem Projekt wird im Dialog Projekt.Optionen.Verzeichnise/Bedingungen eine Definition hinzugefügt (P1 für Projekt1 und P2 für Projekt2)
2. In der gemeinsamen
Unit ("share.pas") wird eine Include-Datei angegeben, die wiederum abhängig von den Schaltern P1 und P2 neue Schalter Programm1 und Programm2 definiert
(
{$ifdef P1}
{$define Programm1}
{$endif P1}
{$ifdef P2}
{$define Programm2}
{$endif P2}
)
3. Über Kompiler-Direktiven werden die Code-Abschnitte selektiert.
So weit so gut.
Problem: Wenn man das Projekt wechselt und neu kompiliert ohne dass sich in der share.pas eine Änderung ergibt, wird diese auch nicht neu kompiliert, was natürlich dazu führt, dass falsche Schalter definiert werden. Ich muss also jedes Mal die share.dcu löschen und dann neu kompilieren, was etwas umständlich ist.
Kann man dafür sorgen, dass eine
Unit immer kompiliert wird auch wenn keine direkten Änderungen stattgefunden haben?
Oder gibt es eine andere Lösung für dieses Problem?
Vielen Dank für eure Mithilfe
Michael