diff --git a/BaseBuild/toolchain/bash b/BaseBuild/toolchain/bash index ccb5e5b..06a2e3e 100644 --- a/BaseBuild/toolchain/bash +++ b/BaseBuild/toolchain/bash @@ -104,8 +104,8 @@ EOF mk() { CC="${CC} ${BUILDOPTIONS}" \ CXX="${CXX} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools \ --without-bash-malloc \ --cache-file=config.cache diff --git a/BaseBuild/toolchain/binutils b/BaseBuild/toolchain/binutils index 85ab73a..05f3a60 100644 --- a/BaseBuild/toolchain/binutils +++ b/BaseBuild/toolchain/binutils @@ -83,13 +83,10 @@ 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* - + mkdir ../build-binutils + cd ../build-binutils } mk() { @@ -99,16 +96,17 @@ mk() { ADDOPTIONS="--with-lib-path=/tools/lib" fi CC="${CC} ${BUILDOPTIONS}" \ - ../binutils*/configure --host=$TARGET \ - --target=$TARGET \ - --build=$HOSTSYS \ - --prefix=/tools \ - --libdir=/tools/$LIBDIR \ - $ADDOPTIONS \ - --disable-nls \ - --enable-shared \ - --enable-64-bit-bfd + ../binutils*/configure --host=${TARGET} \ + --target=${TARGET} \ + --build=${HOSTSYS} \ + --prefix=/tools \ + --libdir=/tools/${LIBDIR} \ + ${ADDOPTIONS} \ + --disable-nls \ + --enable-shared \ + --enable-64-bit-bfd make -j $NUMCPU configure-host + sed -i "s/\(^MAKEINFO = \).*$/\1\/usr\/bin\/makeinfo/" Makefile make -j $NUMCPU make -j $NUMCPU install } diff --git a/BaseBuild/toolchain/bison b/BaseBuild/toolchain/bison new file mode 100644 index 0000000..9cf473a --- /dev/null +++ b/BaseBuild/toolchain/bison @@ -0,0 +1,99 @@ +#!/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://svn.compuextreme.de/Viitor/V963/ViitorMake/BaseBuild/toolchain/bzip2 $ +# +#(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-03-26 08:46:49 +0100 (Do, 26. Mär 2009) $ +#Version der Datei: $Revision: 4557 $ +# +#$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:38 kueller +#Toolchain Module zum Build von CrossViitor Linux +# +# + +SRCPATH=Base/Development +(( MKPKG = $MKPKG | 8 )) +(( MKPKG = $MKPKG | 16 )) + +premk() { + echo "Nothing to do for premk()" +} + +mk() { + CC="${CC} ${BUILDOPTIONS}" \ + ./configure --prefix=/tools \ + --build=${HOSTSYS} \ + --host=${TARGET} + make -j $NUMCPU + make -j $NUMCPU install +} + +postmk() { + echo "Nothing to to for postmk()" +} diff --git a/BaseBuild/toolchain/cloog-ppl b/BaseBuild/toolchain/cloog-ppl new file mode 100644 index 0000000..abb8524 --- /dev/null +++ b/BaseBuild/toolchain/cloog-ppl @@ -0,0 +1,109 @@ +#!/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: cloog-ppl +#Quelle der Source Archive: http://cloog.org +#Kurzbeschreibung: +#Polyhedra support Funktionen. +# +#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 + +(( MKPKG = $MKPKG | 8 )) +(( MKPKG = $MKPKG | 16 )) + +#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist +#SRCDIR= + + +premk() { + cp -v configure{,.orig} + sed -e "/LD_LIBRARY_PATH=/d" \ + configure.orig >configure +} + +mk() { + CC="${CC} ${BUILDOPTIONS}" \ + ./configure --prefix=/tools \ + --build=${HOSTSYS} \ + --host=${TARGET} \ + --with-bits=gmp \ + --libdir=/tools/${LIBDIR} \ + --enable-shared \ + --with-gmp=/tools \ + --with-ppl=/tools + + CheckError "Configurescript failed !" 1 + + # Make-Optionen eintragen + make -j $NUMCPU + CheckError "Makeprocess failed !" 1 + + # Make install Optionen eintragen + make -j $NUMCPU install + CheckError "Make install process failed !" 1 +} + +postmk() { + echo "Nothing to do for postmk()" +} diff --git a/BaseBuild/toolchain/coreutils b/BaseBuild/toolchain/coreutils index 6e9dccd..bc98745 100644 --- a/BaseBuild/toolchain/coreutils +++ b/BaseBuild/toolchain/coreutils @@ -83,9 +83,11 @@ SRCPATH=Base/System (( MKPKG = $MKPKG | 128 )) premk() { - cp -v src/Makefile.in{,.orig} - sed -e "/binPROGRAMS_INSTALL=/s:./ginstall:install:" src/Makefile.in.orig > src/Makefile.in - echo "fu_cv_sys_stat_statfs2_bsize=yes" >config.cache + touch man/uname.1 man/hostname.1 + cat > config.cache << EOF +fu_cv_sys_stat_statfs2_bsize=yes +gl_cv_func_working_mkstemp=yes +EOF } mk() { @@ -93,6 +95,7 @@ mk() { ./configure --host=$TARGET \ --build=$HOSTSYS \ --prefix=/tools \ + --enable-install-program=hostname \ --cache-file=config.cache make -j $NUMCPU make -j $NUMCPU install diff --git a/BaseBuild/toolchain/diffutils b/BaseBuild/toolchain/diffutils index 8d3469b..a107968 100644 --- a/BaseBuild/toolchain/diffutils +++ b/BaseBuild/toolchain/diffutils @@ -87,8 +87,8 @@ premk() { mk() { CC="${CC} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools make -j $NUMCPU make -j $NUMCPU install diff --git a/BaseBuild/toolchain/file b/BaseBuild/toolchain/file index 5707694..7d6d2cd 100644 --- a/BaseBuild/toolchain/file +++ b/BaseBuild/toolchain/file @@ -76,13 +76,11 @@ premk() { } mk() { - if [ "$MK64BIT" == "true" ]; then - ADDOPTIONS="--libdir=/tools/lib64" - fi - ../file*/configure --host=$TARGET \ - --build=$HOSTSYS \ - $ADDOPTIONS \ - --prefix=/tools + CC="${CC} ${BUILDOPTIONS} " + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ + --libdir=/tools/${LIBDIR} \ + --prefix=/tools make -j $NUMCPU make -j $NUMCPU install } diff --git a/BaseBuild/toolchain/findutils b/BaseBuild/toolchain/findutils index 34d5f54..2d13e08 100644 --- a/BaseBuild/toolchain/findutils +++ b/BaseBuild/toolchain/findutils @@ -88,8 +88,8 @@ premk() { mk() { CC="${CC} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools \ --cache-file=config.cache make -j $NUMCPU diff --git a/BaseBuild/toolchain/flex b/BaseBuild/toolchain/flex new file mode 100644 index 0000000..749e1b4 --- /dev/null +++ b/BaseBuild/toolchain/flex @@ -0,0 +1,93 @@ +#!/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: flex +#Quelle der Source Archive: http://flex.sourceforge.net +#Kurzbeschreibung: +#code generator +# +#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/Development + +(( MKPKG = $MKPKG | 8 )) +(( MKPKG = $MKPKG | 16 )) + +premk() { + cat > config.cache << EOF +ac_cv_func_malloc_0_nonnull=yes +ac_cv_func_realloc_0_nonnull=yes +EOF +} + +mk() { + CC="${CC} ${BUILDOPTIONS} " + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ + --prefix=/tools \ + --cache-file=config.cache + make -j $NUMCPU + make -j $NUMCPU install +} + +postmk() { + echo "Nothing to do for postmk()" +} diff --git a/BaseBuild/toolchain/gawk b/BaseBuild/toolchain/gawk index b84ee5f..a84555c 100644 --- a/BaseBuild/toolchain/gawk +++ b/BaseBuild/toolchain/gawk @@ -87,8 +87,8 @@ premk() { mk() { CC="${CC} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools make -j $NUMCPU make -j $NUMCPU install diff --git a/BaseBuild/toolchain/gcc b/BaseBuild/toolchain/gcc index 857077e..a8c8a4e 100644 --- a/BaseBuild/toolchain/gcc +++ b/BaseBuild/toolchain/gcc @@ -80,12 +80,18 @@ SRCPATH=Base/Development (( MKPKG = $MKPKG | 8 )) (( MKPKG = $MKPKG | 16 )) -(( MKPKG = $MKPKG | 128 )) premk() { - SrcPatch $MAKEDIR/gcc* $LFSSOURCE/$SRCPATH/gcc-*-branch_update-*.patch* - SrcPatch $MAKEDIR/gcc* $LFSSOURCE/$SRCPATH/gcc-*-specs-*.patch* - SrcPatch $MAKEDIR/gcc* $LFSSOURCE/$SRCPATH/gcc-*-posix-*.patch* + if [ "$ARCH" == "sparc64" ]; then + OUTFILE="gcc/config/sparc/linux.h gcc/config/sparc/linux64.h" + else + OUTFILE="gcc/config/linux.h" + fi + for i in $OUTFILE; do + echo -en '#undef STANDARD_INCLUDE_DIR\n#define STANDARD_INCLUDE_DIR "/tools/include/"\n\n' >> $i + echo -en '\n#undef STANDARD_STARTFILE_PREFIX_1\n#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"\n' >> $i + echo -en '\n#undef STANDARD_STARTFILE_PREFIX_2\n#define STANDARD_STARTFILE_PREFIX_2 ""\n' >> $i + done cp -v gcc/Makefile.in{,.orig} sed -e 's@\(^NATIVE_SYSTEM_HEADER_DIR =\).*@\1 /tools/include@g' \ gcc/Makefile.in.orig >gcc/Makefile.in @@ -94,31 +100,28 @@ premk() { } mk() { - if [ "$MK64BIT" == "true" ]; then - ADDCONFIGURE="--libdir=/tools/lib64" - fi CC="${CC} ${BUILDOPTIONS}" \ CXX="${CXX} ${BUILDOPTIONS}" \ - ../gcc*/configure --host=$TARGET \ - --target=$TARGET \ - --build=$HOSTSYS \ - --prefix=/tools \ - $ADDCONFIGURE \ - --with-local-prefix=/tools \ - --enable-long-long \ - --enable-c99 \ - --enable-shared \ - --enable-threads=posix \ - --enable-__cxa_atexit \ - --disable-nls \ - --enable-languages=c,c++ \ - --disable-libstdcxx-pch - make -j $NUMCPU AS_FOR_TARGET=${AS} LD_FOR_TARGET=${LD} + ../gcc*/configure --prefix=/tools \ + --libdir=/tools/${LIBDIR} \ + --build=$HOSTSYS \ + --host=$TARGET \ + --target=$TARGET \ + --with-local-prefix=/tools \ + --enable-long-long \ + --enable-c99 \ + --enable-shared \ + --enable-threads=posix \ + --enable-__cxa_atexit \ + --disable-nls \ + --enable-languages=c,c++ \ + --disable-libstdcxx-pch + sed -i "/^HOST_\(GMP\|PPL\|CLOOG\)\(LIBS\|INC\)/s:-[IL]/\(lib\|include\)::" Makefile + make -j $NUMCPU AS_FOR_TARGET="${AS}" LD_FOR_TARGET="${LD}" make -j $NUMCPU install } postmk() { - #ln -sv gcc /tools/bin/cc cd ../gcc* rm -r ../build-gcc } diff --git a/BaseBuild/toolchain/gettext b/BaseBuild/toolchain/gettext index 0463639..4e9e850 100644 --- a/BaseBuild/toolchain/gettext +++ b/BaseBuild/toolchain/gettext @@ -83,14 +83,14 @@ SRCPATH=Base/System premk() { cd gettext-tools - echo "gl_cv_func_wcwidth_works=yes" >>config.cache + echo "gl_cv_func_wcwidth_works=yes" >config.cache } mk() { CC="${CC} ${BUILDOPTIONS}" \ CXX="${CXX} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools \ --disable-shared \ --cache-file=config.cache diff --git a/BaseBuild/toolchain/gmp b/BaseBuild/toolchain/gmp index 29be6dd..e6665dd 100644 --- a/BaseBuild/toolchain/gmp +++ b/BaseBuild/toolchain/gmp @@ -82,15 +82,15 @@ premk() { } mk() { + HOST_CC=gcc \ + CPPFLAGS=-fexceptions \ CC="${CC} ${BUILDOPTIONS}" \ CXX="${CXX} ${BUILDOPTIONS}" \ - sed -i "s/ac_compiler -V/ac_compiler -v/" configure ./configure --build=$HOSTSYS \ --host=$TARGET \ --prefix=/tools \ --libdir=/tools/$LIBDIR \ - --enable-cxx \ - --enable-mpbsd + --enable-cxx CheckError "Configurescript failed !" 1 diff --git a/BaseBuild/toolchain/grep b/BaseBuild/toolchain/grep index 5dc5cc3..af0f057 100644 --- a/BaseBuild/toolchain/grep +++ b/BaseBuild/toolchain/grep @@ -80,17 +80,23 @@ SRCPATH=Base/Utilities (( MKPKG = $MKPKG | 8 )) (( MKPKG = $MKPKG | 16 )) +(( MKPKG = $MKPKG | 128 )) premk() { - echo "Nothing to do for premk()" + cat > config.cache << EOF +ac_cv_func_malloc_0_nonnull=yes +ac_cv_func_realloc_0_nonnull=yes +EOF } mk() { CC="${CC} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools \ - --disable-perl-regexp + --disable-perl-regexp \ + --without-included-regex \ + --cache-file=config.cache make -j $NUMCPU make -j $NUMCPU install } diff --git a/BaseBuild/toolchain/gzip b/BaseBuild/toolchain/gzip index 2d18530..a84555c 100644 --- a/BaseBuild/toolchain/gzip +++ b/BaseBuild/toolchain/gzip @@ -82,13 +82,13 @@ SRCPATH=Base/Utilities (( MKPKG = $MKPKG | 16 )) premk() { - sed -i "s/futimens/gl_&/" $(grep -lr futimens *) + echo "Nothing to do for premk()" } mk() { CC="${CC} ${BUILDOPTIONS}" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools make -j $NUMCPU make -j $NUMCPU install diff --git a/BaseBuild/toolchain/mpc b/BaseBuild/toolchain/mpc new file mode 100644 index 0000000..27cf911 --- /dev/null +++ b/BaseBuild/toolchain/mpc @@ -0,0 +1,104 @@ +#!/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: mpc +#Quelle der Source Archive: http://www.multiprecision.org/ +#Kurzbeschreibung: +#Library zur Berechnung von Komplexen Zahlen mit hoher präzition und +#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 + +(( MKPKG = $MKPKG | 8 )) +(( MKPKG = $MKPKG | 16 )) + +#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist +#SRCDIR= + + +premk() { + echo "Nothing to do for premk()" +} + +mk() { + CC="${CC} ${BUILDOPTIONS}" \ + ./configure --prefix=/tools \ + --build=${HOSTSYS} \ + --host=${TARGET} \ + --libdir=/tools/$LIBDIR + + CheckError "Configurescript failed !" 1 + + # Make-Optionen eintragen + make -j $NUMCPU + CheckError "Makeprocess failed !" 1 + + # Make install Optionen eintragen + make -j $NUMCPU install + CheckError "Make install process failed !" 1 +} + +postmk() { + echo "Nothing to do for postmk()" +} diff --git a/BaseBuild/toolchain/mpfr b/BaseBuild/toolchain/mpfr index b5e2ac7..fe4be2c 100644 --- a/BaseBuild/toolchain/mpfr +++ b/BaseBuild/toolchain/mpfr @@ -85,9 +85,9 @@ mk() { CXX="${CC} ${BUILDOPTIONS}" \ ./configure --host=$TARGET \ --build=$HOSTSYS \ - --prefix=/cross-tools \ + --prefix=/tools \ --libdir=/tools/$LIBDIR \ - --enable-shared \ + --enable-shared CheckError "Configurescript failed !" 1 @@ -101,5 +101,6 @@ mk() { } postmk() { - cp *.h /tools/include + #cp *.h /tools/include + echo "Nothing to do for premk()" } diff --git a/BaseBuild/toolchain/ncurses b/BaseBuild/toolchain/ncurses index 1217b23..888cafc 100644 --- a/BaseBuild/toolchain/ncurses +++ b/BaseBuild/toolchain/ncurses @@ -88,25 +88,23 @@ SRCPATH=Base/Lib (( MKPKG = $MKPKG | 8 )) (( MKPKG = $MKPKG | 16 )) +(( MKPKG = $MKPKG | 128 )) premk() { - echo "Nothing to do for premk()" + SrcPatch $MAKEDIR/ncurses* $LFSSOURCE/$SRCPATH/ncurses-*-bash_fix-*.patch.* } mk() { - if [ "$MK64BIT" == "true" ]; then - ADDOPTIONS="--libdir=/tools/lib64" - fi - CC="$CC $BUILDOPTIONS" \ - CXX="$CXX $BUILDOPTIONS" \ - ./configure --host=$TARGET \ - --build=$HOSTSYS \ + CC="${CC} ${BUILDOPTIONS}" \ + CXX="${CXX} ${BUILDOPTIONS}" \ + ./configure --host=${TARGET} \ + --build=${HOSTSYS} \ --prefix=/tools \ --with-shared \ - $ADDOPTIONS \ --without-debug \ --without-ada \ --enable-overwrite \ + --libdir=/tools/${LIBDIR} \ --with-build-cc=gcc make make install diff --git a/BaseBuild/toolchain/ppl b/BaseBuild/toolchain/ppl new file mode 100644 index 0000000..36c167c --- /dev/null +++ b/BaseBuild/toolchain/ppl @@ -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: 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: ppl +#Quelle der Source Archive: http://www.cs.unipr.it/ppl +#Kurzbeschreibung: +#Parma Polyhedra Library +#Numerische Abstractionen speziell für die analyse und abstraktion +#von komplexen Systemen +# +#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 + +(( MKPKG = $MKPKG | 8 )) +(( MKPKG = $MKPKG | 16 )) + +#Wenn das usgepackte Verzeichnis vom Paketnamen unterschiedlich ist +#SRCDIR= + + +premk() { + sed -i "s/__GMP_BITS_PER_MP_LIMB/GMP_LIMB_BITS/g" configure +} + +mk() { + CC="${CC} ${BUILDOPTIONS}" \ + ./configure --prefix=/tools \ + --build=${HOSTSYS} \ + --host=${TARGET} \ + --enable-interfaces="c,cxx" \ + --libdir=/tools/${LIBDIR} \ + --enable-shared \ + --disable-optimization \ + --with-libgmp-prefix=/tools \ + --with-libgmpxx-prefix=/tools + + CheckError "Configurescript failed !" 1 + + echo '#define PPL_GMP_SUPPORTS_EXCEPTIONS 1' >> confdefs.h + # Make-Optionen eintragen + make -j $NUMCPU + CheckError "Makeprocess failed !" 1 + + # Make install Optionen eintragen + make -j $NUMCPU install + CheckError "Make install process failed !" 1 +} + +postmk() { + echo "Nothing to do for postmk()" +} diff --git a/BaseBuild/toolchain/toolchain.dmk b/BaseBuild/toolchain/toolchain.dmk index 2ef3ca9..852a5b0 100644 --- a/BaseBuild/toolchain/toolchain.dmk +++ b/BaseBuild/toolchain/toolchain.dmk @@ -1,5 +1,8 @@ 16 toolchain/gmp 16 toolchain/mpfr +16 toolchain/mpc +16 toolchain/ppl +16 toolchain/cloog-ppl 16 toolchain/zlib 16 toolchain/binutils 16 toolchain/gcc @@ -10,6 +13,7 @@ 16 toolchain/diffutils 16 toolchain/findutils 16 toolchain/file +16 toolchain/flex 16 toolchain/gawk 16 toolchain/gettext 16 toolchain/grep diff --git a/BaseBuild/toolchain/zlib b/BaseBuild/toolchain/zlib index d8aebff..84ce2de 100644 --- a/BaseBuild/toolchain/zlib +++ b/BaseBuild/toolchain/zlib @@ -85,25 +85,16 @@ SRCPATH=Base/Lib (( MKPKG = $MKPKG | 8 )) (( MKPKG = $MKPKG | 16 )) -(( MKPKG = $MKPKG | 128 )) - premk() { echo "nothing to do for premk()" } #Hier wird der Make Prozess der Sourcen definiert mk() { - if [ "$MK64BIT" == "true" ]; then - ADDOPTIONS="--libdir=/tools/lib64" - fi CC="${CC} ${BUILDOPTIONS}" \ CXX="${CXX} ${BUILDOPTIONS}" \ ./configure --prefix=/tools \ - $ADDOPTIONS \ - --shared - if [ "$MK64BIT" == "true" ]; then - sed -i -e "s/\(linux-gnu-ar\)/\1 -rc/" Makefile - fi + --libdir=/tools/${LIBDIR} make -j $NUMCPU && make -j $NUMCPU install }