Neue Version V963

git-svn-id: svn://svn.compuextreme.de/Viitor/V963/ViitorMake@5933 504e572c-2e33-0410-9681-be2bf7408885
This commit is contained in:
kueller 2011-01-03 10:48:06 +00:00
commit e4ea1f71fc
1258 changed files with 138308 additions and 0 deletions

View File

@ -0,0 +1,138 @@
#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$
#
#(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.
#
#Beschreibung: Stage 3 der Distributionserstellung - Alle Packete bis
# einschlisslich bash erstellen - danach relogon
#
#
#Configuration Parameter:
#<FLAGS> <genpkg Module>
#FLAGS : 00001 Kein Tempfile Erzeugen
# 00010 genpkg mit Option -f (force) aufrufen
# 00100 genpkg mit Option -i (install force) aufrufen
# 01000 Zu Module gehöriges Packet deinstallieren
# (derzeit nicht benutzt)
# 10000 sourcen von ~/.bash_profile unterdrücken
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
16 Basesys/linux-headers
16 Basesys/man-pages
16 Basesys/man-pages-de
16 Basesys/glibc
16 Basesys/adjust
16 Basesys/gmp
16 Basesys/mpfr
16 Basesys/zlib
16 Basesys/binutils
16 Basesys/zip
16 Basesys/gcc
16 Basesys/multiarch_wrapper
16 Basesys/pkgconfig
16 Basesys/sed
16 Basesys/binutils
16 Basesys/coreutils
16 Basesys/m4
16 Basesys/bison
16 Basesys/ncurses
16 Basesys/util-linux-ng
16 Basesys/e2fsprogs
16 Basesys/libtool
16 Basesys/flex
16 Basesys/iproute2
16 Basesys/perl
16 Basesys/readline
16 Basesys/autoconf
16 Basesys/automake
16 Basesys/bash
16 Basesys/bzip2
16 Basesys/diffutils
16 Basesys/file
16 Basesys/findutils
16 Basesys/gawk
16 Basesys/gettext
16 Basesys/grep
16 Basesys/groff
16 Basesys/gzip
16 Basesys/vim
16 Basesys/subversion
22 Basesys/pkgconfig
22 Basesys/iproute2
16 Basesys/vim
16 Basesys/procps
16 Basesys/Linux-PAM
16 Basesys/cracklib
16 Basesys/iputils
16 Basesys/net-tools
16 Basesys/kbd
16 Basesys/less
16 Basesys/make
16 Basesys/man
16 Basesys/module-init-tools
16 Basesys/patch
16 Basesys/psmisc
16 Basesys/shadow
16 Basesys/sysklogd
16 Basesys/expat
16 Basesys/libxml2
16 Basesys/dbus
16 Basesys/libnih
16 Basesys/upstart
#16 Basesys/sysvinit
16 Basesys/tar
16 Basesys/texinfo
16 Basesys/udev
16 Basesys/ViitorMan
16 Basesys/xz
16 Basesys/yasm
16 Basesys/bin86
16 Basesys/lilo
16 Basesys/unzip
16 Basesys/procinfo
16 Basesys/ed
16 Basesys/reiserfsprogs
16 Basesys/jfsutils
16 Basesys/inetutils
16 Basesys/portmap
16 Basesys/xinetd
16 Basesys/device-mapper
16 Basesys/LVM
16 Basesys/mktemp
16 Basesys/xfsprogs
16 Basesys/attr
16 Basesys/acl
16 Basesys/fcron
16 Basesys/hotplug
16 Basesys/firmwarehotplug
16 Basesys/fbset
16 Basesys/which
16 Basesys/tcsh
16 Basesys/linux
16 Basesys/cpio
16 Basesys/dialog
16 Basesys/dhcp
16 Basesys/gpplib
22 Basesys/xfsprogs
16 Basesys/config
16 Basesys/cdboot

111
BaseBuild/Basesys/LVM Normal file
View File

@ -0,0 +1,111 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: LVM
#Quelle der Source Archive: http://www.sistina.com/lvm
#Kurzbeschreibung:
#Linux Volume Manager. Über einen Volumanager wird ein äusserst
#flexibler Umgang mit Speichermedien ermöglicht. Festplattenplatz
#kann dort verwendet werden wo der gebraucht wird.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/System
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir -p $TMPROOT/sbin
mkdir -p $TMPROOT/usr/share/man/man8
bunzip2 -c $LFSSOURCE/$SRCPATH/MAKEDEV*.bz >$TMPROOT/sbin/MAKEDEV
chmod 755 $TMPROOT/sbin/MAKEDEV
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --prefix=/ \
--libdir=/$LIBDIR \
--disable-selinux
make
make -j $NUMCPU DESTDIR=$TMPROOT install
cd scripts/lvm2create_initrd
make manpage
sed -e "s/\/lib\/lvm-200\/lvm/\/sbin\/lvm/g;s/\/bin\/busybox/\/opt\/initrd\/bin\/busybox/g;s/tail -1/tail -n -1/g;s/\/dev\/MAKEDEV/\/sbin\/MAKEDEV/g;s/consoleonly//g" lvm2create_initrd > $TMPROOT/sbin/lvm2create_initrd
chmod 0755 $TMPROOT/sbin/lvm2create_initrd
cp lvm2create_initrd.8 $TMPROOT/usr/share/man/man8/
chmod 0444 $TMPROOT/usr/share/man/man8/lvm2create_initrd.8
}
postmk() {
cd $TMPROOT
CheckError "change to $TMPROOT failed"
mkdir -p usr/share
mv usr/man usr/share
tar -cf - share/man|tar -C usr -xf -
rm -r share
mkdir -p etc/sysconfig/LVM/lvmtab.d etc/sysconfig/LVM/lvmconf
touch etc/sysconfig/LVM/lvmtab
}

126
BaseBuild/Basesys/Linux-PAM Normal file
View File

@ -0,0 +1,126 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: Linux-PAM
#Quelle der Source Archive: ftp://ftp.kernel.org/pub/linux/libs/pam
#Kurzbeschreibung:
#Pluggable Authentification Module. Linux-PAM ermöglicht die Verwendung
#unterschiedlichster Authentification (Login) Mechanissmen unter Linux.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Lib
premk() {
mkdir -p $TMPROOT/usr/share
if [ ! -f /bin/pwd ]; then
ln -s /tools/bin/pwd /bin/pwd
fi
mkdir ../build-pam
cd ../build-pam
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
../Linux-PAM*/configure --prefix=/ \
--includedir=/usr/include/security \
--datadir=/usr/share \
--mandir=/usr/share/man
make
make -j $NUMCPU DESTDIR=$TMPROOT install
cd ../Linux-PAM*
rm -r ../build-pam
mkdir ../build-pam
cd ../build-pam
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/lib64"
fi
../Linux-PAM*/configure --host=$TARGET \
--prefix=/ \
$ADDOPTIONS \
--includedir=/usr/include/security \
--datadir=/usr/share \
--mandir=/usr/share/man
make
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
if [ -f /bin/pwd ]; then
rm /bin/pwd
fi
if [ -d $TMPROOT/share ]; then
mkdir -p $TMPROOT/usr
mv $TMPROOT/share/* $TMPROOT/usr/share
fi
for i in acct auth passwd session; do
ln -s pam_unix.so $TMPROOT/lib/security/pam_unix_$i.so
if [ "$MK64BIT" == "true" ]; then
ln -s pam_unix.so $TMPROOT/lib64/security/pam_unix_$i.so
fi
done
GetSVN Viitor_pam $TMPROOT
cd ../Linux-PAM
rm -r ../build-pam
}

View File

@ -0,0 +1,94 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $Source: $
#
#(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:
#Quelle der Source Archive:
#ACHTUNG: Beschreibung nicht in der gleichen Zeile beginnen!
#Neue Zeile anfangen. sonste funktioniert die metadaten erzeugung
#nicht!
#Kurzbeschreibung:
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
(( MKPKG = $MKPKG | 4 ))
SRCPATH=Base/System
VERSION=0.1
if [ -f $LFSSOURCE/$SRCPATH/ViitorMan-[0-9]*.tar.bz2 ]; then
rm $LFSSOURCE/$SRCPATH/ViitorMan-[0-9]*.tar.bz2
fi
touch $LFSSOURCE/$SRCPATH/ViitorMan-$VERSION.tar.bz2
premk() {
echo "Nothing to do for premk()"
}
mk() {
GetSVN Viitor_man $TMPROOT
}
postmk() {
echo "Nothing to do for postmk()"
}

166
BaseBuild/Basesys/acl Normal file
View File

@ -0,0 +1,166 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: acl
#Quelle der Source Archive: ftp://oss.sgi.com/projects/xfs/download/cmd_tars
#Kurzbeschreibung:
#Access Control List Verwaltungs Tools für das XFS Filesystem
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
SRCPATH=Base/System
premk() {
if [ ! -d $TMPROOT/lib ]; then
mkdir -p $TMPROOT/lib $TMPROOT/usr/lib
fi
if [ ! -f /usr/sbin/libattr.so ]; then
cd /usr/sbin
ln -s ../lib/libattr.so.1 libattr.so
cd -
fi
}
mk32() {
CC="gcc ${BUILDOPTIONS32} -fPIC -I/usr/include" \
CXX="g++ ${BUILDOPTIONS32} -fPIC -I/usr/include" \
USE_ARCH=$UARCH \
./configure --host=$TARGET \
--prefix=/ \
--libdir=/usr/lib \
--mandir=/usr/share/man
make -j $NUMCPU USE_ARCH=$UARCH
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/lib/libacl.a
cp libacl/.libs/libacl.{so,a} $TMPROOT/usr/lib
ln -sf ../usr/lib/libacl.a $TMPROOT/lib/libacl.a
ln -sf ../usr/lib/libacl.la $TMPROOT/lib/libacl.la
sed -i -e "s%libdir=.*$%libdir=\'/usr/lib\'%" \
-e "s%/usr/sbin/libattr.la%/lib/libattr.la%" $TMPROOT/usr/lib/libacl.la
GenDynLib32 $TMPROOT/usr/lib/libacl.a 1.1.0
cd ..
rm -r acl*
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/acl_*.tar.*
cd acl*
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
mkdir -p $TMPROOT/lib64 $TMPROOT/usr/lib64
else
ADDOPTIONS="--libdir=/usr/lib"
fi
CC="gcc ${BUILDOPTIONS} -fPIC -I/usr/include" \
CXX="g++ ${BUILDOPTIONS} -fPIC -I/usr/include" \
USE_ARCH=$UARCH \
./configure --host=$TARGET \
--prefix=/ \
$ADDOPTIONS \
--mandir=/usr/share/man
make -j $NUMCPU USE_ARCH=$UARCH
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/$LIBDIR/libacl.a
cp libacl/.libs/libacl.{so,a} $TMPROOT/usr/$LIBDIR
ln -sf ../usr/$LIBDIR/libacl.a $TMPROOT/$LIBDIR/libacl.a
ln -sf ../usr/$LIBDIR/libacl.la $TMPROOT/$LIBDIR/libacl.la
sed -i -e "s%libdir=.*$%libdir=\'/usr/$LIBDIR\'%" \
-e "s%/usr/sbin/libattr.la%/$LIBDIR/libattr.la%" $TMPROOT/usr/$LIBDIR/libacl.la
GenDynLib $TMPROOT/usr/$LIBDIR/libacl.a 1.1.0
}
postmk() {
cd $TMPROOT/usr/include
ln -s xfs/acl .
mkdir sys
cd sys
ln -s ../xfs/sys/acl.h acl.h
}

99
BaseBuild/Basesys/adjust Normal file
View File

@ -0,0 +1,99 @@
#!/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$
#
#(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: (Basesys)
#Quelle der Source Archive:
#Kurzbeschreibung:
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
(( MKPKG = $MKPKG | 4 ))
(( MKPKG = $MKPKG | 8 ))
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 64 ))
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
gcc -dumpspecs | \
perl -p -e 's@/tools/lib/ld@/lib/ld@g;' \
-e 's@/tools/lib64/ld@/lib64/ld@g;' \
-e 's@\*startfile_prefix_spec:\n@$_/usr/lib/ @g;' > \
$(dirname $(gcc --print-libgcc-file-name))/specs
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

184
BaseBuild/Basesys/attr Normal file
View File

@ -0,0 +1,184 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: attr
#Quelle der Source Archive: ftp://oss.sgi.com/projects/xfs/download/cmd_tars/
#Kurzbeschreibung:
#Attribut Tools für das XFS Filesystem (wird von acl benötigt)
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
if [ ! -d $TMPROOT/lib ]; then
mkdir -p $TMPROOT/usr/lib $TMPROOT/lib $TMPROOT/usr/include/attr
fi
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
USE_ARCH=$UARCH \
./configure --host=$TARGET \
--build=$TARGET \
--target=$TARGET \
--prefix=/ \
--mandir=/usr/share/man
#sed -i -e "s%LIBTOOL.*$%LIBTOOL = /usr/bin/libtool --tag help%" include/builddefs
make -j $NUMCPU USE_ARCH=$UARCH
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-lib
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/lib/libattr.{a,la}
cp libattr/.libs/libattr.{so,a}* $TMPROOT/usr/lib
cp /libexec/libattr.la $TMPROOT/usr/lib
ln -sf ../usr/lib/libattr.a $TMPROOT/lib/libattr.a
ln -sf ../usr/lib/libattr.la $TMPROOT/lib/libattr.la
ln -sf ../../lib/libattr.so $TMPROOT/usr/lib/libattr.so
rm $TMPROOT/lib/libattr.so
ln -s ../usr/lib/libattr.so.1.1.0 $TMPROOT/lib/libattr.so
sed -e "s/libdir=.*$/libdir=\'\/lib/" $TMPROOT/lib/libattr.la >/tmp/libattr.la
mv /tmp/libattr.la $TMPROOT/lib/libattr.la
rm $TMPROOT/usr/lib/libattr.so
ln -s libattr.so.1.1.0 $TMPROOT/usr/lib/libattr.so
cd ..
rm -r attr*
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/attr_*.tar.*
cd attr*
}
mk() {
if [ "$MK64BIT" == "true" ]; then
mkdir -p $TMPROOT/usr/lib64 $TMPROOT/lib64
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--build=$TARGET \
--target=$TARGET \
--prefix=/ \
--libdir=/usr/$LIBDIR \
--mandir=/usr/share/man
#sed -i -e "s%LIBTOOL.*$%LIBTOOL = /usr/bin/libtool --tag help%" include/builddefs
make -j $NUMCPU USE_ARCH=$UARCH
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-lib
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/attr \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/share/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/$LIBDIR/libattr.{a,la}
cp libattr/.libs/libattr.{so,a}* $TMPROOT/usr/$LIBDIR
cp /libexec/libattr.la $TMPROOT/usr/$LIBDIR
ln -sf ../usr/$LIBDIR/libattr.a $TMPROOT/$LIBDIR/libattr.a
ln -sf ../usr/$LIBDIR/libattr.la $TMPROOT/$LIBDIR/libattr.la
ln -sf ../../$LIBDIR/libattr.so $TMPROOT/usr/$LIBDIR/libattr.so
rm $TMPROOT/$LIBDIR/libattr.so
ln -s ../usr/$LIBDIR/libattr.so.1.1.0 $TMPROOT/$LIBDIR/libattr.so
sed -e "s/libdir=.*$/libdir=\'\/$LIBDIR\'/" $TMPROOT/$LIBDIR/libattr.la >/tmp/libattr.la
mv /tmp/libattr.la $TMPROOT/$LIBDIR/libattr.la
rm $TMPROOT/usr/$LIBDIR/libattr.so
ln -s libattr.so.1.1.0 $TMPROOT/usr/$LIBDIR/libattr.so
}
postmk() {
echo "Nothing to do for postmk"
}

View File

@ -0,0 +1,85 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: autoconf
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/autoconf
#Kurzbeschreibung:
#GNU Autoconf tool zur Konfiguration von sourcepacketen mittels
#./configure mechanismuss
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
mkdir -p $TMPROOT/usr/share
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

View File

@ -0,0 +1,91 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: automake
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/automake
#Kurzbeschreibung:
#Tools zum automatischen generieren des ./configure mechanismusses
#eines sourcetrees
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
cd $TMPROOT/usr/share
ln -s automake* automake
NAME=`ls -d aclocal*`
export NAME
mv $NAME aclocal
ln -s aclocal $NAME
}

97
BaseBuild/Basesys/bash Normal file
View File

@ -0,0 +1,97 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: bash
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/bash/
#Kurzbeschreibung:
#Die Bourne Again Shell (bash) ist in den gängigen Linux
#distributionen, wie auch in ViitorLinux, die standart shell
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share
sed -i "/ac_cv_rl_libdir/s@/lib@&64@" configure
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--bindir=/bin \
--without-bash-malloc \
--with-installed-readline
make -j $NUMCPU
make htmldir=$TMPROOT/usr/share/doc/bash-4.0 \
prefix=$TMPROOT/usr \
bindir=$TMPROOT/bin install
}
postmk() {
cd $TMPROOT/bin
ln -sf bash sh
mv $TMPROOT/usr/man $TMPROOT/usr/share
mv /bin/bash /bin/bash.static
}

87
BaseBuild/Basesys/bin86 Normal file
View File

@ -0,0 +1,87 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: bin86
#Quelle der Source Archive: http://www.cix.co.uk/~mayday/
#Kurzbeschreibung:
#Der Standart assembler für GNU/Linux. Wird zum Übersetzen des Kernels
#benötigt
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
mkdir -p $TMPROOT/usr/bin $TMPROOT/usr/share/man/man1
cd $TMPROOT/usr
ln -sf share/man man
cd -
}
mk() {
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}"
make -j $NUMCPU PREFIX=$TMPROOT/usr install
}
postmk() {
rm $TMPROOT/usr/man
}

105
BaseBuild/Basesys/binutils Normal file
View File

@ -0,0 +1,105 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/binutils
#Kurzbeschreibung:
#gnu Compiler tools wie assembler, linker usw.
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
(( MKPKG = $MKPKG | 1 ))
(( MKPKG = $MKPKG | 2 ))
(( MKPKG = $MKPKG | 128 ))
premk() {
SrcPatch $MAKEDIR/binutils* $LFSSOURCE/$SRCPATH/binutils-*-branch_update-*.patch*
SrcPatch $MAKEDIR/binutils* $LFSSOURCE/$SRCPATH/binutils-*-genscripts_multilib-*.patch*
mkdir ../build-binutils
cd ../build-binutils
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDCONFIGURE="--libdir=/usr/lib64"
fi
CC="gcc -isystem /usr/include ${BUILDOPTIONS}" \
LDFLAGS="-Wl,-rpath-link,/lib64:/lib ${BUILDOPTIONS}" \
../binutils*/configure --prefix=/usr \
$ADDCONFIGURE \
--enable-shared \
--enable-64-bit-bfd
make -j $NUMCPU configure-host
make -j $NUMCPU tooldir=/usr
MakeCheck check
make -j $NUMCPU tooldir=/usr DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/include
cd ../binutils*
cp include/libiberty.h $TMPROOT/usr/include
rm -r ../build-binutils
}

