diff --git a/SysBuild/DistCluster.dmk b/SysBuild/DistCluster.dmk index 48325a5..69c9586 100644 --- a/SysBuild/DistCluster.dmk +++ b/SysBuild/DistCluster.dmk @@ -43,9 +43,9 @@ #Datum der letzten Änderung: $Date$ #Version der Datei: $Revision$ # -256 BuildCluster/BaseLibs.dmk -256 BuildCluster/BaseSysTools.dmk -256 BuildCluster/XServ.dmk +#256 BuildCluster/BaseLibs.dmk +#256 BuildCluster/BaseSysTools.dmk +#256 BuildCluster/XServ.dmk 256 BuildCluster/Tools.dmk 256 BuildCluster/XBaseLibs.dmk 256 BuildCluster/XTools.dmk diff --git a/SysBuild/tools/libxml2 b/SysBuild/tools/libxml2 new file mode 100644 index 0000000..67db033 --- /dev/null +++ b/SysBuild/tools/libxml2 @@ -0,0 +1,123 @@ +#!/bin/bash +#Framework, welches ein komplettes Linux System aus den Sourcen erstellt +#dieses Framework wird im CVS Repository +#:pserver:cvs.tramp-bbs.de:/opt/cvs zur Verfügung gestellt +# +#Lage dieser Datei im Archiv: $HeadURL: svn://svn.compuextreme.de/Viitor/V962/ViitorMake/BaseBuild/Basesys/libxml2 $ +# +#(c) 2003 Harald Kueller, Germany +#This program is free software; you can redistribute it and/or +#modify ist under the terms of the GNU General Public License +#as published by the Free Software Foundation; either version +#2 of the License, or (at your option) any later version. +# +#This program is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +#See the GNU General Public License for more details. +# +#You should have received a copy of the GNU General Public License +#along with this program; if not write to the Free Software Foundation, +#Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +#Dies ist ein Module zur Verwendung mit genpkg. Die Erzeugung eines +#Viitor Linux Packetes wird über die Funktionen premk, mk und postmk +#gesteuert. premk() dient zur Vorbereitung des Sourcecodes. Hier können +#diverse Änderungen am sourcecode (mit awk/sed usw.) vorgenommen werden +#mk() umfasst die source Konfiguration und das Übersetzten des source +#codes. Auch die Installation muß von mk erledigt werden. Hier gild dass +#die Installation immer nach $TMPROOT erfolgen soll (meisst kann das mit +#"make DESTDIR=$TMPROOT install" angestossen werden). postmk kann +#vor der packeterstellung noch einiges am installationtree ändern. postmk +#läuft nachdem die Packetabhängigkeiten erstellt wurden. +#Das Verhalten von genpkg kann über die Variable MKPKG gesteuert werden. +#Hier müssen FLAGS zur Steuerung gesetzt werden. Folgende Flags werden +#erkannt: +# +# 1 : Package Erzeugung erzwingen. Packet wird, auch wenn es schon +# vorhanden ist, ohne weitere rückfragen neu Erzeugt. +# 2 : Package Installation erzwingen. Installpkg wird mit -f aufgerufen. +# Das bewirkt, das installpkg keine rückfragen bei der installation +# Stellt, und das packet in jedemfall (neu) installiert. +# 4 : Sourcepacket nicht nach MAKEDIR entpacken. Ist dieses Flag gesetzt +# muss sich das Module selber um das Entpacken der sourcedateien kümmern. +# vor allem wichtig bei Packeten, für die es keine source.tgz gibt +# (z.B. aus dem CVS generierte Packete). +# 8 : Erstellung des Packetes aus $TMPROOT wird unterdrückt. Dies ist bei +# manchen Sonderfällen möglich - wenn sich z.B. der Packetnamen nicht +# aus dem Namen des sourcearchives ableiten lässt. Packet sollte in +# so einem Fall in der postmk() Funktion erstellt werden. +# 16 : Packet wird nicht installiert. Bei Packeten wie tar oder bash kann +# die installation mittelst installpkg probleme machen. +# 32 : Dependics File so erzeugen, das die Abhängigkeiten bei der installation +# erfüllt sein müssen. installpkg bricht in so einem fall bei fehlenden +# packeten die installation ab, und gibt nicht "nur" warnmeldungen aus. +# Wichtig bei packeten mit postinstallroutine, die software aus dem +# frisch installierten Packet verwendet (wie z.B. postgresql) +# 64 : sourcetree aufräumen nach packeterstellung unterbinden. +# +# 128 : Patches zu den Sourcen nicht einspielen - Module muss sich darum +# kümmern + +#Module zur Erstellung des Packetes: libxml2 +#Quelle der Source Archive: ftp://ftp.xmlsoft.org/ +#Kurzbeschreibung: +#2. Version der Funktionssammlung zur Bearbeitung des XML Formates. +# +#Letzte Änderung von: $Author: kueller $ +#Datum der letzten Änderung: $Date: 2010-01-29 09:46:47 +0100 (Fr, 29 Jan 2010) $ +#Version der Datei: $Revision: 5286 $ +# +# + +SRCPATH=Base/Lib + +#Funktion wird nach dem Entpacken der Sourcen, im Tree der Sourcen +#ausgeführt (sprich unpack src; cd src; premk) +#Hier kann z.B. das Makefile gepatcht werden (SED lässt grüssen + +premk() { + echo "Nothing to do for premk()" +} + +mk32() { + CC="gcc $BUILDOPTIONS32" \ + CXX="g++ $BUILDOPTIONS32" \ + USE_ARCH=$UARCH \ + ./configure --target=$TARGET32 \ + --prefix=/usr \ + --without-python && + make -j $NUMCPU && + make -j $NUMCPU DESTDIR=$TMPROOT install + mv -v $TMPROOT/usr/bin/xml2-config{,-32} + make distclean +} + +#Hier wird der Make Prozess der Sourcen definiert +mk() { + if [ "$MK64BIT" == "true" ]; then + ADDOPTIONS="--libdir=/usr/lib64" + mv $TMPROOT/usr/bin/xmlcatalog{,.32} + fi + CC="gcc $BUILDOPTIONS" \ + CXX="g++ $BUILDOPTIONS" \ + USE_ARCH=$UARCH \ + ./configure --target=$TARGET \ + --prefix=/usr \ + $ADDOPTIONS && + make -j $NUMCPU && + make -j $NUMCPU DESTDIR=$TMPROOT install + if [ "$MK64BIT" == "true" ]; then + mv -v $TMPROOT/usr/bin/xml2-config{,-64} + ln -s multiarch_wrapper $TMPROOT/usr/bin/xml2-config + fi +} + +#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann +#in $TMPROOT noch einiges korrigieren +postmk() { + mkdir -p $TMPROOT/usr/share + mv $TMPROOT/usr/man $TMPROOT/usr/share + cd $TMPROOT/usr/include + ln -s libxml2/libxml libxml +}