diff options
Diffstat (limited to 'scripts/buildalltar.in')
-rw-r--r-- | scripts/buildalltar.in | 348 |
1 files changed, 0 insertions, 348 deletions
diff --git a/scripts/buildalltar.in b/scripts/buildalltar.in deleted file mode 100644 index ba78a69d30..0000000000 --- a/scripts/buildalltar.in +++ /dev/null @@ -1,348 +0,0 @@ -#! /bin/sh -# -# Generate all the specs and then cycle through building them. -# - -RTEMS_DIR=`dirname $0` -CFG=./setup.cache -#dst=/usr/src/redhat/SPECS -dst=`pwd` -target=@target@ -rpm_cpu=i386 - -usage() -{ - echo "$0 [options] <target_alias>" - echo " options:" - echo " -b -- build binutils" - echo " -g -- build gcc/newlib" - echo " -d -- build gdb" - echo " -C HOST -- build canadian cross for HOST " - echo " -t -- enable test/debug mode" - echo " -cfg <setup.cache>" - echo " -o <rpm-spec-dir>" - exit 1 ; -} - -# -# Checks the status returned by executables and exits if it is non-zero. -# -check_fatal() -{ - if [ $1 -ne 0 ] ; then - shift - echo "ERROR: $*" >&2 - exit 1 - fi - #echo - #echo "End of $*" - #echo -n "Press return to continue> " - #echo - #read line -} - -testing=no -do_binutils=no -do_gccnewlib=no -do_gdb=no -cdn_cross=no - -while test $# -ge 1; do - case $1 in - -b) do_binutils=yes ; shift;; - -g) do_gccnewlib=yes ; shift;; - -d) do_gdb=yes ; shift;; - -t) do_test=yes ; shift;; - -cfg) - test $# -ge 2 || usage - shift - CFG=$1 - shift - ;; - -o) - test $# -ge 2 || usage - shift - dst=$1 - shift - ;; - -C) - test $# -ge 2 || usage - shift - build=$1 - shift - if ! test -x ${RTEMS_DIR}/../config.guess ; then - echo "Missing ${RTEMS_DIR}/../config.guess!" - exit 1 - fi - CDN_ARGS="--build=`${RTEMS_DIR}/../config.guess` --host=${build}" - cdn_cross=yes - ;; - -*) - echo "invalid option $1"; - usage - ;; - *) - TARGETS="${TARGETS} $1" - shift - ;; - esac -done - -if test ${do_binutils} = no -a ${do_gccnewlib} = no -a ${do_gdb} = no ; then - echo "You must request building binutils, gcc/newlib, or gdb." - usage -fi - - -# This is the full list .. some may not build at any given time. -#ALL_TARGETS="i386-rtems m68k-rtems \ -# m68k-rtemself mips-rtems \ -# powerpc-rtems sh-rtems sh-rtemself sparc-rtems" - -# This is the full buildable set. -if [ "X${TARGETS}" = "X" ] ; then - # do not include tic4x as primary targets - # do not include sh-elf or secondary targets - TARGETS="arm-rtems h8300-rtems i386-rtems \ - m68k-rtems mips-rtems powerpc-rtems \ - sh-rtems sh-rtemself sparc-rtems" -fi - -. $CFG - -# override the one from $CFG since it likely has a % in it to use the -# .rpmrc setting which we can't use -rpm_build_root=${HOME}/tmp - -binutils=${binutils_version} -gcc=${gcc3_version} -gdb=${gdb_version} -newlib=${gcc3newlib_version} -# also use binutils_rpm_release - -# -# Now get started -# -start=`date` - -echo PATH=$PATH - -if [ ${testing} = yes ] ; then - ECHO=echo -fi - -#installed_count=`rpm -q -g rtems | wc -l` -#if [ ${installed_count} -ne 0 ] ; then -# echo This script should be run with NO rtems RPMs installed. -# echo It appears that the following rtems RPMs are installed: -# echo -# rpm -qa | grep rtems -# echo -# echo Please remove these and restart this script. -# exit 1 -#fi - -#echo Copying specs files. -#if [ ${testing} = no ] ; then -# cd ${RTEMS_DIR} -# -# # ./configure || exit 1 -# make || exit 1 -# -# # Now generate all the specs -# for target in ${TARGETS} -# do -# tspecs=`find . -name "${target}*"` -# if [ "X${tspecs}" = "X" ] ; then -# echo RPM specifications were not generated for ${tspec}. -# exit 1 -# fi -# ${ECHO} cp -r ${tspecs} ${dst} -# done -#fi - -# clean up a bit before we start -cd ${dst} -test -d log || mkdir log - -if [ "X${rpm_build_root}" = "X" ] ; then - echo rpm_build_root NOT set! - exit 1 -fi - -CWD=`pwd` -test -d tarballs || mkdir tarballs - -OUT=${CWD}/tarballs - -# do all the tools -for target in ${TARGETS} -do - bintarfile=${OUT}/${target}-binutils-${binutils}-${binutils_rpm_release}.tar - if [ ${do_binutils} = yes ] ; then - logfile=${CWD}/log/${target}-binutils - # this part is for tar.bz2 - cd ${CWD} - if [ ! -d binutils-${binutils} ] ; then - echo Could not find binutils-${binutils}! - exit 1 - fi - rm -rf b-${target}-bin - mkdir b-${target}-bin - cd b-${target}-bin - echo "Building binutils-${binutils} for ${target}" - ../binutils-${binutils}/configure ${CDN_ARGS} --target=${target} \ - --verbose --prefix=/opt/rtems >${logfile} 2>&1 - check_fatal $? "binutils configure" - - make all >>${logfile} 2>&1 - check_fatal $? "make all" - - make info >>${logfile} 2>&1 - check_fatal $? "make info" - - make prefix=${rpm_build_root}/opt/rtems install >>${logfile} 2>&1 - check_fatal $? "make install" - - make prefix=${rpm_build_root}/opt/rtems install-info >>${logfile} 2>&1 - check_fatal $? "make install-info" - - cd ${rpm_build_root} - tar cjf ${bintarfile}.bz2 opt - cd ${CWD} - rm -rf b-${target}-bin - ${ECHO} rm -rf ${rpm_build_root}/opt - rm -rf ${rpm_build_root}/opt - else - echo Skipping binutils for ${target} - fi - - # - # build gcc/newlib - # - - if [ ${do_gccnewlib} = yes ] ; then - logfile=${CWD}/log/${target}-gccnewlib - # now build gcc/newlib - # this part is for tar.bz2 - - gcctarfile=${OUT}/${target}-gcc-${gcc}-newlib-${newlib}-${gccnewlib_rpm_release}.tar - if [ ${cdn_cross} = "no" ] ; then - bintarfile=${dst}/binaries/binutils-${binutils}-${binutils_rpm_release}/${target}-binutils-${binutils}-${binutils_rpm_release}.tar - rm -rf ${rpm_build_root}/opt/* - tar xjf ${bintarfile}.bz2 - fi - - cd ${CWD} - if [ ! -d gcc-${gcc} ] ; then - echo Could not find gcc-${gcc}! - exit 1 - fi - if [ ! -d gcc-${gcc}/newlib ] ; then - echo Could not find gcc-${gcc}/newlib! - exit 1 - fi - rm -rf b-${target}-gccnewlib - mkdir b-${target}-gccnewlib - cd b-${target}-gccnewlib - echo "Building gcc-${gcc} for ${target}" - ../gcc-${gcc}/configure ${CDN_ARGS} --target=${target} \ - --with-gnu-as --with-gnu-ld --with-newlib --verbose \ - --with-system-zlib --disable-nls \ - --enable-version-specific-runtime-libs \ - --enable-threads=rtems \ - --prefix=/opt/rtems '--enable-languages=c,c++' >${logfile} 2>&1 - check_fatal $? "gcc configure" - - make all >>${logfile} 2>&1 - check_fatal $? "make all" - - make info >>${logfile} 2>&1 - check_fatal $? "make info" - - make prefix=${rpm_build_root}/opt/rtems install >>${logfile} 2>&1 - check_fatal $? "make install" - - cd ${target}/newlib - make prefix=${rpm_build_root}/opt/rtems install-info >>${logfile} 2>&1 - check_fatal $? "newlib make install-info" - - cd ${rpm_build_root} - tar cjf ${gcctarfile}.bz2 opt - cd ${CWD} - rm -rf ${rpm_build_root}/opt - rm -rf ${rpm_build_root}/opt/rtems - rm -rf b-${target}-gccnewlib - else - echo Skipping gcc/newlib for ${target} - fi - - # - # build gdb - # - - if [ ${do_gdb} = yes ] ; then - # now build gdb - gdbtarfile=${OUT}/${target}-gdb-${gdb}-${gdb_rpm_release}.tar - logfile=${CWD}/log/${target}-gdb - - # this part is for tar.bz2 - - if [ ! -d gdb-${gdb} ] ; then - echo Could not find gdb-${gdb}! - exit 1 - fi - mkdir b-${target}-gdb - cd b-${target}-gdb - case ${target} in - arm* | d10v* | d30v* | erc32* | fr30* | h8300* | h8500* | \ - m32r* | mcore* | mips* | mn10200* | mn10300* | sh* | sparc*| v850* | \ - w65* | z8k*) - extra_configure_arguments="--enable-sim" - ;; - powerpc*) - extra_configure_arguments="--enable-sim --enable-sim-powerpc --enable-sim-timebase --enable-sim-hardware" - # Enabling this causes the program image to be huge and causes - # some gcc/hosts combinations to run out of memory. - # --enable-sim-inline - ;; - *) - ;; -esac - echo "Building gdb-${gdb}/configure ${CDN_ARGS} --target=${target}" - ../gdb-${gdb}/configure ${CDN_ARGS} --target=${target} \ - ${extra_configure_arguments} --verbose --prefix=/opt/rtems >${logfile} 2>&1 - check_fatal $? "make info" - - make all >>${logfile} 2>&1 - check_fatal $? "make all" - - make info >>${logfile} 2>&1 - check_fatal $? "make info" - - make prefix=${rpm_build_root}/opt/rtems install >>${logfile} 2>&1 - check_fatal $? "make install" - - make prefix=${rpm_build_root}/opt/rtems install-info >>${logfile} 2>&1 - check_fatal $? "make install-info" - - cd ${rpm_build_root} - tar cjf ${gdbtarfile}.bz2 opt - cd ${CWD} - ${ECHO} rm -rf ${rpm_build_root}/opt - rm -rf ${rpm_build_root}/opt/rtems - rm -rf b-${target}-gdb - else - echo Skipping gdb for ${target} - fi - -done - -# Now we are done - -stop=`date` - -echo -echo "Started: " $start -echo "Finished: " $stop -exit 0 |