99
BaseBuild/Basesys/bison Normal file
View File

@ -0,0 +1,99 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: bison
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/bison
#Kurzbeschreibung:
#Yet Another CompilerCompiler ersatz. Die GNU Implementation von YACC,
#welcher zum übersetzen vieler sourcepackete notwendig ist.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
mkdir -p $TMPROOT/usr/share
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
./configure --prefix=/usr &&
make -j $NUMCPU &&
make -j $NUMCPU DESTDIR=$TMPROOT install &&
make distclean
}
mk() {
if [ ${MK64BIT} == "true" ]; then
ADDOPTIONS="--libdir=\${prefix}/lib64"
fi
CC="gcc ${BUILDOPTIONS}"
./configure $ADDOPTIONS \
--prefix=/usr &&
make -j $NUMCPU &&
MakeCheck -j $NUMCPU check &&
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
cd $TMPROOT/usr/bin
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

132
BaseBuild/Basesys/bzip2 Normal file
View File

@ -0,0 +1,132 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: bzip2
#Quelle der Source Archive: http://www.bzip.org/
#Kurzbeschreibung:
#bzip2 Komprimierungs und Dekomprimierungs tools
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
(( MKPKG = $MKPKG | 128 ))
premk() {
mkdir -p $TMPROOT/usr/share/man
ln -s $TMPROOT/usr/share/man $TMPROOT/usr/man
sed -i -e 's:ln -s -f $(PREFIX)/bin/:ln -s :' Makefile
}
mk32() {
make -j $NUMCPU -f Makefile-libbz2_so \
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}"
make -j $NUMCPU clean
make -j $NUMCPU CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
libbz2.a
mkdir -p $TMPROOT/usr/lib $TMPROOT/lib
cp -v libbz2.a $TMPROOT/usr/lib
cp -av libbz2.so* $TMPROOT/lib
ln -sv ../../lib/libbz2.so.1.0 $TMPROOT/usr/lib/libbz2.so
make clean
make distclean
}
mk() {
if [ "$MK64BIT" == "true" ]; then
sed -i 's@/lib\(/\| \|$\)@/lib64\1@g' Makefile
fi
make -j $NUMCPU -f Makefile-libbz2_so \
CC="gcc -fPIC ${BUILDOPTIONS}" \
CXX="g++ -fPIC ${BUILDOPTIONS}"
make -j $NUMCPU clean
make -j $NUMCPU CC="gcc -fPIC ${BUILDOPTIONS}" \
CXX="g++ -fPIC ${BUILDOPTIONS}"
make -j $NUMCPU PREFIX=/usr install
make PREFIX=$TMPROOT/usr install
rm $TMPROOT/usr/man
}
postmk() {
mkdir -p $TMPROOT/bin $TMPROOT/usr/share/man/man1 $TMPROOT/lib
WDIR=`pwd`
cp bzip2-shared $TMPROOT/bin/bzip2
if [ "$MK64BIT" == "true" ]; then
mkdir $TMPROOT/lib64
cp -a libbz2.so* libbz2.a $TMPROOT/lib64
ln -sf ../../lib64/libbz2.so.1.0 $TMPROOT/usr/lib64/libbz2.so
else
cp -a libbz2.so* libbz2.a $TMPROOT/lib
ln -sf ../../lib/libbz2.so.1.0 $TMPROOT/usr/lib/libbz2.so
fi
cd $TMPROOT/usr/bin
rm bunzip2 bzcat bzip2
mv bzip2recover bzless bzmore $TMPROOT/bin
cd $TMPROOT/bin
ln -sf bzip2 bunzip2
ln -sf bzip2 bzcat
cd $TMPROOT/usr/share/man/man1
ln -s bzip2.1 bunzip2.1
ln -s bzip2.1 bzcat.1
ln -s bzip2.1 bzip2recover.1
cd $WDIR
}

102
BaseBuild/Basesys/cdboot Normal file
View File

@ -0,0 +1,102 @@
#!/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$
#
#(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: cdboot
#Quelle der Source Archive: svnarchive Viitor
#Kurzbeschreibung:
#Enthaelt diverse spezielle files zum erstellen
#der ViitorLinux Boot CD/DVD
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
#MKPKG Flags setzen -> Automatische Installation wird unterdrückt
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 4 ))
VERSION=0.1.3
if [ -f $LFSSOURCE/$SRCPATH/cdboot-[0-9]*.tar.bz2 ]; then
rm $LFSSOURCE/$SRCPATH/cdboot-[0-9]*.tar.bz2
fi
touch $LFSSOURCE/$SRCPATH/cdboot-$VERSION.tar.bz2
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
GetSVN Viitor_cdboot $TMPROOT
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

99
BaseBuild/Basesys/config Normal file
View File

@ -0,0 +1,99 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im SVN Repository
#svn://www.compuextreme.de/Viitor/V962/Viitor_config
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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.
#
#Module zur Erstellung des Packetes: config
#Quelle der Source Archive: svn://svn.compuextreme.de/Viitor/V962/Viitor_config
#Kurzbeschreibung:
#Wichtige Configurationshilfen/files für ViitorLinux
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
SRCPATH=Base/System
#MKPKG Flags setzen -> Automatische Installation wird unterdrückt
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 4 ))
VERSION=0.9.32
if [ -f $LFSSOURCE/$SRCPATH/config-[0-9]*.tar.bz2 ]; then
rm $LFSSOURCE/$SRCPATH/config-[0-9]*.tar.bz2
fi
touch $LFSSOURCE/$SRCPATH/config-$VERSION.tar.bz2
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
GetSVN Viitor_config $TMPROOT
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

101
BaseBuild/Basesys/coreutils Normal file
View File

@ -0,0 +1,101 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: coreutils
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/coreutils
#Kurzbeschreibung:
#Eine Sammlung der wichtigsten UNIX/Shell tools
#wie ls, cut, ln uvm.
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--enable-no-install-program=kill,uptime \
--enable-install-program=hostname
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mkdir $TMPROOT/bin
mv $TMPROOT/usr/bin/{cat,chgrp,chmod,chown,cp,date} $TMPROOT/bin
mv $TMPROOT/usr/bin/{dd,df,echo,false,hostname,ln,ls,mkdir,mknod} $TMPROOT/bin
mv $TMPROOT/usr/bin/{mv,pwd,rm,rmdir,stty,true,uname} $TMPROOT/bin
mv $TMPROOT/usr/bin/{basename,head,install,nice} $TMPROOT/bin
mv $TMPROOT/usr/bin/{readlink,sleep,sync,test,touch} $TMPROOT/bin
ln -s ../usr/bin/pwd $TMPROOT/bin/pwd
mkdir -p $TMPROOT/usr/{sbin,share}
mkdir $TMPROOT/sbin
mv $TMPROOT/usr/bin/chroot $TMPROOT/usr/sbin
ln -s test $TMPROOT/usr/bin/[
ln -s ../../bin/install $TMPROOT/usr/bin/install
}

101
BaseBuild/Basesys/cpio Normal file
View File

@ -0,0 +1,101 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: cpio
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/cpio
#Kurzbeschreibung:
#Das bekannte unix Backup tool cpio - vorgänger von tar. Mit
#einigen hilfsprogrammen, umd streamer über netz verwenden zu
#können
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
sed -e "s/char \*strdup ();/\/\/char *strdup();/" userspec.c \
>/tmp/userspec.c
mv /tmp/userspec.c userspec.c
sed -e "78 d" rmt.c >/tmp/rmt.c
mv /tmp/rmt.c rmt.c
}
mk() {
CC="gcc ${BUILDUTILS}" \
CXX="g++ ${BUILDUTILS}" \
./configure --host=$TARGET \
--prefix=/usr \
--bindir=/usr/bin \
--libexecdir=/usr/sbin \
--sbindir=/sbin \
--mandir=/usr/share/man
make -j $NUMCPU
make -j $NUMCPU refix=$TMPROOT/usr bindir=$TMPROOT/usr/bin \
sbindir=$TMPROOT/sbin mandir=$TMPROOT/usr/share/man install
if [ ! -d $TMPROOT/usr/share/man/man1 ]; then
mkdir $TMPROOT/usr/share/man/man1
fi
cp *.1 $TMPROOT/usr/share/man/man1
}
postmk() {
echo "Nothing to do for postmk()"
}

123
BaseBuild/Basesys/cracklib Normal file
View File

@ -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$
#
#(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.
#
#Module zur Erstellung des Packetes: cracklib
#Quelle der Source Archive: http://sourceforge.net/projects/cracklib/
#Kurzbeschreibung:
#Cracklib ermöglicht es passwoerter auf sicherheit zu überprüfen
#Hierbei wird auf Entsprechende Buchstabenkombinationen gecheckt,
#und wenn eingerichtet auch noch ein wörterbuch verwendet. es
#wird versucht Passwörter zu Hacken - gelingt der Versuch,
#gelten die Passwörter als unsicher. Cracklib kann in Verbindung
#mit Linux-PAM jede Passwortänderung auf sicherheit Überprüfen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Lib
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir ../build-cracklib
cd ../build-cracklib
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
../cracklib*/configure --prefix=/ \
--includedir=/usr/include \
--datadir=/usr/share
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
cd ../cracklib*
rm -r ../build-cracklib
mkdir ../build-cracklib
cd ../build-cracklib
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/lib64"
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
../cracklib*/configure --host=$TARGET \
--prefix=/ \
$ADDOPTIONS \
--includedir=/usr/include \
--datadir=/usr/share
# Make-Optionen eintragen
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
cd ../cracklib*
rm -r ../build-cracklib
}

141
BaseBuild/Basesys/dbus Normal file
View File

@ -0,0 +1,141 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: dbus
#Quelle der Source Archive: http://dbus.freedesktop.org/releases
#Kurzbeschreibung:
#Gnome Windowmanager
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/System
(( MKPKG = $MKPKG | 256 ))
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
sed -i "1i\#include <syslog.h>" dbus/dbus-sysdeps-util-unix.c &&
mkdir ../Build-dbus
cd ../Build-dbus
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" USE_ARCH=$UARCH \
LDFLAGS="-L/usr/X11R7/lib" \
../dbus*/configure --prefix=/usr \
--libdir=/lib \
--sysconfdir=/etc/sysconfig \
--libexecdir=/usr/lib/dbus-1.0 \
--localstatedir=/var &&
make -j $NUMCPU &&
make -j $NUMCPU install &&
make -j $NUMCPU DESTDIR=$TMPROOT install &&
cd ../dbus* &&
rm -r ../Build-dbus &&
mkdir ../Build-dbus &&
cd ../Build-dbus
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=\${prefix}/lib64"
fi
CC="gcc $BUILDOPTIONS" USE_ARCH=$UARCH \
../dbus*/configure --prefix=/usr \
--libdir=/$LIBDIR \
--sysconfdir=/etc/sysconfig \
--libexecdir=/usr/$LIBDIR/dbus-1.0 \
--localstatedir=/var &&
make -j $NUMCPU &&
make -j $NUMCPU install &&
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
cd ../dbus*
rm -r ../Build-dbus
ClearHostSysNameing $TMPROOT
GetSVN Viitor_dbus $TMPROOT
cd $TMPROOT/etc/sysconfig/dbus-1
sed -i "/<standard_session_servicedirs \/>/a\ <servicedir>/usr/share/dbus-1/services</servicedir>" session.conf
sed -i "/<standard_system_servicedirs\/>/a\ <servicedir>/usr/share/dbus-1/services</servicedir>" system.conf
if [ ! -d $TMPROOT/usr/lib ]; then
mkdir -p $TMPROOT/usr/lib
fi
mv $TMPROOT/lib/pkgconfig $TMPROOT/usr/lib
ln -s /lib/libdbus-1.so.3.5.0 $TMPROOT/usr/lib/libdbus-1.so
ln -s /lib/libdbus-1.so.3.5.0 $TMPROOT/usr/lib/libdbus-1.so.3
ln -s /lib/libdbus-1.so.3.5.0 $TMPROOT/usr/lib/libdbus-1.so.3.5.0
if [ "$MK64BIT" == "true" ]; then
if [ ! -d $TMPROOT/usr/lib64 ]; then
mkdir -p $TMPROOT/usr/lib64
fi
mv $TMPROOT/lib64/pkgconfig $TMPROOT/usr/lib64
ln -s /lib64/libdbus-1.so.3.5.0 $TMPROOT/usr/lib64/libdbus-1.so
ln -s /lib64/libdbus-1.so.3.5.0 $TMPROOT/usr/lib64/libdbus-1.so.3
ln -s /lib64/libdbus-1.so.3.5.0 $TMPROOT/usr/lib64/libdbus-1.so.3.5.0
fi
}

View File

@ -0,0 +1,110 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: device-mapper
#Quelle der Source Archive: ftp://sources.redhat.com/pub/dm/
#Kurzbeschreibung:
#Zwischen Device schicht des Kernels für das VOlume Management.
#Software zur Ansteuerung dieser Device-mapping function
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
USE_ARCH=$UARCH \
../device-mapper*/configure
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr install
mkdir $TMPROOT/lib
cp -d /lib/libdevmapper.so* $TMPROOT/lib/
cd ../device-mapper*
make distclean
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/lib64"
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
USE_ARCH=$UARCH \
../device-mapper*/configure $ADDOPTIONS
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr install
mkdir $TMPROOT/$LIBDIR
cp -d /$LIBDIR/libdevmapper.so* $TMPROOT/$LIBDIR
}
postmk() {
mkdir $TMPROOT/sbin
cp -d /sbin/dmsetup $TMPROOT/sbin
}

113
BaseBuild/Basesys/dhcp Normal file
View File

@ -0,0 +1,113 @@
#!/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$
#
#(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: dhcp
#Quelle der Source Archive: www.isc.org
#Kurzbeschreibung:
#dhcp server und client package
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zu Basis Source Tree eintragen!
SRCPATH=Base/Net
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--sysconfdir=/etc/sysconfig/dhcp \
--sbindir=/sbin \
--enable-dhcpv6=no &&
make -j $NUMCPU &&
make -j $NUMCPU DESTDIR=$TMPROOT install
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
GetSVN Viitor_dhcp $TMPROOT
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
mv $TMPROOT/etc/sysconfig/dhcp/dhclient.conf{,.orig}
mv $TMPROOT/etc/sysconfig/dhcp/dhcpd.conf{,.orig}
rm $TMPROOT/etc/ld.so.cache
rm $TMPROOT/var/log/btmp
rm $TMPROOT/var/log/wtmp
rm $TMPROOT/var/log/utmp
mkdir -p $TMPROOT/var/db
touch $TMPROOT/var/db/dhclient.leases
touch $TMPROOT/var/db/dhcpd.leases
cp client/scripts/linux $TMPROOT/sbin/dhclient-script
sed -i "s%\(ifconfig \)%/sbin/\1%g" $TMPROOT/sbin/dhclient-script
sed -i "s%\(route \)%/sbin/\1%g" $TMPROOT/sbin/dhclient-script
}

106
BaseBuild/Basesys/dialog Normal file
View File

