Anpassung an neue Version und neues Archive Format

git-svn-id: svn://svn.compuextreme.de/Viitor/V962/ViitorMake@4892 504e572c-2e33-0410-9681-be2bf7408885
This commit is contained in:
kueller 2009-11-19 16:14:55 +00:00
parent 646de7c675
commit 02287496f4

View File

@ -119,6 +119,8 @@ einen spaeteren Einstig an gleicher stelle (Clusterbuild) zu
ermoeglichen. Alle Module, fuer welche unter /tmp/genpkg ein file
existiert, werden im Clusterbuild nicht mehr angefasst (der Pfad kann
mittels der Option -b veraendert werden).
Als kleiner Bonus dazu, wird der komplette Build Ouput in diesem File
gespeichert.
Nach diesen Vorbereitungen fuehrt genpkg die Funktion premk() aus dem Modul
aus. Hier koennen vorbereitende Massnahmen (build dir ausserhalb
@ -141,18 +143,36 @@ Ist mk() durchgelaufen, fuehrt genpkg weitere Operationen auf $TMPROOT aus,
naemlich ein 'strip --strip-debug' um unnoetige Informationen in den binarys
zu beseitigen, und damit der Platzverschwendung Herr zu werden.
Ausserdem versucht genpkg Librarys zu identifizieren (intensiver gebraucht von
ldd) die von den erzeugten Binarys benoegigt werden und legt ein daraus
resultierendes *.dep in $DISTDIR/$SRCPATH ab.
ldd) die von den erzeugten Binarys benoegigt werden und erzeugt daraus ein
bzip2 comprimiertes dep file.
Jetzt wird postmk() gestartet, das dem $TMPROOT noch Konfigfiles hinzufuegen
kann, oder diverse Umbauarbeiten vornehmen kann, und so $TMPROOT in den
letztendlichen installierbaren Zustand bringt.
Ist postmk() durchlaufen, trennt genpkg binarys von statischen libs und
includes, sowie von info oder manpages, baut aus den entsprechenden Teilen
bin.tar, dev.tar und man.tar archive. Ausserdem werden checksums der files
in {bin,man,dev}.md5 sowie FileRechte ({bin,man,dev}.frg) und Directory
Rechte {bin,man,dev}.drg gespeichert.
Aus den resultierenden Files wird dann ein tar.bz2 archiv mit der Endung "tbz"
nach $DISTTARGET/$SRCPATH geschrieben.
bin.tar, dev.tar und man.tar archive.
Ausserdem werden diverse Fileinformationen gesammelt, die später die
Informationen in /var/install/contents ergeben, und als {bin,man,dev}.cont
gespeichert. Die Verzeichniss Rechte werden nach {bin,man,dev}.drg gespeichert.
Aus den resultierenden Files wird dann ein "Viitor Archive" generiert.
d.H. es werden die Filegrössen berechnet und so eine Statuszeile
der einzelnen Files generiert.
Hieran werden dann die Datenefiles der reihe nach bzip2 gepackt angehängt.
Die Reihenfolge in einem Viitor Archive (*.vpg) ist folgendermassen:
StatusZeile
dep
meta
bin.drg
bin.cont
bin.tar
dev.drg
dev.cont
dev.tar
man.drg
man.cont
man.tar
Dieses File wird nach $DISTTARGET/$SRCPATH geschrieben.
Aus dem obigen Ablauf ergibt sich die anschliessende Aufrufreihenfolge
fuer die in den Modulen definierten Funktionen:
@ -325,8 +345,8 @@ Asc2Oct() Erstellt aus einem Rechtebuchstaben (r,w oder x) den
Hilfsfunktion fuer GetFlags()
ARGUMENTE: Asc2Oct <Rechtebuchstabe>
MakeMgtFiles() Erstellt aus einem vorgegebenen Tree die <prefix>.md5,
<prefix>.frg und <prefix>.drg files fuer ein ViitorPackage
MakeMgtFiles() Erstellt aus einem vorgegebenen Tree die <prefix>.cont
und <prefix>.drg files fuer ein ViitorPackage
der pwd muss beim aufruf im zu untersuchenden
Verzeichniss stehen.
ARGUMENTE: MakeMgtFiles <prefix>