123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- #!/bin/sh
- # the root of all, but using it is optional.
- CROSSTOOLSROOT=~/building
- CROSSTOOLSROOT=${CROSSTOOLSROOT%/}/
- # Some paths.
- # place where the 1.1.x CVS checkout is
- FPCCVS=${CROSSTOOLSROOT}cvs/devel/fpc
- # place where the script should store the cross-snapshot
- DESTDIR=${CROSSTOOLSROOT}/destination
- # place where cross archives (.a files) are stored
- BASELIBDIR=${CROSSTOOLSROOT}crosslibs
- # Place where logs are generated.
- LOGDIR=${CROSSTOOLSROOT}logs
- # Type of my mainprocessor.
- MYINTEL=i686
- EXTRAOPT=-gl
- # OSes and CPUs
- TARGETS_OS="linux freebsd linux win32 go32v2 netbsd openbsd solaris darwin"
- TARGETS_CPU="i386 powerpc sparc"
- ###########################################################################
- # don't edit below
- #
- #
- #
- #
- MYHOSTARCH=`uname -p | tr "[:upper:]" "[:lower:]"`
- MYHOSTOS=`uname -s | tr "[:upper:]" "[:lower:]"`
- echo HOST platform is ${MYHOSTARCH}-${MYHOSTOS}
- #
- #
- # force slash
- #
- FPCCVS=${FPCCVS%/}/
- DESTDIR=${DESTDIR%/}/
- LOGDIR=${LOGDIR%/}/
- BASELIBDIR=${BASELIBDIR%/}/
- #
- # BSD? -> ${MAKE}
- #
- MAKE=make
- case "$MYHOSTOS" in
- *BSD*) MAKE=gmake
- ;;
- *bsd*) MAKE=gmake
- ;;
- esac
- #
- # Setup dirs
- #
- mkdir -p ${DESTDIR}
- mkdir -p ${LOGDIR}
- #
- # Real build starts here
- #
- cd ${FPCCVS}
- FAILURES=""
- for CPU in $TARGETS_CPU; do
- # CPU xlat. translate from FPC cpu designation to binutil's;
- MCPU=${CPU}
- if [ "${CPU}" = "i386" ]; then
- MCPU=${MYINTEL}
- fi
- for OS in $TARGETS_OS; do
- # xlat for OS
- MOS=${OS}
- if [ "${OS}" = "sunos" ]; then
- MOS=solaris
- fi
- if [ "${OS}" = "win32" ]; then
- MOS=cygwin
- fi
- if [ "${OS}" = "go32v2" ]; then
- MOS=msdosdjgpp
- fi
- dothisbuild=1
- if [ "${CPU}" = "${MYHOSTARCH}" ]; then
- if [ "${OS}" = "${MYHOSTOS}" ]; then
- dothisbuild=0
- fi
- fi
- if [ $dothisbuild -eq 1 ]; then
- echo Building ${CPU}-${OS}
- if [ -f ${CROSSTOOLSROOT}bin/${MCPU}-${MOS}-as ]; then
- ${MAKE} clean all LIBDIR=${BASELIBDIR}/${MCPU}-${MOS} CROSSBINDIR=${CROSSTOOLSROOT}bin OS_TARGET=${OS} CPU_TARGET=${CPU} BINUTILSPREFIX=${MCPU}-${MOS}- OPT="-Xd -Xt ${EXTRAOPT}" > ${LOGDIR}snapbuild-${CPU}-${OS} 2>&1
- else
- echo can''t find binutils-${MCPU}-${OS} for FPC-${CPU}-${OS}
- fi
- if [ ! $? = 0 ]; then
- echo ${CPU}-${OS} FAILES
- FAILURES="${FAILURES} ${CPU}-${OS}"
- else
- mkdir -p ${DESTDIR}
- ${MAKE} install INSTALL_PREFIX=${DESTDIR} LIBDIR=${BASELIBDIR}/${MCPU}-${MOS} CROSSBINDIR=${CROSSTOOLSROOT}bin OS_TARGET=${OS} CPU_TARGET=${CPU} BINUTILSPREFIX=${MCPU}-${MOS}- OPT="-Xd -Xt ${EXTRAOPT}" > ${LOGDIR}snapinstalllog-${CPU}-${OS} 2>&1
- fi
- fi
- done;
- done;
- if [ -n ${FAILURES} ]; then
- echo platforms failed: ${FAILURES}
- fi
|