@ -0,0 +1,106 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: Dialog
#Quelle der Source Archive: www.freshmeat.net
#Kurzbeschreibung:
#Ermöglicht es Grafische Oberflächen mit der shell zu programmieren
#hierbei handelt es sich um typische textbasierte grafische oberflächen
#wie sie mit unterstützung der ncurses librarys programmiert werden
#können
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Development
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir -p $TMPROOT/usr/share
}
mk() {
# Hier die ./configure --host=$HOSTSYS-Optionen eintragen.
# Den \ nicht vergessen !
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--with-ncurses \
--enable-nls
CheckError "Configurescript failed !" 1
# Make-Optionen eintragen
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

View File

@ -0,0 +1,87 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: diffutils
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/diffutils
#Kurzbeschreibung:
#Die diff Implementierung von gnu. Ermöglicht das schnelle feststellen
#von datei Unterschieden. wird auch verwendet um Sourcepatches zu Erzeugen.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr
sed -i 's@\(^#define DEFAULT_EDITOR_PROGRAM \).*@\1"vi"@' config.h
touch man/*.1
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr install
}
postmk() {
echo "Nothing to do for postmk()"
}

134
BaseBuild/Basesys/e2fsprogs Normal file
View File

@ -0,0 +1,134 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: e2fsprogs
#Quelle der Source Archive: http://e2fsprogs.sourceforge.net/
#Kurzbeschreibung:
#Tools zur Verwaltung und Erzeugung von ext2 und ext3 Filesystemen.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share/info
cd $TMPROOT/usr
ln -s share/info info
cd -
mkdir ../build-e2fsprogs
cd ../build-e2fsprogs
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
LDFLAGS="-luuid -lblkid" \
../e2fsprogs*/configure --prefix=/usr \
--with-root-prefix="" \
--enable-elf-shlibs \
--disable-libblkid \
--disable-libuuid
make -j $NUMCPU
make -j $NUMCPU install
make -j $NUMCPU DESTDIR=$TMPROOT install
make -j $NUMCPU install-libs
make -j $NUMCPU DESTDIR=$TMPROOT install-libs
if [ ! -d $TMPROOT/usr/lib ]; then
mkdir -p $TMPROOT/usr/lib
fi
mv $TMPROOT/lib/pkgconfig $TMPROOT/usr/lib
cd ../e2fsprogs*
rm -r ../build-e2fsprogs
mkdir ../build-e2fsprogs
cd ../build-e2fsprogs
}
mk() {
cd ../e2fsprogs*
if [ "$MK64BIT" == "true" ]; then
sed -i '/libdir=.*\/lib/s@/lib@/lib64@g' configure
fi
cd -
CC="gcc ${BUILDOPTIONS}" \
LDFLAGS="-luuid -lblkid" \
../e2fsprogs*/configure --prefix=/usr \
--libdir=/$LIBDIR \
--with-root-prefix="" \
--enable-elf-shlibs \
--disable-libblkid \
--disable-libuuid
make -j $NUMCPU
make -j $NUMCPU install
make -j $NUMCPU DESTDIR=$TMPROOT install
make -j $NUMCPU DESTDIR=$TMPROOT install-libs
install-info $TMPROOT/usr/share/info/libext2fs.info \
$TMPROOT/usr/share/info/dir
rm $TMPROOT/usr/info
if [ ! -d $TMPROOT/usr/$LIBDIR ]; then
mkdir -p $TMPROOT/usr/$LIBDIR
fi
mv $TMPROOT/$LIBDIR/pkgconfig $TMPROOT/usr/$LIBDIR
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
rm -r $MAKEDIR/build-e2fsprogs
}

92
BaseBuild/Basesys/ed Normal file
View File

@ -0,0 +1,92 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: ed
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/ed
#Kurzbeschreibung:
#Zeilenorientierter Editor für Unix Systeme. Vorgänger des bekannten VI
#editors. Wird in einigen Scripten benötigt
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
mkdir $TMPROOT/bin
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr
make -j $NUMCPU
MakeCheck -j $NUMCPU check
make -j $NUMCPU prefix=$TMPROOT/usr install
}
postmk() {
cd $TMPROOT
mv usr/bin/{ed,red} bin
rm -r usr/bin
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

132
BaseBuild/Basesys/expat Normal file
View File

@ -0,0 +1,132 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: expat
#Quelle der Source Archive: www.freshmeat.net
#Kurzbeschreibung:
#XML Parser Library
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
#Pfad zu Basis Source Tree eintragen!
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() {
mkdir $TMPROOT/usr/include -p
if [ -d /usr/man ]; then
mv /usr/man /usr/man.store
fi
mkdir -p $TMPROOT/usr/share/man
ln -s $TMPROOT/usr/share/man /usr/man
}
mk32() {
CC="gcc $BUILDOPTIONS32" \
CXX="g++ $BUILDOPTIONS32" \
./configure --host=$TARGET32 \
--prefix=/usr \
--exec-prefix=/usr \
--mandir=/usr/share/man \
--includedir=/usr/include
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
make distclean
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS=--libdir=/usr/lib64
fi
CC="gcc $BUILDOPTIONS" \
CXX="g++ $BUILDOPTIONS" \
./configure --host=$TARGET \
--prefix=/usr \
--exec-prefix=/usr \
--mandir=/usr/share/man \
$ADDOPTIONS \
--includedir=/usr/include &&
make -j $NUMCPU &&
make -j $NUMCPU DESTDIR=$TMPROOT install
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
cd $TMPROOT/usr/lib
sed -e "s%$TMPROOT%%" libexpat.la >/tmp/libexpat.la
mv /tmp/libexpat.la .
cd -
rm /usr/man
if [ -d /usr/man.store ]; then
mv /usr/man.store /usr/man
fi
if [ $MK64BIT == "true" ]; then
cd /usr/lib64
ln -s libexpat.so.1.* libexpat.so
fi
}

89
BaseBuild/Basesys/fbset Normal file
View File

@ -0,0 +1,89 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: fbset
#Quelle der Source Archive: http://home.tvd.be/cr26864/Linux/fbdev/
#Kurzbeschreibung:
#Tools zur Einstellung der Framebufferdevices des Linux Kernels
#Ermöglicht die Veränderung der Auflösung auf den Linux Konsolen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share/man/man4 $TMPROOT/usr/share/man/man5 \
$TMPROOT/usr/share/man/man8 $TMPROOT/usr/sbin
sed -e "s/\/sbin\/fbset/\$\(TMPROOT\)\/sbin\/fbset/" Makefile| \
sed -e "s/\/usr\/man/\$\(TMPROOT\)\/usr\/share\/man/" | \
sed -e "s/\/usr\/sbin/\$\(TMPROOT\)\/usr\/sbin/" >/tmp/Makefile
mv /tmp/Makefile .
export TMPROOT
}
mk() {
make install
}
postmk() {
mkdir $TMPROOT/etc
cp etc/fb* $TMPROOT/etc
}

113
BaseBuild/Basesys/fcron Normal file
View File

@ -0,0 +1,113 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: fcron
#Quelle der Source Archive: ftp://ftp.seul.org/pub/fcron
#Kurzbeschreibung:
#Erweiterter Crontab ersatz. Wird als Default Crontab
#in ViitorLinux verwendet.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
if [ ! -d $TMPROOT/usr/sbin ]; then
mkdir -p $TMPROOT/usr/sbin
fi
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--localstatedir=/var \
--sysconfdir=/etc \
--with-spooldir=/var/spool/cron \
--with-username=root \
--with-groupname=root \
--without-sendmail \
--with-cflags="$CFLAGS"
make -j $NUMCPU
yes "n"|make -j $NUMCPU DESTDIR=$TMPROOT install
for i in 1 3 5; do
if [ ! -d $TMPROOT/usr/share/man/man$i ]; then
mkdir -p $TMPROOT/usr/share/man/man$i
fi
cp doc/man/*.$i $TMPROOT/usr/share/man/man$i
done
mkdir $TMPROOT/etc/pam.d
cp files/fcron.pam $TMPROOT/etc/pam.d/fcron
cp files/fcrontab.pam $TMPROOT/etc/pam.d/fcrontab
}
postmk() {
GetSVN Viitor_cron $TMPROOT
cd $TMPROOT/usr/bin
ln -s fcrontab crontab
cd $TMPROOT/usr/sbin
ln -s fcron cron
cd $TMPROOT/etc
chmod 6755 $TMPROOT/usr/bin/fcrondyn
chmod 2750 $TMPROOT/usr/bin/fcronsighup
chmod 6755 $TMPROOT/usr/bin/fcrontab
}

111
BaseBuild/Basesys/file Normal file
View File

@ -0,0 +1,111 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: file
#Quelle der Source Archive: ftp://ftp.gw.com/mirrors/pub/unix/file
#Kurzbeschreibung:
#file Befehl. file dient zur Identifikation des filetypes einer Datei.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
(( MKPKG = $MKPKG | 128 ))
premk() {
mkdir -p $TMPROOT/usr/bin $TMPROOT/usr/share/misc \
$TMPROOT/usr/share/man/man1 $TMPROOT/usr/share/man/man4
cd $TMPROOT/usr
ln -sf share/man man
cd -
mkdir ../build-file
cd ../build-file
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
../file*/configure --prefix=/usr
make -j $NUMCPU
make -j $NUMCPU install
make -j $NUMCPU DESTDIR=$TMPROOT install
cd ../file*
rm -r ../build-file
mkdir ../build-file
cd ../build-file
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
fi
CC="gcc ${BUILDOPTIONS}" \
../file*/configure --prefix=/usr \
$ADDOPTIONS \
--datadir=/usr/share/misc
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
rm $TMPROOT/usr/man
cd ../file*
rm -r ../build-file
}

View File

@ -0,0 +1,98 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: findutils
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/findutils
#patch : ftp://packages.linuxfromscratch.org/conglomeration
#Kurzbeschreibung:
#der findbefehl aus dieser Package wird in vielen Administrativen
#tätigkeiten und scripten benötigt um Dateien nach verschiedensten
#Parametern zu localisieren
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--libexecdir=/usr/$LIBDIR/locate \
--localstatedir=/var/$LIBDIR/locate \
--prefix=/usr
make -j $NUMCPU
make -j $NUMCPU install
make -j $NUMCPU prefix=$TMPROOT/usr \
libexecdir=$TMPROOT/usr/$LIBDIR/locate \
localstatedir=$TMPROOT/var/$LIBDIR/locate install
}
postmk() {
mkdir $TMPROOT/bin
mv -v $TMPROOT/usr/bin/find $TMPROOT/bin/find
sed -i 's@find:=${BINDIR}@find:=/bin@' $TMPROOT/usr/bin/updatedb
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share/man
}

View File

@ -0,0 +1,86 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: firmwarehotplug
#Quelle der Source Archive:
#Kurzbeschreibung:
#Scriptsamlung zum automatischen nachladen von Firmware fuer`
#diverse geraete nach hotplug
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
make -j $NUMCPU
make DESTDIR=$TMPROOT install
}
postmk() {
echo "Nothing to do for postmk()"
}

122
BaseBuild/Basesys/flex Normal file
View File

@ -0,0 +1,122 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: flex
#Quelle der Source Archive: http://lex.sourceforge.net/
#Kurzbeschreibung:
#Gnu Version des Lexical Analyzers flex. Wird von
#vielen sourcepacketen zur Übersetzung benötigt.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
mkdir -p $TMPROOT/usr/share
mkdir -p $TMPROOT/usr/man/man1
mkdir -p $TMPROOT/usr/lib
mkdir ../build-flex
cd ../build-flex
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
../flex*/configure --prefix=/usr
make -j $NUMCPU libfl.a
make -j $NUMCPU prefix=$TMPROOT/usr install-libLIBRARIES
cd ../flex*
rm -r ../build-flex
mkdir ../build-flex
cd ../build-flex
}
mk() {
if [ "$MK64BIT" == "true" ]; then
$ADDOPTIONS="--libdir=/usr/lib64"
mkdir -p $TMPROOT/usr/lib64
INSTOPT="libdir=$TMPROOT/usr/lib64"
fi
CC="gcc ${BUILDOPTIONS}" \
../flex*/configure $ADDOPTIONS \
--prefix=/usr &&
make -j $NUMCPU &&
make -j $NUMCPU prefix=$TMPROOT/usr $INSTOPT install
}
postmk() {
ln -sv libfl.a $TMPROOT/usr/lib/libl.a
if [ "$MK64BIT" == "true" ]; then
ln -sv libfl.a $TMPROOT/usr/lib64/libl.a
fi
mv $TMPROOT/usr/man $TMPROOT/usr/share
cat >$TMPROOT/usr/bin/lex <<"EOF"
#!/bin/sh
# Begin /usr/bin/lex
exec /usr/bin/flex -l "$@"
# End /usr/bin/lex
EOF
chmod 755 $TMPROOT/usr/bin/lex
mv $TMPROOT/usr/man $TMPROOT/usr/share
cd ../flex*
rm -r ../build-flex
}

102
BaseBuild/Basesys/gawk Normal file
View File

@ -0,0 +1,102 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: gawk
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/gawk
#Kurzbeschreibung:
#die Scriptsprache AWK - eines der Wichtigsten Shell tools
#in UNIX Umgebungen. Ermöglicht die einfache Verarbeitung
#tabellarisch organisierter ASCII Dateien.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
mkdir -p $TMPROOT/bin $TMPROOT/usr/share/man
ln -sf $TMPROOT/usr/share/man $TMPROOT/usr/man
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libexecdir=/usr/lib64"
else
ADDOPTIONS="--libexecdir=/usr/lib"
fi
./configure --host=$TARGET \
$ADDOPTIONS \
--prefix=/usr &&
make -j $NUMCPU &&
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mv $TMPROOT/usr/bin/gawk $TMPROOT/bin
rm $TMPROOT/usr/bin/{awk,gawk*,igawk,pgawk*}
cd $TMPROOT/usr/bin
ln -sf gawk $TMPROOT/bin/awk
ln -sf gawk.1 $TMPROOT/usr/share/man/man1/awk.1
ln -sf ../../bin/gawk $TMPROOT/usr/bin/igawk
ln -sf ../../bin/gawk $TMPROOT/usr/bin/iawk
ln -sf ../../bin/gawk $TMPROOT/usr/bin/pgawk
ln -sf ../../bin/gawk $TMPROOT/usr/bin/pawk
rm -r $TMPROOT/usr/man
}

113
BaseBuild/Basesys/gcc Normal file
View File

@ -0,0 +1,113 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive:
#Kurzbeschreibung:
#Gnu C, C++, Fortran, Java uvm. Compiler suite
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
(( MKPKG = $MKPKG | 128 ))
premk() {
SrcPatch $MAKEDIR/gcc* $LFSSOURCE/$SRCPATH/gcc-*-branch_update-*.patch*
sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
mkdir ../build-gcc
cd ../build-gcc
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDCONFIGURE="--libdir=/usr/lib64 --libexecdir=/usr/lib64"
RPATH="/lib64:/lib"
else
ADDCONFIGURE="--libexecdir=/usr/lib"
RPATH="/lib"
fi
CC="gcc -Wl,-rpath-link,$RPATH -isystem /usr/include ${BUILDOPTIONS}" \
CXX="g++ -Wl,-rpath-link,$RPATH -isystem /usr/include ${BUILDOPTIONS}" \
../gcc*/configure --prefix=/usr \
$ADDCONFIGURE \
--enable-shared \
--enable-threads=posix \
--enable-__cxa_atexit \
--enable-c99 \
--enable-long-long \
--enable-clocale=gnu \
--disable-libstdcxx-pch
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
if [ ! -d $TMPROOT/lib ]; then
mkdir -p $TMPROOT/lib
fi
ln -sv ../usr/bin/cpp $TMPROOT/lib/cpp
ln -sv gcc $TMPROOT/usr/bin/cc
cd ../gcc*
rm -r ../build-gcc
}

106
BaseBuild/Basesys/gettext Normal file
View File

@ -0,0 +1,106 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: gettext
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/gettext
#Kurzbeschreibung:
#Tool Framework zur Localisierung von Programmen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir ../build-gettext
cd ../build-gettext
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
../gettext*/configure --prefix=/usr
make -j $NUMCPU
make install
make DESTDIR=$TMPROOT install
cd ../gettext*
rm -r ../build-gettext
mkdir ../build-gettext
cd ../build-gettext
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
fi
../gettext*/configure --host=$TARGET \
$ADDOPTIONS \
--prefix=/usr
make -j $NUMCPU
make install
make DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
cd ../gettext*
rm -r ../build-gettext
}

135
BaseBuild/Basesys/glibc Normal file
View File

@ -0,0 +1,135 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: glibc
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/glibc
#Kurzbeschreibung:
#Die GNU libc des OpenSource Linux System
#wird von parktisch allen programmen benoetigt
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Lib
(( MKPKG = $MKPKG | 128 ))
premk() {
SrcPatch $MAKEDIR/glibc* $LFSSOURCE/$SRCPATH/glibc-*-localedef_segfault*
mkdir ../build-glibc
cd ../build-glibc
}
mk32() {
ARCH=`echo $TARGET32|cut -d"-" -f 1`
CC="gcc -m32" \
CXX="g++ -m32" \
CFLAGS="-march=$ARCH -mtune=generic -g -O2" \
../glibc*/configure --prefix=/usr \
--host=${TARGET32} \
--disable-profile \
--enable-add-ons \
--enable-kernel=2.6.0 \
--libexecdir=/usr/lib/glibc
make -j $NUMCPU
sed -i '/cross-compiling/s@ifeq@ifneq@g' ../glibc-2.9/localedata/Makefile
MakeCheck -k check >glibc-check-log.32 2>&1; grep Error glibc-check-log.32
touch /etc/ld.so.conf
make -j $NUMCPU install_root=$TMPROOT install
cd ../glibc*
rm -r ../build-glibc/
mkdir ../build-glibc
cd ../build-glibc
}
mk() {
ARCH=`echo $TARGET|cut -d"-" -f 1`
if [ $MK64BIT == "true" ]; then
echo "slibdir=/lib64" >> configparms
ADDCONFIGURE="--libdir=/usr/lib64 --libexecdir=/usr/lib64/glibc"
if echo $ARCH|grep -q sparc; then
echo "Special doings for sparc ?"
fi
else
ADDCONFIGURE="--libexecdir=/usr/lib/glibc"
BUILDOPTIONS=${BUILDOPTIONS}" -march=i486"
fi
if [ ! ${MK64BIT} == "true" ]; then
echo "CFLAGS += -mtune=generic -g -O2" >configparms
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
../glibc*/configure --prefix=/usr \
$ADDCONFIGURE \
--disable-profile \
--enable-add-ons \
--enable-kernel=2.6.0
make -j $NUMCPU
MakeCheck -k check >glibc-check-log 2>&1; grep Error glibc-check-log
make -j $NUMCPU install_root=$TMPROOT install
make -j $NUMCPU install_root=$TMPROOT localedata/install-locales
}
postmk() {
cd ../glibc*
rm -r ../build-glibc
}

