Kernentwicklung
Siehe Entwicklungsumgebung wie man eine (virtuelle) Maschine für die BPS Entwicklung aufsetzt.
Von einem Medium kopieren
Falls sie den BPS Quellcode auf einem Medium haben (Speicherstick, CD, DVD) müssen sie den «bps» Ordner von dort nach C:\dev\ kopieren.
Klonen von Mercury
Das zentrale Verzeichnis der Mercury-Versionsverwaltung von BPS ist in einer privaten Cloud gespeichert.
- Ordner C:\dev\bps erzeugen
- Im Windows-Explorer in das Verzeichnis C:\dev\bps gehen
- Irgendwo im Ordner mit der rechten Maustaste klicken, dann…
- TortoiseHg - Clone…
- Quelle: «Cloud»\IBK-Entwicklung\Mercurial\bps
- Ziel: C:\dev\bps
- Einstellungen: alle Haken gelöscht
- Klonen
- Warten bis zur Meldung «Abgeschlossen» und sich die TortoiseHg-Werkbank öffnet.
- Das Fenster «Klonen» und die Werkbank schliessen
Erste Schritte
- Batch Programm C:\dev\bps\MakeLinks.bat ausführen um die erforderlichen Ordner und Symlinks zu erzeugen.
- Datei C:\dev\bps\src\bps.pro.user* löschen falls sie noch existiert.
- Qt Creator starten
- Projekt öffen: C:\dev\bps\src\bps.pro
- Zu Projects gehen um die Einstellungen anzupassen:
Projects / Build & Run / Desktop
- Umschalten auf Edit um die Programme und Plugins zu bauen
- Auf bps klicken
- Build - Build Project „bps“
- Warten bis alles gebaut ist
- BPS Arbeitsplatz durch klicken auf den grünen Pfeil ausführen
Übersetzungen bearbeiten
- BPS Projekt in Qt Creator öffnen
- Die .pro Datei eines Unterprojekts öffnen, z.B. src/apps/bps/bps.pro
- Tasten Ctrl+Alt+T gemeinsam drücken um den Übersetzungs-Skript zu starten
- Die .ts Dateien werden anhand des Quellcodes aktualisiert und danach startet der Qt Linguist
- Wenn ein Unterprojekt erstmals übersetzt wird, muss man sicherstellen dass die Übersetzungs-Verzeichnisse in C:\dev\bps\src\translations geöffnet sind (bps_de.qph, bps_fr.qph, bps_it.qph).
- Übersetzungen wie gewünscht bearbeiten
- File - Release all
- Qt Linguist schliessen
Release Checkliste
Code neu bauen
- Projekt C:\dev\bps\src\bps.pro in Qt Creator öffnen.
- Datei 'bps - Other Files - features - bps_init.prf bearbeiten:
- VERSION: neue Version (major.minor.micro.fix)
- QMAKE_TARGET_COPYRIGHT: Jahre (von-bis)
- Datei bps - libs - bpscore - Headers - bpsglobals.h bearbeiten:
- BPS_RELDATE
- BPS_COPYRIGHT_YEARS
- BPS_COPYRIGHT_TEXT: Jahre (von-bis)
- BPS_DATASTORE_LEVEL_MIN
- BPS_DATASTORE_LEVEL_MAX
- BPS_VERSION_MAJOR
- BPS_VERSION_MINOR
- BPS_VERSION_MICRO
- BPS_VERSION_FIX
- Wähle Desktop - Release
- bps
- Build - Clean Project „bps“
- Build - Run qmake
- Build - Build Project „bps“
Code signieren
Dies kann nur bei IBK erfolgen wo die Signierungszertifikate von IBK vorhanden sind. Wenn sie ausserhalb von IBK signieren wollen müssen sie eigene Zertifikate für ihre Firma beschaffen und die Skripte unten entsprechend anpassen.
- C:\dev\bps\SignLibs.bat ausführen (nur wenn Qt oder Qt Solutions frisch gebaut wurden)
- C:\dev\bps\SignCode.bat ausführen
Installationsprogramme erzeugen
Neue .msifact Datei mit neuen GUID's
Diesen Schritt überspringen wenn eine Fix-Version freigegeben wird (nur die hinterste Zahl der Version ändert)!
- Kommandozeile BPS Release CMD:
- cd src\installer
- msiclone bps
- Generiert eine neue Datei mit neuen GUID's:
- bps-new.msifact
Installationsprogramm erzeugen
- C:\dev\bps\release\installer\bps-new.msifact
- Mit MSI Factory öffnen (Doppelklick)
- Wenn neuer Hauptversion (hinterste Zahl der Version ist 0):
- Build - Settings… - Variables
- BpsVersion und BpsVersionService anpassen
- Build - Settings… - Setup File
- Output name: bps-$(var.BpsVersion).0
- Project - Settings…
- Product version: $(var.BpsVersion).0
- Find/remove related programs:
- Alles löschen wenn vorhanden
- Bei Freigabe einer Fix-Version (hinterste Zahl der Version > 0, z.B. 3):
- Build - Settings… - Setup File
- Output name: bps-$(var.BpsVersion).3
- Project - Settings…
- Product version: $(var.BpsVersion).3
- Build - Build Installer (F7)
- Installierer in allen Sprachen erzeugen.
- Nach jedem Lauf bps\release\setup\bps-2.x.y.z.msi umbenennen nach:
- Englisch: bps-2.x.y.z-en.msi
- Französisch : bps-2.x.y.z-fr.msi
- Deutsch : bps-2.x.y.z-de.msi
- Italienisch: bps-2.x.y.z-it.msi
Installationsprogramme signieren
Dies kann nur bei IBK erfolgen wo die Signierungszertifikate von IBK vorhanden sind. Wenn sie ausserhalb von IBK signieren wollen müssen sie eigene Zertifikate für ihre Firma beschaffen und die Skripte unten entsprechend anpassen.
- C:\dev\bps\SignInst.bat ausführen
.msifact Datei aufräumen
Diesen Schritt überspringen wenn eine Fix-Version freigegeben wird (nur die hinterste Zahl der Version ändert)!
Nach erfolgreichem Bau einer neuen Hauptversion:
- In C:\dev\bps\src\installer\
- Alte Datei bps.msifact löschen
- Neue Datei umbenennen von
bps-new.msifactnach bps.msifact
Dokumentation generieren
C++ API Referenz
- C:\dev\bps\src\docs\cpp\cpp.doxyfile
- Mit doxywizard öffnen (Doppelklick)
- Run - Run doxygen
- Generierte Doku ist in C:\docs\bps\docs\cpp\
Skript API Referenz
- C:\dev\bps\src\docs\script\script.doxyfile
- Mit doxywizard öffnen (Doppelklick)
- Run - Run doxygen
- Generierte Doku ist in C:\dev\bps\docs\script\
Versionsverwaltung
- In C:\dev\bps\
- Rechtsklick auf freiem Bereich, Hg Commit…
- Bemerkung erfassen z.B. „Release x.x.x.x“
- Commit
VM archivieren
- VM herunterfahren
- Kopieren auf einen neuen Namen der die Versionsnummer beinhaltet