148
BaseBuild/Basesys/gmp Normal file
View File

@ -0,0 +1,148 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: gmp
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/gmp
#Kurzbeschreibung:
#Gnu Math Library. Library mit hochgenauen und vor allem
#performanten mathematischen Funktionen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Lib
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir ../build-gmp
cd ../build-gmp
}
mk32() {
CC="gcc -isystem /usr/include ${BUILDOPTIONS32}" \
CXX="g++ -isystem /usr/include ${BUILDOPTIONS32}" \
LDFLAGS="-Wl,-rpath-link,/lib ${BUILDOPTIONS32}" \
../gmp*/configure --host=$TARGET32 \
--prefix=/usr \
--enable-cxx \
--enable-mpbsd
make -j $NUMCPU
MakeCheck check
make -j $NUMCPU DESTDIR=$TMPROOT install
mv -v $TMPROOT/usr/include/gmp{,-32}.h
cd ../gmp*
rm -r ../build-gmp
mkdir ../build-gmp
cd ../build-gmp
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
fi
CC="gcc -isystem /usr/include ${BUILDOPTIONS}" \
CXX="g++ -isystem /usr/include ${BUILDOPTIONS}" \
LDFLAGS="-Wl,-rpath-link,/$LIBDIR ${BUILDOPTIONS}" \
../gmp*/configure --host=$TARGET \
$ADDOPTIONS \
--prefix=/usr \
--enable-cxx \
--enable-mpbsd
CheckError "Configurescript failed !" 1
# Make-Optionen eintragen
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
MakeCheck check
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/info $TMPROOT/usr/share/info
cd ../gmp*
rm -r ../build-gmp
if [ $MK64BIT == "true" ]; then
mv -v $TMPROOT/usr/include/gmp{,-64}.h
cat > /usr/include/gmp.h << "EOF"
/* gmp.h - Stub Header */
#ifndef __STUB__GMP_H__
#define __STUB__GMP_H__
#if defined(__x86_64__) || \
defined(__sparc64__) || \
defined(__arch64__) || \
defined(__s390x__)
# include "gmp-64.h"
#else
# include "gmp-32.h"
#endif
#endif /* __STUB__GMP_H__ */
EOF
fi
}

115
BaseBuild/Basesys/gpplib Normal file
View File

@ -0,0 +1,115 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: gpplib
#Quelle der Source Archive: wird aus gcc binary generiert
#Kurzbeschreibung:
#Die c++ Supportlibrarys. Sie werden von c++ Programmen benötigt.
#Dieses Packet wird nur benötigt, wenn gcc nicht installiert wird,
#und enthält die dynamischen Librarys aus dem gcc packet
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Lib
#MKPKG Flags setzen -> Automatische Installation wird unterdrückt
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 4 ))
VERSION=0.4.3.3
if [ -f $LFSSOURCE/$SRCPATH/gpplib-[0-9]*.tar.bz2 ]; then
rm $LFSSOURCE/$SRCPATH/gpplib-[0-9]*.tar.bz2
fi
touch $LFSSOURCE/$SRCPATH/gpplib-$VERSION.tar.bz2
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
cd /usr/src
mkdir gpplib
cd gpplib
extractvarchive $DISTTARGET/Base/Development/gcc-[0-9]*.vpg bin.tar| \
tar -xvf -
rm -r usr/bin usr/include usr/info usr/man usr/share
if [ "$MK64BIT" == "true" ]; then
rm -r usr/lib64/gcc
else
rm -r usr/lib/gcc
fi
find . -name "*.a" -exec rm {} \;
find . -name "*.la" -exec rm {} \;
cp -rp * $TMPROOT
cd ..
rm -r gpplib
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

90
BaseBuild/Basesys/grep Normal file
View File

@ -0,0 +1,90 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: grep
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/grep
#Kurzbeschreibung:
#grep durchsucht Dateien nach beliebigen strings. Hierbei
#können die suchmuster durch regular Expressions formuliert werden.
#grep wird von sehr vielen scripten verwendet.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
rm /bin/grep
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--bindir=/bin &&
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
ln -sf grep $TMPROOT/bin/egrep
ln -sf grep $TMPROOT/bin/fgrep
}

96
BaseBuild/Basesys/groff Normal file
View File

@ -0,0 +1,96 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: groff
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/groff
#Kurzbeschreibung:
#groff dient zur formatierten Ausgabe von Texten auf verschiedenen
#Terminals oder Drucker
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr $TMPROOT/usr/share
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
fi
PAGE=A4 \
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure $ADDOPTIONS \
--prefix=/usr
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr install
}
postmk() {
if [ -d $TMPROOT/usr/man ]; then
mv $TMPROOT/usr/man $TMPROOT/usr/share
fi
ln -sf soelim $TMPROOT/usr/bin/zsoelim
ln -sf eqn $TMPROOT/usr/bin/geqn
ln -sf tbl $TMPROOT/usr/bin/gtbl
}

95
BaseBuild/Basesys/gzip Normal file
View File

@ -0,0 +1,95 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: gzip
#Quelle der Source Archive: gzip : ftp://ftp.gnu.org/gnu/gzip
#patch : ftp://packages.linuxfromscratch.org/conglomeration
#Kurzbeschreibung:
#bzip Komprimierungs-/Dekomprimierungs tools
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
mkdir -p $TMPROOT/usr/bin $TMPROOT/bin $TMPROOT/usr/share
sed -i "s/futimens/gl_&/" $(grep -lr futimens *)
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--bindir=/bin
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
for i in gzexe zcmp zdiff zforce zgrep zmore znew; do
sed -e "s%$TMPROOT%%" $TMPROOT/bin/$i >/tmp/$i
mv /tmp/$i $TMPROOT/bin/$i
chmod 755 $TMPROOT/bin/$i
done
ln -s gzip $TMPROOT/bin/compress
if [ -d $TMPROOT/usr/man ]; then
mv $TMPROOT/usr/man $TMPROOT/usr/share
fi
}

100
BaseBuild/Basesys/hotplug Normal file
View File

@ -0,0 +1,100 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: hotplug
#Quelle der Source Archive: www.freshmeat.net
#Kurzbeschreibung:
#hotplug scriptsamlung, die bei plugin entsprechende treiber laden
#wird in verbindung mit udev benoetigt
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
mkdir -p $TMPROOT/etc/init.d
mkdir -p $TMPROOT/sbin/
mkdir -p $TMPROOT/var/lock/subsys
mkdir -p $TMPROOT/usr/share/man/man.8
cp hotplug.8 $TMPROOT/usr/share/man/man.8
cp -rp etc/hotplug* $TMPROOT/etc
cp -rp etc/rc.d/init.d/hotplug $TMPROOT/etc/init.d
cp sbin/hotplug $TMPROOT/sbin
if [ -d /var/install/sysvinit* ]; then
mkdir $TMPROOT/etc/init.d/rc{0,1,2,3,4,5,6}.d
cd $TMPROOT/etc/init.d
for i in 1 2 3 4 5; do
cd rc$i.d
ln -s ../hotplug S05hotplug
cd ..
done
fi
}
postmk() {
echo "Nothing to do for premk()"
}

122
BaseBuild/Basesys/inetutils Normal file
View File

@ -0,0 +1,122 @@
#!/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$
#
#(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: inetutils
#Quelle der Source Archive: ftp.gnu.org/gnu/inetutils
#Kurzbeschreibung:
#inetutils des GNU Projekts enthält die Packete telnet, ftp, talk, whois, rsh
#tftp - jeweils als client und server. Das Script baut aus diesen Tools jeweils
#eigene installationspackete (telnet-inetutils, rsh-inetutils, talk-inetutils)
#wobei server und client getrennt behandelt werden und jeweils eigene
#packete bekommen. Dies ermöglicht eine getrennte installation der server
#und client tools. Server aus dieser package werden üblicherweise über
#den inetd gestartet. Nur wenn ein entsprechender server installiert
#wird, wird ein entsprechender Eintrag in /etc/inetd.conf erzeugt.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zu Basis Source Tree eintragen!
SRCPATH=Base/Net
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--libexecdir=/usr/sbin \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-syslogd \
--disable-logger \
--disable-whois \
--disable-servers \
--disable-ifconfig \
--disable-ping \
--disable-ping6 \
--with-pam
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
if [ ! -d $TMPROOT/bin ]; then
mkdir $TMPROOT/bin
fi
mv $TMPROOT/usr/bin/ping $TMPROOT/bin
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/lfs-utils*.tar.bz2
cd $MAKEDIR/lfs-utils*
mkdir $TMPROOT/etc
cp etc/{services,protocols} $TMPROOT/etc
ClearHostSysNameing $TMPROOT
}

102
BaseBuild/Basesys/iproute2 Normal file
View File

@ -0,0 +1,102 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: iproute
#Quelle der Source Archive: http://developer.osdl.org/dev/iproute2
#Kurzbeschreibung:
#Netzwerk Konfigurations Tools die die Erweiterten Features der Kernel 2.2.x und 2.4.x
#konfigurieren können
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Net
#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() {
mkdir -p $TMPROOT/sbin $TMPROOT/usr/sbin
sed -i '/^TARGETS/s@arpd@@g' misc/Makefile
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}" \
DESTDIR=/ \
LIBDIR=/usr/$LIBDIR \
VARLIB=/var/$LIBDIR \
SBINDIR=/sbin \
DOCDIR=/usr/share/doc/iproute2 \
MANDIR=/usr/share/man
make -j $NUMCPU DESTDIR=$TMPROOT \
LIBDIR=/usr/$LIBDIR \
VARLIB=/var/$LIBDIR \
SBINDIR=/sbin \
DOCDIR=/usr/share/doc/iproute2 \
MANDIR=/usr/share/man install
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
GetSVN Viitor_iproute $TMPROOT
}

92
BaseBuild/Basesys/iputils Normal file
View File

@ -0,0 +1,92 @@
#!/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://www.compuextreme.de/Viitor/V962/ViitorMake/BaseBuild/Basesys/grep $
#
#(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.
#
#Module zur Erstellung des Packetes: iputils
#Quelle der Source Archive: http://www.skbuff.net/iputils/
#Kurzbeschreibung:
#Einige der Basis Networking tools (ping, arping, clockdiff, rdisc
#tracepath traceroute
#
#Letzte Änderung von: $Author: kueller $
#Datum der letzten Änderung: $Date: 2008-05-02 13:13:24 +0000 (Fr, 02 Mai 2008) $
#Version der Datei: $Revision: 4220 $
#
SRCPATH=Base/Net
premk() {
echo "Nothing to do for premk()"
}
mk() {
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}"
}
postmk() {
mkdir -p $TMPROOT/bin
mkdir -p $TMPROOT/usr/bin
mkdir -p $TMPROOT/usr/share/man/man8
install -v m755 ping{,6} $TMPROOT/bin
install -v m755 arping $TMPROOT/usr/bin
install -v m755 clockdiff $TMPROOT/usr/bin
install -v m755 rdisc $TMPROOT/usr/bin
install -v m755 tracepath $TMPROOT/usr/bin
install -v m755 trace{path,route}6 $TMPROOT/usr/bin
install -v m755 doc/*.8 $TMPROOT/usr/share/man/man8
chmod 4755 $TMPROOT/bin/ping
}

View File

@ -0,0 +1,92 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: jfsutils
#Quelle der Source Archive: http://jfs.sourceforge.net/
#Kurzbeschreibung:
#Tools zum Anlegen, Reparieren und Prüfen von jfs filesystemen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/ \
--libexecdir=/sbin \
--mandir=/usr/share/man
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT \
libexecdir=$TMPROOT/sbin \
mandir=$TMPROOT/usr/share/man install
}
postmk() {
echo "Nothing to do for postmk()"
}

100
BaseBuild/Basesys/kbd Normal file
View File

@ -0,0 +1,100 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: kbd
#Quelle der Source Archive: ftp://ftp.win.tue.nl/pub/linux-local/utils/kbd
#Kurzbeschreibung:
#Tools zur Einstellung der Tastaturbelegung.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share
if ! grep root /etc/passwd; then
cp /etc/passwd /tmp/passwd
echo "root::0:0:Administrator:/root:/bin/bash" >/etc/passwd
cat /tmp/passwd >>/etc/passwd
rm /tmp/passwd
fi
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--datadir=/lib64/kbd"
else
ADDOPTIONS="--datadir=/lib/kbd"
fi
CC="gcc ${BUILDOPTIONS}" \
./configure $ADDOPTIONS \
--prefix=/usr &&
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}"
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mv $TMPROOT/share $TMPROOT/usr/share
rm $TMPROOT/$LIBDIR/kbd/keymaps/i386/qwerty/defkeymap.map.gz
gzip -d -c $TMPROOT/$LIBDIR/kbd/keymaps/i386/qwertz/de-latin1.map.gz >$TMPROOT/$LIBDIR/kbd/keymaps/defkeymap.kmap
mkdir -p $TMPROOT/bin
mv $TMROOT/usr/bin/{kbd_mode,dumpkeys,loadkeys,openvt,setfont} $TMPROOT/bin
}

89
BaseBuild/Basesys/less Normal file
View File

@ -0,0 +1,89 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: less
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/less
#Kurzbeschreibung:
#Text Anzeiger. Dient zum seitenweisen Anzeigen von Ascii Dateien.
#Wird in ViitorLinux u.A. zum Anzeigen der manpages oder infoseiten
#verwendet. Nachfolger des bekannten anzeigers more. more wird
#von less emuliert.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
mkdir -p $TMPROOT/usr/share
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--bindir=/bin \
--sysconfdir=/etc &&
make -j $NUMCPU &&
make -j $NUMCPU prefix=$TMPROOT/usr bindir=$TMPROOT/bin sysconfdir=/etc install
}
postmk() {
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

121
BaseBuild/Basesys/libnih Normal file
View File

@ -0,0 +1,121 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: libnih
#Quelle der Source Archive: https://launchpad.net/libnih
#ACHTUNG: Beschreibung nicht in der gleichen Zeile beginnen!
#Neue Zeile anfangen. sonste funktioniert die metadaten erzeugung
#nicht!
#Kurzbeschreibung:
# Support funktionen für upstart startup daemon
#
#Letzte Änderung von: $Author: $
#Datum der letzten Änderung: $Date: $
#Version der Datei: $Revision: $
#
SRCPATH=Base/Lib
premk() {
echo "Nothing to do for premk()"
}
mk32() {
CC="gcc $BUILDOPTIONS32" \
CXX="g++ $BUILDOPTIONS32" \
USE_ARCH=32 \
./configure --prefix=/ \
--sharedstatedir=/usr/share \
--includedir=/usr/include \
--datarootdir=/usr/share
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
make distclean
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=\${prefix}/lib64"
fi
CC="gcc $BUILDOPTIONS" \
CXX="g++ $BUILDOPTIONS" \
USE_ARCH=$UARCH \
LDFLAGS="-L/$LIBDIR" \
./configure $ADDOPTIONS \
--prefix=/ \
--sharedstatedir=/usr/share \
--includedir=/usr/include \
--datarootdir=/usr/share
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
if [ ! -d $TMPROOT/usr/lib ]; then
mkdir $TMPROOT/usr/lib
fi
mv $TMPROOT/lib/pkgconfig $TMPROOT/usr/lib/
if [ "$MK64BIT" == "true" ]; then
if [ ! -d $TMPROOT/usr/lib64 ]; then
mkdir $TMPROOT/usr/lib64
fi
mv $TMPROOT/lib64/pkgconfig $TMPROOT/usr/lib64
fi
}

114
BaseBuild/Basesys/libtool Normal file
View File

@ -0,0 +1,114 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: libtool
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/libtool
#Kurzbeschreibung:
#Hilfstool zur Erzeugung dynamischer Librarys mit Konfigurations-
#informationen (lib????.la)
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir ../build-libtool
cd ../build-libtool
ln -sf /tools/bin/grep /bin/grep
}
mk32() {
echo "lt_cv_sys_dlsearch_path='/lib /usr/lib /usr/local/lib /opt/lib'" > config.cache
CC="gcc ${BUILDOPTIONS32}"\
../libtool*/configure --prefix=/usr \
--cache-file=config.cache
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
sed -i "s/\/tools\/bin\/grep/\/bin\/grep/" $TMPROOT/usr/bin/libtool
mv -v $TMPROOT/usr/bin/libtool{,-32}
cd ../libtool*
rm -r ../build-libtool
mkdir ../build-libtool
cd ../build-libtool
}
mk() {
echo "lt_cv_sys_dlsearch_path='/lib64 /usr/lib64 /usr/local/lib64 /opt/lib64'" > config.cache
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
fi
CC="gcc ${BUILDOPTIONS}"\
../libtool*/configure $ADDOPTIONS \
--prefix=/usr \
--cache-file=config.cache
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
sed -i "s/\/tools\/bin\/grep/\/bin\/grep/" $TMPROOT/usr/bin/libtool
if [ "$MK64BIT" == "true" ]; then
mv $TMPROOT/usr/bin/libtool{,-64}
ln -s multiarch_wrapper $TMPROOT/usr/bin/libtool
fi
}
postmk() {
cd ../libtool*
rm -r ../build-libtool
}

123
BaseBuild/Basesys/libxml2 Normal file
View File

@ -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$
#
#(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$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
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
}

89
BaseBuild/Basesys/lilo Normal file
View File

@ -0,0 +1,89 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: lilo
#Quelle der Source Archive: ftp://sunsite.unc.edu/pub/Linux/system/boot/lilo
#Kurzbeschreibung:
#lilo, der LinuxLoader, ist der wohl meist verwendetste bootmanager.
#Ist unter ViitorLinux zwingent notwendig um linux von der HD des PC's
#starten zu können
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/sbin \
$TMPROOT/usr/man/man5 \
$TMPROOT/usr/man/man8 \
$TMPROOT/usr/share
}
mk() {
make CC="gcc ${BUILDOPTIONS}" -j $NUMCPU
make -j $NUMCPU ROOT=$TMPROOT install
}
postmk() {
GetSVN Viitor_lilo $TMPROOT
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

97
BaseBuild/Basesys/linux Normal file
View File

@ -0,0 +1,97 @@
#!/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$
#
#(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 : Patchen unterbinden
# 256 : Installation mit Overwrite option starten
#
#Module zur Erstellung des Packetes: linux
#Quelle der Source Archive: ftp://ftp.kernel.org/pub/linux/kernel/v2.4
#Kurzbeschreibung:
#Der Linux Kernel - Die Basis des GNU/Linux Systems
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Kernel
(( MKPKG = $MKPKG | 256 ))
#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() {
mkdir -p $TMPROOT/usr/src
sed -e "s/O2/O3/g" -e "s/^EXTRAVERSION =.*$/EXTRAVERSION =/" Makefile >/tmp/Makefile
mv /tmp/Makefile .
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
cd $MAKEDIR/linux
chown -R 0:0 .
make mrproper
cd ..
tar -cf - linux|tar -xC $TMPROOT/usr/src -vf -
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

View File

@ -0,0 +1,99 @@
#!/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$
#
#(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: (Basesys)
#Quelle der Source Archive:
#Kurzbeschreibung:
#von LinuxFromScratch fuerr den Build prozess gepatchte
#Kernel header files die unter /usr/include/linux
#installiert werden und den bisherigen link von
#/usr/src/linux/include/* nach /usr/include/* ersetzen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Kernel
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
ARCH=`echo $TARGET|cut -d"-" -f 1|sed -e "s/i.86/i386/"`
if [ "$ARCH" == "athlon" ]; then
ARCH="i386"
fi
install -dv $TMPROOT/usr/include
tar -C $ARCH -cf - .|tar -C $TMPROOT/usr -xvf -
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

85
BaseBuild/Basesys/m4 Normal file
View File

@ -0,0 +1,85 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: m4
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/m4
#Kurzbeschreibung:
#Die m4 Macrosprache wird oft zur Automatisierten, vereinfachten, Erstellung
#von Konfigurationen benötigt
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr exec_prefix=$TMPROOT/usr install
}
postmk() {
echo "Nothing to do for postmk()"
}

90
BaseBuild/Basesys/make Normal file
View File

@ -0,0 +1,90 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: make
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/make
#Kurzbeschreibung:
#Das bekannte make. make ermöglicht eine abhängikeiten gesteuerte
#scriptabarbeitung, wie sie vor allem beim Übersetzen komplexer
#programme benötigt wird.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--mandir=/usr/share/man
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
chown root:root $TMPROOT/usr/bin/make
chmod 755 $TMPROOT/usr/bin/make
}

88
BaseBuild/Basesys/man Normal file
View File

@ -0,0 +1,88 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: man
#Quelle der Source Archive : ftp://ftp.kernel.org/pub/linux/utils/man
#patch : ftp://packages.linuxfromscratch.org/conglomeragion
#Kurzbeschreibung:
#Anzeiger für die manpages des Unix/Linux Systems
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir $TMPROOT/usr $TMPROOT/usr/bin $TMPROOT/usr/sbin
sed -i 's@-is@&R@g' configure
sed -i 's@MANPATH./usr/man@#@g' src/man.conf.in
sed -i 's@MANPATH./usr/local/man@#@g' src/man.conf.in
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure -confdir=/etc &&
make -j $NUMCPU &&
make -j $NUMCPU PREFIX=$TMPROOT install
}
postmk() {
sed -i -e "s/\(^NROFF.*-T\)utf8/\1latin1/" $TMPROOT/etc/man.conf
}

View File

@ -0,0 +1,82 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: man-pages
#Quelle der Source Archive: ftp://ftp.linuxfromscratch.org/conglomeration
#Kurzbeschreibung:
#Sammlung diverser Manpages zu UNIX-Standart Programmen - Englisch
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share/man
mkdir $TMPROOT/usr/share/man/man{1,2,3,4,5,6,7,8}
}
mk() {
make MANDIR=$TMPROOT/usr/share/man install
}
postmk() {
echo "Nothing to do for postmk()"
}

View File

@ -0,0 +1,84 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: man-pages-de
#Quelle der Source Archive: ftp://ftp.win.tue.nl/pub/linux-local/translations
#Kurzbeschreibung:
#Sammlung deutschsprachiger Manpages zu den wichtigsten Bereichen des
#Linux Systems.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
SRCDIR="manpages-de*"
premk() {
mkdir -p $TMPROOT/usr/share/man
mkdir $TMPROOT/usr/share/man/man{1,2,3,4,5,6,7,8}
}
mk() {
make MANDIR=$TMPROOT/usr/share/man install
}
postmk() {
echo "Nothing to do for postmk()"
}

88
BaseBuild/Basesys/mktemp Normal file
View File

@ -0,0 +1,88 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: make
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/make
#Kurzbeschreibung:
#Erstellt tmp file namen. wird von diversen Scripts (debian) verwendet
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=$TMPROOT/usr \
--mandir=$TMPROOT/usr/share/man \
--with-libc
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
make -j $NUMCPU DESTDIR=$TMPROOT install-tempfile
}
postmk() {
echo "Nothing to do for postmk()"
}

View File

@ -0,0 +1,94 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive:
#Kurzbeschreibung:
#Tools fuer das Module Management des Linux Kernels wie z.B.
#modprobe, insmod, lsmod, rmmod..usw.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/ \
--bindir=/bin \
--sbindir=/sbin \
--enable-zlib
make -j $NUMCPU DOCBOOKTOMAN=""
make -j $NUMCPU DESTDIR=$TMPROOT INSTALL=install install
}
postmk() {
if [ -d $TMPROOT/share ]; then
mkdir -p $TMPROOT/usr
mv $TMPROOT/share $TMPROOT/usr/
fi
ln -s /bin/lsmod $TMPROOT/sbin/lsmod
}

121
BaseBuild/Basesys/mpfr Normal file
View File

@ -0,0 +1,121 @@
#!/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://www.compuextreme.de/Viitor/V962/ViitorMake/BaseBuild/Basesys/gmp $
#
#(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.
#
#Module zur Erstellung des Packetes: mpfr
#Quelle der Source Archive: http://www.mpfr.og
#Kurzbeschreibung:
#Library zur hochperformanten floating Point Berechnung mit korrekter Rundung
#
#Letzte Änderung von: $Author: kueller $
#Datum der letzten Änderung: $Date: 2008-05-02 13:13:24 +0000 (Fr, 02 Mai 2008) $
#Version der Datei: $Revision: 4220 $
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Lib
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir ../build-mpfr
cd ../build-mpfr
}
mk32() {
CC="gcc -isystem /usr/include ${BUILDOPTIONS32}" \
LDFLAGS="-Wl,-rpath-link,/lib ${BUILDOPTIONS32}" \
../mpfr*/configure --host=$TARGET32 \
--prefix=/usr \
--enable-shared
make -j $NUMCPU
MakeCheck check
make -j $NUMCPU DESTDIR=$TMPROOT install
cd ../mpfr*
rm -r ../build-mpfr
mkdir ../build-mpfr
cd ../build-mpfr
}
mk() {
CC="gcc -isystem /usr/include ${BUILDOPTIONS}" \
CXX="g++ -isystem /usr/include ${BUILDOPTIONS}" \
LDFLAGS="-Wl,-rpath-link,/$LIBDIR ${BUILDOPTIONS}" \
../mpfr*/configure --host=$TARGET \
--build=$HOSTSYS \
--prefix=/usr \
--libdir=/usr/$LIBDIR \
--enable-shared \
CheckError "Configurescript failed !" 1
# Make-Optionen eintragen
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
MakeCheck check
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
cd ../mpfr*
rm -r ../build-mpfr
}

View File

@ -0,0 +1,119 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive:
#ACHTUNG: Beschreibung nicht in der gleichen Zeile beginnen!
#Neue Zeile anfangen. sonste funktioniert die metadaten erzeugung
#nicht!
#Kurzbeschreibung:
#
#
#Letzte Änderung von: $Author: $
#Datum der letzten Änderung: $Date: $
#Version der Datei: $Revision: $
#
SRCPATH=Base/System
VERSION=0.1
touch $LFSSOURCE/$SRCPATH/multiarch_wrapper-$VERSION.tar.bz2
(( MKPKG = ${MKPKG} | 4 ))
(( MKPKG = ${MKPKG} | 64 ))
premk() {
mkdir -p $TMPROOT/usr/bin
cat > /tmp/multiarch_wrapper.c << "EOF"
#include <unistd.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#ifndef USE_ARCH
#define USE_ARCH "64"
#endif
int main(int argc, char **argv)
{
char *filename;
char *use_arch;
if(!(use_arch = getenv("USE_ARCH")))
use_arch = USE_ARCH;
filename = (char *) malloc(strlen(argv[0]) + strlen(use_arch) + 2);
strcpy(filename, argv[0]);
strcat(filename, "-");
strcat(filename, use_arch);
execvp(filename, argv);
perror(argv[0]);
free(filename);
}
EOF
}
mk() {
gcc ${BUILDOPTIONS} /tmp/multiarch_wrapper.c -o $TMPROOT/usr/bin/multiarch_wrapper
}
postmk() {
rm -f /tmp/multiarch_wrapper.c
}

215
BaseBuild/Basesys/ncurses Normal file
View File

@ -0,0 +1,215 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: ncurses
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/ncurses
#Kurzbeschreibung:
#Die ncurses library vereinheitlicht die Programmierung unterschiedlicher
#Terminalfunktionalitäten und ersetzt die herkömliche UNIX-Termcap funktion.
#die termcap funktion wird zudem noch um die möglichkeit ASCII-Grafische
#oberflächen zu programmieren erweitert.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
(( MKPKG = $MKPKG | 128 ))
SRCPATH=Base/Lib
premk() {
SrcPatch $MAKEDIR/ncurses* $LFSSOURCE/$SRCPATH/ncurses-*-branch_update-*.patch*
mkdir $TMPROOT/usr $TMPROOT/usr/lib $TMPROOT/usr/share $TMPROOT/lib
if [ "$MK64BIT" == "true" ]; then
mkdir $TMROOT/usr/lib64 $TMPROOT/lib64
fi
mkdir ../build-ncurses
cd ../build-ncurses
}
mk32() {
CC="gcc ${BUILDOPTIONS32} -fPIC" \
CXX="g++ ${BUILDOPTIONS32} -fPIC" \
../ncurses*/configure --prefix=/usr \
--libdir=/lib \
--with-shared \
--without-debug \
--enable-widec
make
make install
make DESTDIR=$TMPROOT install
mv -v /usr/bin/ncursesw5-config{,-32}
mv -v $TMPROOT/usr/bin/ncursesw5-config{,-32}
cd ../ncurses*
rm -r ../build-ncurses
mkdir ../build-ncurses
cd ../build-ncurses
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/lib64"
else
ADDOPTIONS="--libdir=/lib"
fi
CC="gcc ${BUILDOPTIONS} -fPIC" \
CXX="g++ ${BUILDOPTIONS} -fPIC" \
../ncurses*/configure --prefix=/usr \
$ADDOPTIONS \
--with-shared \
--without-debug \
--enable-widec
make
make install
make DESTDIR=$TMPROOT install
if [ "$MK64BIT" == "true" ]; then
mv -v /usr/bin/ncursesw5-config{,-64}
mv -v $TMPROOT/usr/bin/ncursesw5-config{,-64}
ln -svf ncursesw5-config-32 $TMPROOT/usr/bin/ncurses5-config-32
ln -svf ncursesw5-config-64 $TMPROOT/usr/bin/ncurses5-config-64
ln -svf multiarch_wrapper /usr/bin/ncursesw5-config
ln -svf multiarch_wrapper $TMPROOT/usr/bin/ncurses5-config
ln -svf multiarch_wrapper $TMPROOT/usr/bin/ncursesw5-config
else
ln -svf ncursesw5-config $TMPROOT/usr/bin/ncurses5-config
fi
}
postmk() {
#korrekt the files in build System for 32 Bit
mv -v /lib/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a /usr/lib
rm -v /lib/lib{ncursesw,menuw,panelw,formw}.so
ln -svf ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so
ln -svf ../../lib/libmenuw.so.5 /usr/lib/libmenuw.so
ln -svf ../../lib/libpanelw.so.5 /usr/lib/libpanelw.so
ln -svf ../../lib/libformw.so.5 /usr/lib/libformw.so
for lib in curses ncurses form panel menu ; do
echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
ln -sfv lib${lib}w.a /usr/lib/lib${lib}.a
done
ln -sfv libcurses.so /usr/lib/libcursesw.so
ln -sfv libncurses.so /usr/lib/libcurses.so
ln -sfv libncursesw.a /usr/lib/libcursesw.a
ln -sfv libncurses.a /usr/lib/libcurses.a
ln -sfv libncurses++w.a /usr/lib/libncurses++.a
#ln -sfv ncursesw5-config-32 /usr/bin/ncurses5-config-32
ln -sfv ../../usr/share/terminfo /usr/lib/terminfo
#korrekt the files in $TMPROOT for 32 bit
mv -v $TMPROOT/lib/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a $TMPROOT/usr/lib
rm -v $TMPROOT/lib/lib{ncursesw,menuw,panelw,formw}.so
ln -svf ../../lib/libncursesw.so.5 $TMPROOT/usr/lib/libncursesw.so
ln -svf ../../lib/libmenuw.so.5 $TMPROOT/usr/lib/libmenuw.so
ln -svf ../../lib/libpanelw.so.5 $TMPROOT/usr/lib/libpanelw.so
ln -svf ../../lib/libformw.so.5 $TMPROOT/usr/lib/libformw.so
for lib in curses ncurses form panel menu ; do
echo "INPUT(-l${lib}w)" > $TMPROOT/usr/lib/lib${lib}.so
ln -sfv lib${lib}w.a $TMPROOT/usr/lib/lib${lib}.a
done
ln -sfv libcurses.so $TMPROOT/usr/lib/libcursesw.so
ln -sfv libncurses.so $TMPROOT/usr/lib/libcurses.so
ln -sfv libncursesw.a $TMPROOT/usr/lib/libcursesw.a
ln -sfv libncurses.a $TMPROOT/usr/lib/libcurses.a
ln -sfv libncurses++w.a $TMPROOT/usr/lib/libncurses++.a
#ln -sfv ncursesw5-config-32 $TMPROOT/usr/bin/ncurses5-config-32
ln -sfv ../../usr/share/terminfo $TMPROOT/usr/lib/terminfo
if [ $MK64BIT == "true" ]; then
#Korrekt the files in Build System for 64 Bit
mv -v /lib64/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a /usr/lib64
rm -v /lib64/lib{ncursesw,menuw,panelw,formw,cursesw}.so
ln -svf ../../lib64/libncursesw.so.5 /usr/lib64/libcursesw.so
ln -svf ../../lib64/libncursesw.so.5 /usr/lib64/libncursesw.so
ln -svf ../../lib64/libmenuw.so.5 /usr/lib64/libmenuw.so
ln -svf ../../lib64/libpanelw.so.5 /usr/lib64/libpanelw.so
ln -svf ../../lib64/libformw.so.5 /usr/lib64/libformw.so
for lib in curses ncurses form panel menu ; do
echo "INPUT(-l${lib}w)" > /usr/lib64/lib${lib}.so
ln -sfv lib${lib}w.a /usr/lib64/lib${lib}.a
done
ln -sfv libcurses.so /usr/lib64/libcursesw.so
ln -sfv libncurses.so /usr/lib64/libcurses.so
ln -sfv libncursesw.a /usr/lib64/libcursesw.a
ln -sfv libncurses.a /usr/lib64/libcurses.a
ln -sfv libncurses++w.a /usr/lib64/libncurses++.a
#ln -sfv ncursesw5-config-64 /usr/bin/ncurses5-config-64
#ln -sfv ncursesw5-config /usr/bin/ncurses5-config
ln -sfv ../../usr/share/terminfo /usr/lib64/terminfo
#Korrekt the files in $TMPROOT for 64 Bit
mv -v $TMPROOT/lib64/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a $TMPROOT/usr/lib64
rm -v $TMPROOT/lib64/lib{ncursesw,menuw,panelw,formw,cursesw}.so
ln -svf ../../lib64/libncursesw.so.5 $TMPROOT/usr/lib64/libcursesw.so
ln -svf ../../lib64/libncursesw.so.5 $TMPROOT/usr/lib64/libncursesw.so
ln -svf ../../lib64/libmenuw.so.5 $TMPROOT/usr/lib64/libmenuw.so
ln -svf ../../lib64/libpanelw.so.5 $TMPROOT/usr/lib64/libpanelw.so
ln -svf ../../lib64/libformw.so.5 $TMPROOT/usr/lib64/libformw.so
for lib in curses ncurses form panel menu ; do
echo "INPUT(-l${lib}w)" > $TMPROOT/usr/lib64/lib${lib}.so
ln -sfv lib${lib}w.a $TMPROOT/usr/lib64/lib${lib}.a
done
ln -sfv libcurses.so $TMPROOT/usr/lib64/libcursesw.so
ln -sfv libncurses.so $TMPROOT/usr/lib64/libcurses.so
ln -sfv libncursesw.a $TMPROOT/usr/lib64/libcursesw.a
ln -sfv libncurses.a $TMPROOT/usr/lib64/libcurses.a
ln -sfv libncurses++w.a $TMPROOT/usr/lib64/libncurses++.a
#ln -sfv ncursesw5-config-64 $TMPROOT/usr/bin/ncurses5-config-64
#ln -sfv ncursesw5-config $TMPROOT/usr/bin/ncurses5-config
ln -sfv ../../usr/share/terminfo $TMPROOT/usr/lib64/terminfo
fi
cd ../ncurses*
rm -r ../build-ncurses
}

View File

@ -0,0 +1,95 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: net-tools
#Quelle der Source Archive: http://www.tazenda.demon.co.uk/phil/net-tools
#Kurzbeschreibung:
#Basis Tools zur Netzwerkkonfiguration wie z.B. der ifconfig Befehl
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Net
premk() {
sed -e "s/COPTS = -D_GNU_SOURCE -O2 -Wall -g/CFLAGS = $BUILDOPTIONS -D_GNU_SOURCE -Wall/" Makefile >Makefile2
mv Makefile2 Makefile
sed -e "s/I18N n/I18N y/" config.in| \
sed -e "s/HAVE_AFINET6 n/HAVE_AFINET6 y/" | \
sed -e "s/HAVE_HWSIT n/HAVE_HWSIT y/" | \
sed -e "s/HAVE_AFX25 y/HAVE_AFX25 n/" |
sed -e "s/HAVE_HWX25 y/HAVE_HWX25 n/" |
sed -e "s/HAVE_HWHIPPI n/HAVE_HWHIPPI y/"| \
sed -e "s/HAVE_FW_MASQUERADE n/HAVE_FW_MASQUERADE y/" | \
sed -e "s/HAVE_HWTUNNEL y/HAVE_HWTUNNEL n/" | \
sed -e "s/HAVE_IP_TOOLS n/HAVE_IP_TOOLS n/" >/tmp/config.in
mv /tmp/config.in config.in
# sed -e "s/HAVE_HWFDDI n/HAVE_HWFDDI y/"| \
}
mk() {
yes ""|make config
make
make BASEDIR=$TMPROOT update
}
postmk() {
echo "Nothing to do for postmk()"
}

85
BaseBuild/Basesys/patch Normal file
View File

@ -0,0 +1,85 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: patch
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/patch
#Kurzbeschreibung:
#Das Patch tool aus dem gnu project. Dient zum Updaten von Sourcepacketen.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr &&
make -j $NUMCPU &&
make -j $NUMCPU prefix=$TMPROOT/usr install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

138
BaseBuild/Basesys/perl Normal file
View File

@ -0,0 +1,138 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: perl
#Quelle der Source Archive: ftp://ftp.linuxfromscratch.org/conglomeration
#Kurzbeschreibung:
#Unter UNIX häufig verwenderter interpreter für die perl
#scriptscprache.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
(( MKPKG = $MKPKG | 128 ))
premk() {
mkdir -p $TMPROOT/usr/share
mkdir -p $TMPROOT/usr/bin
echo "127.0.0.1 localhost $(hostname)" >/etc/hosts
sed -i -e "s@pldlflags=''@pldlflags=\"\$cccdlflags\"@g" \
-e "s@static_target='static'@static_target='static_pic'@g" Makefile.SH
sed -i -e '/^BUILD_ZLIB/ s/True/False/' \
-e '/^INCLUDE\|^LIB/ s|\./zlib-src|/usr/include|' \
ext/Compress/Raw/Zlib/config.in
if [ ! -f /etc/hosts ]; then
echo "127.0.0.1 localhost $(hostname)" >/etc/hosts
fi
}
mk32() {
./configure.gnu --prefix=/usr \
-Dvendorprefix=/usr \
-Dman1dir=/usr/share/man/man1 \
-Dman3dir=/usr/share/man/man3 \
-Dpager="/bin/less -isR" \
-Dcc="gcc -m32" \
-Dusethreads \
-Duseshrplib
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
mv $TMPROOT/usr/bin/perl{,-32}
mv $TMPROOT/usr/bin/perl5.10.0{,-32}
rm -r $MAKEDIR/perl-*
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/perl-*.tar*
cd $MAKEDIR/perl*
sed -i -e "s@pldlflags=''@pldlflags=\"\$cccdlflags\"@g" \
-e "s@static_target='static'@static_target='static_pic'@g" Makefile.SH
sed -i -e '/^BUILD_ZLIB/ s/True/False/' \
-e '/^INCLUDE\|^LIB/ s|\./zlib-src|/usr/include|' \
ext/Compress/Raw/Zlib/config.in
SrcPatch $MAKEDIR/perl* $LFSSOURCE/$SRCPATH/perl-*-Configure_multilib-?.patch.*
SrcPatch $MAKEDIR/perl* $LFSSOURCE/$SRCPATH/perl-*-libc-*.patch*
sed -i "/libc/s@/lib@/lib64@" hints/linux.sh
echo 'installstyle="lib64/perl5"' >>hints/linux.sh
}
mk() {
./configure.gnu --prefix=/usr \
-Dvendorprefix=/usr \
-Dman1dir=/usr/share/man/man1 \
-Dman3dir=/usr/share/man/man3 \
-Dpager="/bin/less -isR" \
-Dlibpath="/usr/local/$LIBDIR /$LIBDIR /usr/$LIBDIR" \
-Dcc="gcc -m$UARCH" \
-Dusethreads \
-Duseshrplib
make
MakeCheck test
make DESTDIR=$TMPROOT install
}
postmk() {
if [ ${MK64BIT} == "true" ]; then
mv $TMPROOT/usr/bin/perl{,-64}
mv $TMPROOT/usr/bin/perl5.10.0{,-64}
ln -sv /usr/bin/multiarch_wrapper $TMPROOT/usr/bin/perl
ln -sv /usr/bin/multiarch_wrapper $TMPROOT/usr/bin/perl5.10.0
else
echo "Nothing to do for postmk() "
fi
}

116
BaseBuild/Basesys/pkgconfig Normal file
View File

@ -0,0 +1,116 @@
#!/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$
#
#(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:pkgconfig
#Quelle der Source Archive: www.gnome.org
#Kurzbeschreibung:
#System zum Abspeichern von Programm SOURCE Konfigurationen.
#Über dieses System koennen configure Scripte die Konfiguration
#von Eingespielten supportlibrarys bzw. tools erfragen - sofern
#die entsprechenden Tools das pkgconfigsystem unterstützen.
#wird vor allem in Verbindung mit glib/gtk+ basierten Systemen
#(wie z.B. gnome) verwendet.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/System
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir ../Build-pkgconfig
cd ../Build-pkgconfig
}
mk() {
# Hier die ./configure --build=$HOSTSYS --target=$HOSTSYS-Optionen eintragen.
# Den \ nicht vergessen !
../pkgconfig*/configure --build=$TARGET \
--target=$TARGET \
--prefix=/usr
CheckError "Configurescript failed !" 1
# Make-Optionen eintragen
USE_ARCH=$UARCH CC="gcc ${BUILDOPTIONS}" ./configure --prefix=/usr --with-pc-path=/usr/share/pkgconfig &&
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
cd ../pkgconfig*
rm -r ../Build-pkgconfig
GetSVN Viitor_pkgconfig $TMPROOT
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share/man
ln -s pkg-config $TMPROOT/usr/bin/pkgconfig
}

89
BaseBuild/Basesys/portmap Normal file
View File

@ -0,0 +1,89 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $Source: $
#
#(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: portmap
#Quelle der Source Archive: www.freshmeat.net
#Kurzbeschreibung:
#rpc daemon
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Net
premk() {
mkdir -p $TMPROOT/usr/sbin
mkdir -p $TMPROOT/usr/share/man/man8
}
mk() {
make CC="gcc $BUILDOPTIONS" -j $NUMCPU
cp portmap $TMPROOT/usr/sbin
cp pmap_dump $TMPROOT/usr/sbin
cp pmap_set $TMPROOT/usr/sbin
cp *.8 $TMPROOT/usr/share/man/man8
}
postmk() {
GetSVN Viitor_rpc $TMPROOT
}

View File

@ -0,0 +1,84 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: procinfo
#Quelle der Source Archive: ftp://ftp.cistron.nl/pub/people/svm
#Kurzbeschreibung:
#Tools zur Auswertung von Systeminformationen im proc filesystem
#wie onlinezeiten, speicherbedarf, Fetplattennutzung etc.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
sed -e "s/CFLAGS = -O2/CFLAGS = $BUILDOPTIONS/" Makefile >Makefile2
}
mk() {
make -j $NUMCPU LDLIBS=-lncurses
make -j $NUMCPU prefix=$TMPROOT/usr install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

102
BaseBuild/Basesys/procps Normal file
View File

@ -0,0 +1,102 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: procps
#Quelle der Source Archive: ftp://people.redhat.com/johnsonm/procps
#Kurzbeschreibung:
#Tools zur Prozess Verwaltung, basierend auf dem procfs Filesystem
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
sed -e "s/-O3/$CFLAGS/" Makefile >Makefile2
mv Makefile2 Makefile
}
mk32() {
make -j $NUMCPU CC="gcc ${BUILDOPTIONS32}" m64=""
make -j $NUMCPU DESTDIR=$TMPROOT install lib64=lib
make clean
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="lib64=lib64"
fi
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}" m64=""
make -j $NUMCPU DESTDIR=$TMPROOT install $ADDOPTIONS
}
postmk() {
GetSVN Viitor_procps $TMPROOT
cd $TMPROOT
cd bin
ln kill skill
ln kill snice
cd ../usr/bin
rm skill snice
mv $TMPROOT/usr/bin/pgrep $TMPROOT/bin
mv $TMPROOT/usr/bin/pkill $TMPROOT/bin
ln -s /bin/pgrep $TMPROOT/usr/bin/pgrep
ln -s /bin/pkill $TMPROOT/usr/bin/pkill
}

88
BaseBuild/Basesys/psmisc Normal file
View File

@ -0,0 +1,88 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: psmisc
#Quelle der Source Archive: ftp://prdownloads.sourceforge.net/psmisc/
#Kurzbeschreibung:
#Prozess tools wie pstree, fuser und killall
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--exec-prefix=""
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share $TMPROOT/usr/bin
mv $TMPROOT/usr/man $TMPROOT/usr/share
ln -s killall $TMPROOT/bin/pidof
mv $TMPROOT/bin/pstree $TMPROOT/usr/bin
}

134
BaseBuild/Basesys/readline Normal file
View File

@ -0,0 +1,134 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: readline
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/readline
#Kurzbeschreibung:
#Library mit Funktionen zur Komandozeilen steuerung. Hierüber können
#kompfortable Editierfunktionen der Komandozeile realisiert werden
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zu Basis Source Tree eintragen!
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() {
mkdir ../build-readline
cd ../build-readline
sed -i 's:^SHLIB_LIBS=:SHLIB_LIBS=-lncursesw:' support/shobj-conf
}
#Hier wird der Make Prozess der Sourcen definiert
mk32() {
CC="gcc ${BUILDOPTIONS32} -fPIC" \
CXX="g++ ${BUILDOPTIONS32} -fPIC" \
../readline*/configure --prefix=/usr \
--libdir=/lib
make -j $NUMCPU
make -j $NUMCPU install
make -j $NUMCPU install-doc
make -j $NUMCPU DESTDIR=$TMPROOT install
make -j $NUMCPU DESTDIR=$TMPROOT install-doc
mv -v /lib/lib{readline,history}.a /usr/lib
rm -v /lib/lib{readline,history}.so
ln -svf ../../lib/libreadline.so.6 /usr/lib/libreadline.so
ln -svf ../../lib/libhistory.so.6 /usr/lib/libhistory.so
mv -v $TMPROOT/lib/lib{readline,history}.a $TMPROOT/usr/lib
rm -v $TMPROOT/lib/lib{readline,history}.so
ln -svf ../../lib/libreadline.so.6 $TMPROOT/usr/lib/libreadline.so
ln -svf ../../lib/libhistory.so.6 $TMPROOT/usr/lib/libhistory.so
cd ../readline*
rm -r ../build-readline
mkdir ../build-readline
cd ../build-readline
}
mk() {
CC="gcc ${BUILDOPTIONS} -fPIC" \
CXX="g++ ${BUILDOPTIONS} -fPIC" \
../readline*/configure --libdir=/$LIBDIR \
--prefix=/usr
make -j $NUMCPU &&
make -j $NUMCPU install &&
make -j $NUMCPU install-doc &&
make -j $NUMCPU DESTDIR=$TMPROOT install &&
make -j $NUMCPU DESTDIR=$TMPROOT install-doc
mv -v /$LIBDIR/lib{readline,history}.a /usr/$LIBDIR
rm -v /$LIBDIR/lib{readline,history}.so
ln -svf ../../$LIBDIR/libreadline.so.6 /usr/$LIBDIR/libreadline.so
ln -svf ../../$LIBDIR/libhistory.so.6 /usr/$LIBDIR/libhistory.so
mv -v $TMPROOT/$LIBDIR/lib{readline,history}.a $TMPROOT/usr/$LIBDIR
rm -v $TMPROOT/$LIBDIR/lib{readline,history}.so
ln -svf ../../$LIBDIR/libreadline.so.6 $TMPROOT/usr/$LIBDIR/libreadline.so
ln -svf ../../$LIBDIR/libhistory.so.6 $TMPROOT/usr/$LIBDIR/libhistory.so
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
cp -av /usr/include/readline/* $TMPROOT/usr/include/readline
cd ../readline*
rm -r ../build-readline
}

View File

@ -0,0 +1,86 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: reiserfsprogs
#Quelle der Source Archive: http://www.kernel.org/pub/linux/utils/fs/reiserfs/
#Kurzbeschreibung:
#Tools zur Verwaltung und Erzeugung des reiserfs Filesystems
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for pemk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/ \
--mandir=/usr/share/man
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
echo "Nothin to do for postmk()"
}

88
BaseBuild/Basesys/sed Normal file
View File

@ -0,0 +1,88 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: sed
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/sed
#Kurzbeschreibung:
#Streaming Editor. Mächtiger Editor zur Verwendung in Shell Scripten.
#gehört zur basisausstattung jedes Unix Systems.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--bindir=/bin \
--enable-html
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
echo "Nothing to do for postmk()"
}

169
BaseBuild/Basesys/shadow Normal file
View File

@ -0,0 +1,169 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: shadow
#Quelle der Source Archive: ftp://ftp.pld.org.pl/software/shadow
#Kurzbeschreibung:
#Tools für das Shadow Password system
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
touch /usr/bin/passwd /var/run/utmp /var/log/{btmp,lastlog,wtmp}
chmod 644 /var/run/utmp /var/log/{btmp,lastlog,wtmp}
mkdir ../build-shadow
cd ../build-shadow
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
../shadow*/configure --prefix=/usr \
--libdir=/lib \
--sysconfdir=/etc \
--enable-shared \
--with-libpam \
--without-audit \
--without-selinux \
--with-libcrack
sed -i 's/groups$(EXEEXT) //' src/Makefile
find man -name Makefile -exec sed -i '/groups.1.xml/d' '{}' \;
find man -name Makefile -exec sed -i 's/groups.1 //' '{}' \;
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
if [ ! -d $TMPROOT/lib ]; then
mkdir $TMPROOT/lib
fi
cp lib/.libs/libshadow.a $TMPROOT/lib/
cp libmisc/libmisc.a $TMPROOT/lib/
cd ../shadow*
rm -r ../build-shadow
mkdir ../build-shadow
cd ../build-shadow
GenDynLib32 $TMPROOT/lib/libshadow.a 4.1.2.2
GenDynLib32 $TMPROOT/lib/libmisc.a 4.1.2.2
}
mk() {
CC="gcc ${BUILDOPTIONS} -fPIC" \
CC="gcc ${BUILDOPTIONS} -fPIC" \
../shadow*/configure --host=$TARGET \
--prefix=/usr \
--libdir=/$LIBDIR \
--sysconfdir=/etc \
--enable-shared \
--with-libpam \
--without-audit \
--without-selinux \
--with-libcrack
sed -i 's/groups$(EXEEXT) //' src/Makefile
find man -name Makefile -exec sed -i '/groups.1.xml/d' '{}' \;
find man -name Makefile -exec sed -i 's/groups.1 //' '{}' \;
make -j $NUMCPU
make -j $NUMCPU install
make DESTDIR=$TMPROOT install
if [ ! -d $TMPROOT/$LIBDIR ]; then
mkdir $TMPROOT/$LIBDIR
fi
if [ ! -d $TMPROOT/usr/$LIBDIR ]; then
mkdir $TMPROOT/usr/$LIBDIR
fi
cp lib/.libs/libshadow.a $TMPROOT/$LIBDIR
cp libmisc/libmisc.a $TMPROOT/$LIBDIR
GenDynLib $TMPROOT/$LIBDIR/libshadow.a 4.1.2.2
GenDynLib $TMPROOT/$LIBDIR/libmisc.a 4.1.2.2
}
postmk() {
mkdir -p $TMPROOT/{etc,bin,var,usr} $TMPROOT/usr/lib $TMPROOT/var/{log,run}
cd ../shadow*
cp etc/{limits,login.access} $TMPROOT/etc
sed -i -e "s%/var/spool/mail%/var/mail%" \
-e "s%#MD5_CRYPT_ENAB.no%MD5_CRYPT_ENAB yes%" $TMPROOT/etc/login.defs
FUNCTIONS="LASTLOG_ENAB MAIL_CHECK_ENAB PORTTIME_CHECKS_ENAB CONSOLE MOTD_FILE
NOLOGINS_FILE PASS_MIN_LEN SU_WHEEL_ONLY MD5_CRYPT_ENAB CONSOLE_GROUPS
ENVIRON_FILE ULIMIT ENV_TZ ENV_HZ ENV_SUPATH ENV_PATH QMAIL_DIR MAIL_DIR
MAIL_FILE CHFN_AUTH FAILLOG_ENAB QUOTAS_ENAB FTMP_FILE OBSCURE_CHECKS_ENAB
CRACKLIB_DICTPATH PASS_CHANGE_TRIES PASS_ALWAYS"
for function in $FUNCTIONS; do
sed -i -e "s/^$function/# &/" $TMPROOT/etc/login.defs
done
touch $TMPROOT/var/run/utmp $TMPROOT/var/log/{btmp,lastlog,wtmp}
mv -v $TMPROOT/usr/bin/passwd $TMPROOT/bin
mv -v $TMPROOT/lib/libshadow.*a $TMPROOT/usr/lib
rm -v /lib/libshadow.so
cd $MAKEDIR/shadow*
ln -svf ../../lib/libshadow.so.4 $TMPROOT/usr/lib/libshadow.so
ln -svf ../../lib/libshadow.so.4 $TMPROOT/usr/lib/libshadow.so.0
if [ "$MK64BIT" == "true" ]; then
mkdir -p $TMPROOT/usr/lib64
mv -v /lib64/libshadow.*a $TMPROOT/usr/lib64
rm -v $TMPROOT/lib64/libshadow.so
ln -svf ../../lib64/libshadow.so.4 $TMPROOT/usr/lib64/libshadow.so
ln -svf ../../lib64/libshadow.so.4 $TMPROOT/usr/lib64/libshadow.so.0
fi
rm -r ../build-shadow
rm -r $TMPROOT/etc/pam.d
sed -i "s/\(GROUP=100\)0/\1/" $TMPROOT/etc/default/useradd
}

View File

@ -0,0 +1,96 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: subversion
#Quelle der Source Archive: http://subversion.tigris.org/, http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74
#Kurzbeschreibung:
#Tool zur Versionsverwaltung zur Ablösung von CVS
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Development
premk() {
tar -jxvf $LFSSOURCE/$SRCPATH/subversion-deps*.tar.bz2 -C ..
}
mk() {
CC="gcc $BUILDOPTIONS -fPIC" \
CXX="g++ $BUILDOPTIONS -fPIC" \
LDFLAGS="-L/$LIBDIR -L/usr/$LIBDIR -L/usr/X11R7/$LIBDIR" \
./configure --target=$TARGET \
--with-editor=/usr/bin/vi \
--sysconfdir=/etc \
--libdir=\${prefix}/$LIBDIR \
--prefix=/usr
make -j $NUMCPU
make
make DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share/doc/subversion
cp -a doc/* $TMPROOT/usr/share/doc/subversion
mv $TMPROOT/usr/build $TMPROOT/usr/share/doc/subversion
}

View File

@ -0,0 +1,86 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: sysklogd
#Quelle der Source Archive: ftp://ftp.ibiblio.org/pub/Linux/system/daemons
#Kurzbeschreibung:
#Zentraler Logging Mechanismuss unter Unix.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share/man/man8 \
$TMPROOT/usr/share/man/man5 \
$TMPROOT/usr/sbin
# InstallOldKernelh 1
}
mk() {
make -j $NUMCPU CC="gcc ${BUILDOPTIONS}"
make -j $NUMCPU BINDIR=$TMPROOT/usr/sbin \
MANDIR=$TMPROOT/usr/share/man install
}
postmk() {
GetSVN Viitor_sysklogd $TMPROOT
}

View File

@ -0,0 +1,94 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: sysvinit
#Quelle der Source Archive: ftp://ftp.cistron.nl/pub/people/miquels/sysvinit
#Kurzbeschreibung:
#Grund Initialisierung des UNIX Systems nach dem SysV Mechanismuss.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
for i in $TMPROOT/sbin \
$TMPROOT/usr \
$TMPROOT/usr/bin \
$TMPROOT/usr/include \
$TMPROOT/usr/share \
$TMPROOT/usr/share/man \
$TMPROOT/usr/share/man/man5 \
$TMPROOT/usr/share/man/man8 \
$TMPROOT/usr/share/man/man1 \
$TMPROOT/bin; do
mkdir $i
done
}
mk() {
make -j $NUMCPU -C src clobber
make -j $NUMCPU -C src CC="gcc ${BUILDOPTIONS}"
make -j $NUMCPU -C src ROOT=$TMPROOT install
}
postmk() {
GetSVN Viitor_sysvinit $TMPROOT
}

90
BaseBuild/Basesys/tar Normal file
View File

@ -0,0 +1,90 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: tar
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/tar
#patch : ftp://packages.linuxfromscratch.org/conglomeration
#Kurzbeschreibung:
#Datei Archivierungs Tool. Die meisten Sourcepackete sind mit diesem
#Tool erstellt.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
##MKPKG Flags setzen -> Automatische Installation wird unterdrückt
#(( MKPKG = $MKPKG | 16 ))
premk() {
echo "Nothin to do for premk"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--bindir=/bin \
--libexecdir=/usr/sbin
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
GetSVN Viitor_tar $TMPROOT
}

97
BaseBuild/Basesys/tcsh Normal file
View File

@ -0,0 +1,97 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: tcsh
#Quelle der Source Archive: ftp://ftp.astron.com/pub/tcsh/
#Kurzbeschreibung:
#Die tcsh ist der Nachfolger der csh. Hierbei handelt es sich um eine
#shell, deren Kommandosyntax an die Programmiersprache C angelehnt ist.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
mkdir -p $TMPROOT/usr/share/man/man1
cp tcsh.man $TMPROOT/usr/share/man/man1/tcsh.1
}
postmk() {
if [ -d $TMPROOT/usr/bin ]; then
cd $TMPROOT/usr/bin
mkdir ../../bin
mv tcsh ../../bin/
cd ..
rm -r bin
cd ../bin
ln -s tcsh csh
fi
}

90
BaseBuild/Basesys/texinfo Normal file
View File

@ -0,0 +1,90 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: texinfo
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/texinfo
#Kurzbeschreibung:
#Tools für die manpages im GNU Info Format.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
mkdir -p $TMPROOT/usr/share
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
./configure --prefix=/usr
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
for k in $TMPROOT/usr/share/info /usr/share/info; do
cd $k
rm dir
for f in *; do
install-info $f dir 2>/dev/null
done
done
}

132
BaseBuild/Basesys/udev Normal file
View File

@ -0,0 +1,132 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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: udev
#Quelle der Source Archive: ftp.kernel.org/pub/linux/utils
#Kurzbeschreibung:
#Hotplug Event Erkennung
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
(( MKPKG = $MKPKG | 128 ))
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk() "
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
./configure --prefix=/usr \
--exec-prefix= \
--sysconfdir=/etc \
--with-libdir-name=lib
make -j $NUMCPU
make DESTDIR=$TMPROOT install
make clean
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--exec_prefix= \
--sysconfdir=/etc \
--with-libdir-name=$LIBDIR
make -j $NUMCPU
make DESTDIR=$TMPROOT install
}
postmk() {
if [ "$MK64BIT" == "true" ]; then
LIBDIR=lib64
else
LIBDIR=lib
fi
mkdir -p $TMPROOT/usr/share/doc/udev
cp -a docs/* $TMPROOT/usr/share/doc/udev
cp rules/rules.d/* $TMPROOT/etc/udev/rules.d
cp rules/gentoo/* $TMPROOT/etc/udev/rules.d
for i in alsa infiniband isdn pilot-links zaptel device-mapper md-raid; do
cp rules/packages/*$i.rules $TMPROOT/etc/udev/rules.d
done
sed -i "s/\(pty.*MODE=\).*$/\1\"0666\"/" $TMPROOT/etc/udev/rules.d/50-udev-default.rules
sed -i "s/\(GROUP=\)\"cdrom\"/\1\"cdwrite\"/" $TMPROOT/etc/udev/rules.d/50-udev-default.rules
cd $TMPROOT/lib/udev
for i in *; do
ln -s ../lib/udev/$i $TMPROOT/sbin/$i
done
ln -s ../lib/udev/vol_id $TMPROOT/sbin/volume_id
GetSVN Viitor_udev $TMPROOT
if [ ! -d $TMPROOT/dev ]; then
mkdir $TMPROOT/dev
fi
mknod $TMPROOT/dev/null c 1 3
mknod $TMPROOT/dev/console c 5 1
sed -e "/loadproc.*udevstart/d" \
$TMPROOT/etc/init.d/udev |\
sed -e "/(.*mount/d" >/tmp/udev
mv /tmp/udev $TMPROOT/etc/init.d/udev
chmod 755 $TMPROOT/etc/init.d/udev
}

99
BaseBuild/Basesys/unzip Normal file
View File

@ -0,0 +1,99 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: unzip
#Quelle der Source Archive: http://www.ctan.org/tex-archive/tools/zip/info-zip/
#Kurzbeschreibung:
#Enpacker für das DOS/Windows ZIP Archive Programm
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Utilities
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir $TMPROOT/usr/{bin,man} -p
sed -e "s%prefix = /usr/local%prefix = $TMPROOT/usr%" unix/Makefile > unix/Makefile.tmp
mv unix/Makefile.tmp unix/Makefile
CheckError "premk() failed !" 1
}
mk() {
make -j $NUMCPU \
-f unix/Makefile \
CC="gcc $BUILDOPTIONS" \
CXX="g++ $BUILDOPTIONS" \
generic
cp unix/Makefile /tmp
CheckError "Makeprocess failed !" 1
make -j $NUMCPU -f unix/Makefile install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
rm /tmp/Makefile
}

123
BaseBuild/Basesys/upstart Normal file
View File

@ -0,0 +1,123 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $Source: $
#
#(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: upstart
#Quelle der Source Archive: http://upstart.ubuntu.org
#Kurzbeschreibung:
#alternativer init daemon
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
echo "Nothing to do for premk()"
}
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=\${prefix}/lib64"
fi
CC="gcc $BUILDOPTIONS" \
CXX="g++ $BUILDOPTIONS" \
./configure $ADDOPTIONS \
--prefix=/ \
--libexecdir=/$LIBDIR/upstart \
--includedir=/usr/include \
--datarootdir=/usr/share
make -j $NUMCPU
MakeCheck -j $NUMCPU check
make DESTDIR=$TMPROOT install
#Getting some additional fine tools from sysvinit
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/sysvinit*.tar.*
cd $MAKEDIR/sysvinit*/src
for i in killall5 last mountpoint sulogin utmpdump wall; do
make $i
cp $i
done
mkdir $TMPROOT/usr/bin $TMPROOT/bin $TMPROOT/usr/share/man/man1
install -m 755 killall5 $TMPROOT/sbin/
ln -s ../sbin/killall5 $TMPROOT/bin/pidof
install -m 755 last $TMPROOT/usr/bin/
ln -s last $TMPROOT/usr/bin/lastb
install -m 755 mountpoint $TMPROOT/bin/
install -m 755 sulogin $TMPROOT/sbin/
install -m 755 utmpdump $TMPROOT/usr/bin/
install -m 755 wall $TMPROOT/usr/bin/
install -m 644 ../man/killall5.8 $TMPROOT/usr/share/man/man8/
install -m 644 ../man/last.1 $TMPROOT/usr/share/man/man1/
install -m 644 ../man/lastb.1 $TMPROOT/usr/share/man/man1/
install -m 644 ../man/mountpoint.1 $TMPROOT/usr/share/man/man1/
install -m 644 ../man/pidof.8 $TMPROOT/usr/share/man/man8/
install -m 644 ../man/sulogin.8 $TMPROOT/usr/share/man/man8/
install -m 644 ../man/wall.1 $TMPROOT/usr/share/man/man1/
cd -
rm -r $MAKEDIR/sysvinit*
}
postmk() {
GetSVN Viitor_upstart $TMPROOT
mkdir $TMPROOT/etc/sysconfig
mv $TMPROOT/etc/dbus-1 $TMPROOT/etc/sysconfig
sed -i "s/on startup/on stopped mountfs/" $TMPROOT/etc/init/rc-sysinit.conf
}

View File

@ -0,0 +1,120 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: util-linux
#Quelle der Source Archive: ftp://ftp.kernel.org/pub/linux/utils/util-linux
#Kurzbeschreibung:
#Kernel Nahe Tools für das Systemsetup und das Management der Kernelfunktionen
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
premk() {
sed -i 's%etc/adjtime%var/lib/hwclock/adjtime%' hwclock/hwclock.c
}
mk32() {
CC="gcc ${BUILDOPTIONS32} -L/lib64 -L/usr/lib64" \
./configure --enable-partx \
--disable-wall \
--enable-write
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
make distclean
}
mk() {
if [ ${MK64BIT} == "true" ]; then
ADDOPTIONS="--libdir=\${prefix}/lib64"
fi
CC="gcc ${BUILDOPTIONS} -L/lib64 -L/usr/lib64" \
./configure $ADDOPTIONS \
--enable-partx \
--disable-wall \
--enable-write
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
cd sys-utils
make rdev
cp rdev $TMPROOT/usr/sbin
cd -
}
postmk() {
mkdir -p $TMPROOT/var/lib/hwclock
if [ ! -d $TMPROOT/bin ]; then
mkdir -p $TMPROOT/bin
fi
mv $TMPROOT/usr/bin/logger $TMPROOT/bin
if [ "$MK64BIT" == "true" ]; then
if [ ! -d $TMPROOT/lib64 ]; then
mkdir $TMPROOT/lib64
fi
mv $TMPROOT/usr/lib64/libblkid.so* $TMPROOT/lib64
mv $TMPROOT/usr/lib64/libuuid.so* $TMPROOT/lib64
cd $TMPROOT/usr/lib64
ln -s ../../lib64/libblkid.so.1.* libblkid.so.1
ln -s ../../lib64/libblkid.so.1.* libblkid.so
ln -s ../../lib64/libuuid.so.1.* libuuid.so.1
ln -s ../../lib64/libuuid.so.1.* libuuid.so
fi
}

106
BaseBuild/Basesys/vim Normal file
View File

@ -0,0 +1,106 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: vim
#Quelle der Source Archive: ftp://ftp.vim.org/pub/editors/vim/unix
#Kurzbeschreibung:
#Vi iMproved. Erweiterter VI Editor. VI is in UNIX Systemen
#der Standarteditor, der jederzeit zur Verfügung steht. Seine
#Bedienung ist recht Kryptisch, ermöglicht aber die Nutzung der
#vollen funktionalität mit wirklich jedem Terminal und jeder
#Tastatur.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
(( MKPKG = $MKPKG | 1 ))
(( MKPKG = $MKPKG | 2 ))
premk() {
mkdir -p $TMPROOT/usr/share
echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --prefix=/usr \
--enable-multibyte
make -j $NUMCPU &&
make -j $NUMCPU prefix=$TMPROOT/usr localstatedir=$TMPROOT/var/lib/vim install
}
postmk() {
cd $TMPROOT/usr/bin
ln -sf vim vi
cd $TMPROOT
mkdir -p var/lib/vim
if [ -f /usr/bin/svn ]; then
GetSVN Viitor_vim $TMPROOT
fi
cd $TMPROOT/usr/man/man1
for i in *; do
sed -e "s%$TMPROOT%%" $i >/tmp/$i
mv /tmp/$i $i
done
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

88
BaseBuild/Basesys/which Normal file
View File

@ -0,0 +1,88 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: which
#Quelle der Source Archive: ftp://ftp.gnu.org/gnu/which
#Kurzbeschreibung:
#Tool zum Localisieren von Programmen (Befehlen) im Dateisystem
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--disable-iberty
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
}
postmk() {
mkdir -p $TMPROOT/usr/share
mv $TMPROOT/usr/man $TMPROOT/usr/share
}

171
BaseBuild/Basesys/xfsprogs Normal file
View File

@ -0,0 +1,171 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: xfsprogs
#Quelle der Source Archive: ftp://oss.sgi.com/projects/xfs/download/cmd_tars/
#Kurzbeschreibung:
#Tools zur Verwaltung und Erzeugung des xfs Dateisystems von SGI.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/System
#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() {
autoconf
CC="gcc ${BUILDOPTIONS32}" \
CXX="g++ ${BUILDOPTIONS32}" \
USE_ARCH=$UARCH \
./configure --host=$TARGET32 \
--prefix=/ \
--mandir=/usr/share/man \
--enable-share-uuid=yes
#sed -i -e "s%LIBTOOL.*$%LIBTOOL = /usr/bin/libtool --tag help%" include/builddefs
make -j $NUMCPU USE_ARCH=$UARCH &&
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/lib \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/lib \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/lib/libhandle.a
cp libhandle/.libs/libhandle.a $TMPROOT/usr/lib
rm $TMPROOT/usr/lib/libhandle.la
sed -e "s%^libdir.*$%libdir=\'/usr/lib\'%" \
libhandle/.libs/libhandle.la >$TMPROOT/usr/lib/libhandle.la
cp /libexec/{libdisk.a,libxcmd.a,libxfs.a,libxlog.a} $TMPROOT/usr/lib/
cd ..
rm -r xfsprogs*
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/xfsprogs-*.tar.*
cd xfsprogs*
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
autoconf
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
mkdir -p $TMPROOT/usr/lib64 $TMPROOT/lib64
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
USE_ARCH=$UARCH \
./configure --host=$TARGET \
--prefix=/ \
$ADDOPTIONS \
--mandir=/usr/share/man
make USE_ARCH=$UARCH
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/doc/xfsprogs \
USE_ARCH=$UARCH install
make -j $NUMCPU PKG_BIN_DIR=$TMPROOT/usr/bin \
PKG_LIB_DIR=$TMPROOT/usr/$LIBDIR \
PKG_SBIN_DIR=$TMPROOT/sbin \
PKG_SLIB_DIR=$TMPROOT/$LIBDIR \
PKG_INC_DIR=$TMPROOT/usr/include/xfs \
PKG_MAN_DIR=$TMPROOT/usr/share/man \
PKG_DOC_DIR=$TMPROOT/usr/doc/xfsprogs \
USE_ARCH=$UARCH install-dev
rm $TMPROOT/usr/$LIBDIR/libhandle.a
cp libhandle/.libs/libhandle.a $TMPROOT/usr/$LIBDIR
rm $TMPROOT/usr/lib/libhandle.la
sed -e "s%^libdir.*$%libdir=\'/usr/$LIBDIR\'%" \
libhandle/.libs/libhandle.la >$TMPROOT/usr/$LIBDIR/libhandle.la
cp /libexec/{libdisk.a,libxcmd.a,libxfs.a,libxlog.a} $TMPROOT/usr/$LIBDIR/
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
# rm $TMPROOT/usr/lib/libhandle.a
# cp libhandle/.libs/libhandle.a $TMPROOT/usr/lib
rm $TMPROOT/usr/lib/libhandle.la
sed -e "s%^libdir.*$%libdir=\'/usr/lib\'%" \
libhandle/.libs/libhandle.la >$TMPROOT/usr/lib/libhandle.la
if [ "$MK64BIT" == "true" ]; then
rm $TMPROOT/usr/lib64/libhandle.la
sed -e "s%^ibdir.*$%libdir=\'/usr/lib64\'%" \
libhandle/.libs/libhandle.la >$TMPROOT/usr/lib64/libhandle.la
fi
cp /libexec/{libdisk.a,libxcmd.a,libxfs.a,libxlog.a} $TMPROOT/usr/lib/
}

91
BaseBuild/Basesys/xinetd Normal file
View File

@ -0,0 +1,91 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive: www.xinetd.org
#Kurzbeschreibung:
#Extended inetd, der netzwerk Super Daemon, der support fuer
#verschiedenste Netzwerk protokolle auf tcp basis anbietet.
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Net
premk() {
echo "Nothing to do for premk()"
}
mk() {
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
./configure --host=$BUILDSYS \
--prefix=/usr
make -j $NUMCPU
< Makefile >Makefile.install sed -e "s/^prefix.*= /prefix = \$(DESTDIR)/g"
make -j $NUMCPU -f Makefile.install DESTDIR=$TMPROOT install
}
postmk() {
GetSVN Viitor_xinetd $TMPROOT
}

128
BaseBuild/Basesys/xz Normal file
View File

@ -0,0 +1,128 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL: svn://www.compuextreme.de/Viitor/V962/ViitorMake/BaseBuild/toolchain/grep $
#
#(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:
#Quelle der Source Archive:
#Kurzbeschreibung:
#
#
#Letzte Änderung von: $Author: kueller $
#Datum der letzten Änderung: $Date: 2008-05-02 11:00:40 +0000 (Fr, 02 Mai 2008) $
#Version der Datei: $Revision: 4218 $
#
#$Log$
#Revision 1.2 2006/08/16 12:58:34 kueller
#Umstellung CFLAGS -> BUILDOPTIONS. Macht ein saubereres optimieren des
#Systems moeglich
#
#Revision 1.1 2006/08/13 13:15:39 kueller
#Toolchain Module zum Build von CrossViitor Linux
#
#
SRCPATH=Base/Utilities
premk() {
mkdir ../build-xz
cd ../build-xz
}
mk32() {
CC="gcc ${BUILDOPTIONS32}" \
../xz*/configure --prefix=/usr \
--libdir=/lib
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
mv $TMPROOT/usr/bin/{xz,lzma,lzcat,unlzma,unxz,xzcat} $TMPROOT/bin
cd ../xz*
rm -r ../build-xz
mkdir ../build-xz
cd ../build-xz
}
mk() {
if [ $MK64BIT == "true" ]; then
ADDOPTIONS="--libdir=/lib64"
else
ADDOPTIONS="--libdir=/lib"
fi
CC="gcc ${BUILDOPTIONS}" \
CXX="g++ ${BUILDOPTIONS}" \
../xz*/configure $ADDOPTIONS \
--prefix=/usr
make -j $NUMCPU
make -j $NUMCPU DESTDIR=$TMPROOT install
mv $TMPROOT/usr/bin/{xz,lzma,lzcat,unlzma,unxz,xzcat} $TMPROOT/bin
}
postmk() {
cd ../xz*
rm -r ../build-xz
if [ ! -d $TMPROOT/usr/lib ]; then
mkdir -p $TMPROOT/usr/lib
fi
mv $TMPROOT/lib/pkgconfig $TMPROOT/usr/lib
if [ "$MK64BIT" == "true" ]; then
if [ ! -d $TMPROOT/usr/lib64 ]; then
mkdir -p $TMPROOT/usr/lib64
fi
mv $TMPROOT/lib64/pkgconfig $TMPROOT/usr/lib64
fi
}

108
BaseBuild/Basesys/yasm Normal file
View File

@ -0,0 +1,108 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: yasm
#Quelle der Source Archive: http://www.tortall.net/projects/yasm/wiki/Download
#Kurzbeschreibung:
#Ein weiterer Assembler, der von verschiedenen sourcepacketen
#zur Übersetzung benötigt wird.
#ersetzt den bekannten nasm mit support fuer 64Bit CPU's
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#Pfad zum Basis-Sourcetree :
SRCPATH=Base/Development
#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist
#SRCDIR=<PFAD>
premk() {
mkdir -p $TMPROOT/usr/{bin,man/man1,share}
CheckError "premk() failed !" 1
}
mk() {
# Hier die ./configure --build=$HOSTSYS --target=$HOSTSYS-Optionen eintragen.
# Den \ nicht vergessen !
CC="gcc ${BUILDOPTIONS}" \
./configure --host=$TARGET \
--prefix=/usr \
--exec-prefix=/usr \
--mandir=/usr/man
CheckError "Configurescript failed !" 1
# Make-Optionen eintragen
make -j $NUMCPU
CheckError "Makeprocess failed !" 1
# Make install Optionen eintragen
make -j $NUMCPU DESTDIR=$TMPROOT install
CheckError "Make install process failed !" 1
}
postmk() {
mv $TMPROOT/usr/man $TMPROOT/usr/share
cd $TMPROOT/usr/bin
ln -s yasm nasm
cd -
}

101
BaseBuild/Basesys/zip Normal file
View File

@ -0,0 +1,101 @@
#!/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$
#
#(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: zip
#Quelle der Source Archive: www.freshmeat.net
#Kurzbeschreibung:
#Zip Compressor (PKZIP Kompatibel)
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#
#Pfad zu Basis Source Tree eintragen!
SRCPATH=Base/Utilities
#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()"
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
make -j $NUMCPU \
-f unix/Makefile generic_gcc \
CC="gcc $BUILDOPTIONS" \
CXX="g++ $BUILDOPTIONS" \
make -j $NUMCPU -k \
-f unix/Makefile \
prefix=$TMPROOT/usr \
MANDIR=$TMPROOT/usr/share/man/man1 install
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
cp man/zip.1 $TMPROOT/usr/share/man/man1
}

142
BaseBuild/Basesys/zlib Normal file
View File

@ -0,0 +1,142 @@
#!/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$
#
#(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.
#
#Module zur Erstellung des Packetes: zlib
#Quelle der Source Archive: http://freshmeat.net/
#Kurzbeschreibung:
#Komprimierungslibrary mit Zip Algorythmuss
#wird von sehr vielen Packeten verwendet, und gehört
#inzwischen zur Basisausstattung eines jeden GNU/Linux Systems
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
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
#Patches unterdruecken. fuer Basesystem build wird in zlib ein fPIC patch
#benoetigt, der aber im spaeteren System so richtig fuer stimmung sorgt
#(segfault in diversen applikationen beim build, wenn diese libpng verwenden
#Leider crashed auch subversion wenn dieser patch aktiv ist (das
#repository wird zlib comprimiert uebertragen -> beim entpacken crachts dann)
#daher muss jetzt zlib im Basesys.dmk 2 mal gebaut werden, einmal mit, und
#einmal ohne patch
if [ -d /var/install/zlib* ]; then
(( MKPKG = $MKPKG | 128 ))
(( MKPKG = $MKPKG | 1 ))
(( MKPKG = $MKPKG | 2 ))
fi
premk() {
echo "Nothing to do for premk()"
}
mk32() {
CC="gcc -isystem /usr/include ${BUILDOPTIONS32}" \
CXX="g++ -isystem /usr/include ${BUILDOPTIONS32}" \
LDFLAGS="Wl,-rpath-link,/lib ${BUILDOPTIONS32}" \
./configure --prefix=/usr \
--shared
make -j $NUMCPU
make -j $NUMCPU prefix=$TMPROOT/usr install
cd ..
rm -r zlib-*
UnPack $MAKEDIR $LFSSOURCE/$SRCPATH/zlib-*.tar*
cd $MAKEDIR/zlib-*
mkdir -p $TMPROOT/lib
mv -v $TMPROOT/usr/lib/libz.so.* $TMPROOT/lib
ln -sf ../../lib/libz.so.1 $TMPROOT/usr/lib/libz.so
mv /usr/lib/libz.a $TMPROOT/usr/lib/libz.a
chmod -v 644 $TMPROOT/usr/lib/libz.a
make distclean
}
#Hier wird der Make Prozess der Sourcen definiert
mk() {
if [ "$MK64BIT" == "true" ]; then
ADDOPTIONS="--libdir=/usr/lib64"
ADDMAKE="libdir=$TMPROOT/usr/lib64"
fi
CC="gcc -isystem /usr/include ${BUILDOPTIONS} -fPIC" \
CXX="g++ -isystem /usr/include ${BUILDOPTIONS} -fPIC" \
./configure --prefix=/usr \
$ADDOPTIONS \
--shared
make -j $NUMCPU &&
make -j $NUMCPU libz.a &&
make -j $NUMCPU prefix=$TMPROOT/usr $ADDMAKE install
if [ "$MK64BIT" == "true" ]; then
make -j $NUMCPU libz.a
fi
mkdir -p $TMPROOT/$LIBDIR
mv libz.a $TMPROOT/usr/$LIBDIR
mv -v $TMPROOT/usr/$LIBDIR/libz.so.* $TMPROOT/$LIBDIR
ln -sf ../../$LIBDIR/libz.so.1 $TMPROOT/usr/$LIBDIR/libz.so
chmod -v 644 $TMPROOT/usr/$LIBDIR/libz.a
}
#Funktion wird nach Ablauf des Make Prozesses ausgeführt, und kann
#in $TMPROOT noch einiges korrigieren
postmk() {
echo "Nothing to do for postmk()"
}

View File

@ -0,0 +1,48 @@
#!/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: $Source$
#
#(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.
#
#Beschreibung:
# Initialisation fuer den statischen build prozess (PATH...)
#
#Aufrufparameter:
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
#$Log$
#Revision 1.1 2006/08/12 11:47:19 kueller
#.init fuer die crosschain initialisierung. Aenderungen am $CFLAGS management.
#fuer die meisten crosstools darf CFLAGS nicht gesetzt waeren. ein Globales
#Abschalten von CFLAGS ist aber unguenstig, da glibc sehr wohl optimiert
#uebersetzt werden muss. (das duerfte das sparc64 problem hoffentlich beheben).
#
#Revision 1.2 2003/09/22 16:35:13 kueller
#Einfuegen eines Viitor Linux Haeders. Herausname des Debugging/test codes
#
#
set +h
umask 022
LC_ALL=POSIX
PATH=/cross-tools/bin:$PATH
export LFS LC_ALL PATH

View File

@ -0,0 +1,102 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL$
#
#(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:
#Quelle der Source Archive:
#Kurzbeschreibung:
#
#
#Letzte Änderung von: $Author$
#Datum der letzten Änderung: $Date$
#Version der Datei: $Revision$
#
SRCPATH=Base/Utilities
(( MKPKG = $MKPKG | 8 ))
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 128 ))
premk() {
SrcPatch $MAKEDIR/binutils* $LFSSOURCE/$SRCPATH/binutils-*-posix*.patch*
SrcPatch $MAKEDIR/binutils* $LFSSOURCE/$SRCPATH/binutils-*-branch_update-*.patch*
SrcPatch $MAKEDIR/binutils* $LFSSOURCE/$SRCPATH/binutils-*-genscripts_multilib-*.patch*
}
mk() {
AR=ar \
AS=as \
../binutils*/configure --host=$HOSTSYS \
--target=$TARGET \
--prefix=/cross-tools \
--with-sysroot=${LFS} \
--with-lib-path=/tools/lib \
--disable-nls \
--enable-shared \
--enable-64-bit-bfd
make -j $NUMCPU configure-host
make -j $NUMCPU
make -j $NUMCPU install
cp -v ../binutils*/include/libiberty.h /tools/include
}
postmk() {
echo "Nothing to do for postmk()"
}

View File

@ -0,0 +1,9 @@
16 crosschain/linux-headers
16 crosschain/file
16 crosschain/ncurses
16 crosschain/gmp
16 crosschain/mpfr
16 crosschain/binutils
17 crosschain/gcc
16 crosschain/glibc
16 crosschain/gcc

147
BaseBuild/crosschain/eglibc Normal file
View File

@ -0,0 +1,147 @@
#!/bin/bash
#Framework, welches ein komplettes Linux System aus den Sourcen erstellt
#dieses Framework wird im CVS Repository
#:pserver:cvs.compuextreme.de:/Data/cvs zur Verfügung gestellt
#
#Lage dieser Datei im Archiv: $HeadURL: svn://www.compuextreme.de/Viitor/V962/ViitorMake/BaseBuild/crosschain/glibc $
#
#(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:
#Quelle der Source Archive:
#Kurzbeschreibung:
#
#
#Letzte Änderung von: $Author: kueller $
#Datum der letzten Änderung: $Date: 2009-05-20 13:53:37 +0000 (Mi, 20 Mai 2009) $
#Version der Datei: $Revision: 4731 $
#
SRCPATH=Base/Lib
(( MKPKG = $MKPKG | 8 ))
(( MKPKG = $MKPKG | 16 ))
(( MKPKG = $MKPKG | 128 ))
premk() {
ARCH=`echo $TARGET|cut -d"-" -f 1`
ARCH32=`echo $TARGET32|cut -d"-" -f 1`
cp -v Makeconfig{,.orig}
sed -e 's/-lgcc_eh//g' Makeconfig.orig >Makeconfig
mkdir ../build-eglibc
cd ../build-eglibc
}
mk32() {
cat > config.cache << "EOF"
libc_cv_forced_unwind=yes
libc_cv_c_cleanup=yes
libc_cv_gnu89_inline=yes
EOF
BUILD_CC="gcc" CC="${TARGET}-gcc ${BUILDOPTIONS32}" \
AR="${TARGET}-ar" \
RANLIB="${TARGET}-ranlib" \
CFLAGS="-march=$ARCH32 -mtune=generic -g -O2" \
../eglibc-*/configure --prefix=/tools \
--host=${TARGET32} \
--build=${HOSTSYS} \
--disable-profile \
--enable-add-ons \
--with-tls \
--enable-kernel=2.6.0 \
--with-__thread \
--with-binutils=/cross-tools/bin \
--with-headers=/tools/include \
--cache-file=config.cache
make -j $NUMCPU
make -j $NUMCPU install
cd ../eglibc*
rm -r ../build-eglibc/
mkdir ../build-eglibc
cd ../build-eglibc
}
mk() {
cat > config.cache << "EOF"
libc_cv_forced_unwind=yes
libc_cv_c_cleanup=yes
libc_cv_gnu89_inline=yes
EOF
if [ "$MK64BIT" == "true" ]; then
echo "slibdir=/tools/lib64" >>configparms
ADDOPTIONS="--libdir=/tools/lib64"
fi
BUILD_CC="gcc" CC="${TARGET}-gcc ${BUILDOPTIONS}" \
AR="${TARGET}-ar" \
RANLIB="${TARGET}-ranlib" \
../eglibc-*/configure --prefix=/tools \
--host=${TARGET} \
--build=${HOSTSYS} \
$ADDOPTIONS \
--disable-profile \
--enable-add-ons \
--with-tls \
--enable-kernel=2.6.0 \
--with-__thread \
--with-binutils=/cross-tools/bin \
--with-headers=/tools/include \
--cache-file=config.cache
make -j $NUMCPU
make -j $NUMCPU install
}
postmk() {
cd ../eglibc*
rm -r ../build-eglibc
}

86
BaseBuild/crosschain/file Normal file
View File

@ -0,0 +1,86 @@
#!/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://odin.dmz.lan/Viitor/V962/ViitorMake/BaseBuild/Basesys/file $
#
#(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.
#
#Module zur Erstellung des Packetes: file
#Quelle der Source Archive: ftp://ftp.gw.com/mirrors/pub/unix/file
#Kurzbeschreibung:
#file Befehl. file dient zur Identifikation des filetypes einer Datei.
#
#Letzte Änderung von: $Author: kueller $
#Datum der letzten Änderung: $Date: 2008-05-02 15:13:24 +0200 (Fr, 02 Mai 2008) $
#Version der Datei: $Revision: 4220 $
#
SRCPATH=Base/System
(( MKPKG = $MKPKG | 8 ))
(( MKPKG = $MKPKG | 16 ))
premk() {
echo "Nothing to do for premk()"
}
mk() {
./configure --prefix=/cross-tools
make -j $NUMCPU
make -j $NUMCPU install
}
postmk() {
echo "Nothing to do for postmk()"
}

Some files were not shown because too many files have changed in this diff Show More