no longer in use
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@12898 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
212
tools/build.sh
212
tools/build.sh
@@ -1,212 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Build many combinations of kth-krb/heimdal/openssl
|
||||
#
|
||||
# $Id$
|
||||
|
||||
opt_n= #:
|
||||
make_f= #-j
|
||||
|
||||
heimdal_versions="0.5.2 0.6pre4"
|
||||
krb4_versions="1.2.2"
|
||||
openssl_versions="0.9.6i 0.9.7a 0.9.7b"
|
||||
|
||||
make_check_version=".*heimdal-0.6.*"
|
||||
|
||||
# 0.5 dont eat 0.9.7
|
||||
dont_build="openssl-0.9.7.*heimdal-0.5.*"
|
||||
# 1.2 dont eat 0.9.7
|
||||
dont_build="openssl-0.9.7.*krb4-1.2.* ${dont_build}"
|
||||
#yacc problems
|
||||
dont_build="openssl-0.9.6.*heimdal-0.5.*osf4.* ${dont_build}"
|
||||
#local openssl 09.7 and broken kuser/Makefile.am
|
||||
dont_build="openssl-0.9.6.*heimdal-0.5.*freebsd4.8.* ${dont_build}"
|
||||
failed=
|
||||
|
||||
# Allow override
|
||||
for a in $HOME . /etc ; do
|
||||
[ -f $a/.heimdal-build ] && . $a/.heimdal-build
|
||||
done
|
||||
|
||||
targetdir=${targetdir:-/scratch/heimdal-test}
|
||||
logfile="${targetdir}/buildlog"
|
||||
|
||||
distdirs="${distdirs} /afs/su.se/home/l/h/lha/Public/openssl"
|
||||
distdirs="${distdirs} /afs/pdc.kth.se/public/ftp/pub/heimdal/src"
|
||||
distdirs="${distdirs} /afs/pdc.kth.se/public/ftp/pub/heimdal/src/snapshots"
|
||||
distdirs="${distdirs} /afs/pdc.kth.se/public/ftp/pub/krb/src"
|
||||
|
||||
|
||||
logprint () {
|
||||
d=`date '+%Y-%m-%d %H:%M:%S'`
|
||||
echo "${d}: $*"
|
||||
echo "${d}: --- $*" >> ${logfile}
|
||||
}
|
||||
|
||||
logerror () {
|
||||
echo "$*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
find_unzip_prog () {
|
||||
unzip_prog=
|
||||
oldIFS="$IFS"
|
||||
IFS=:
|
||||
set -- $PATH
|
||||
IFS="$oldIFS"
|
||||
for a in $* ; do
|
||||
if [ -x $a/gzip ] ; then
|
||||
unzip_prog="$a/gzip -dc"
|
||||
break
|
||||
elif [ -x $a/gunzip ] ; then
|
||||
unzip_prog="$a/gunzip -c"
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ "$unzip_prog" = "" ] && logerror failed to find unzip program
|
||||
}
|
||||
|
||||
find_canon_name () {
|
||||
canon_name=
|
||||
for a in ${distdirs} ; do
|
||||
if [ -f $a/config.guess ] ; then
|
||||
canon_name=`$a/config.guess`
|
||||
fi
|
||||
if [ "${canon_name}" != "" ] ; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
[ "${canon_name}" = "" ] && logerror "cant find config.guess"
|
||||
}
|
||||
|
||||
do_check_p () {
|
||||
eval check_var=\$"$1"
|
||||
for a in ${check_var} ; do
|
||||
expr "$2${canon_name}" : "${a}" > /dev/null 2>&1 && return 1
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
unpack_tar () {
|
||||
for a in ${distdirs} ; do
|
||||
if [ -f $a/$1 ] ; then
|
||||
${opt_n} ${unzip_prog} ${a}/$1 | ${opt_n} tar xf -
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
logerror "did not find $1"
|
||||
}
|
||||
|
||||
build () {
|
||||
real_ver=$1
|
||||
prog=$2
|
||||
ver=$3
|
||||
confprog=$4
|
||||
checks=$5
|
||||
pv=${prog}-${ver}
|
||||
mkdir tmp || logerror "failed to build tmpdir"
|
||||
cd tmp || logerror "failed to change dir to tmpdir"
|
||||
do_check_p dont_build ${real_ver} || \
|
||||
{ cd .. ; rmdir tmp ; logprint "not building $1" && return 0 ; }
|
||||
cd .. || logerror "failed to change back from tmpdir"
|
||||
rmdir tmp || logerror "failed to remove tmpdir"
|
||||
logprint "preparing for ${pv}"
|
||||
${opt_n} rm -rf ${targetdir}/${prog}-${ver}
|
||||
${opt_n} rm -rf ${prog}-${ver}
|
||||
unpack_tar ${pv}.tar.gz
|
||||
${opt_n} cd ${pv} || logerror directory ${pv} not there
|
||||
logprint "configure ${prog} ${ver} (${confprog})"
|
||||
${opt_n} ./${confprog} \
|
||||
--prefix=${targetdir}/${pv} >> ${logfile} 2>&1 || \
|
||||
{ logprint failed to configure ${pv} ; return 1 ; }
|
||||
logprint "make ${prog} ${ver}"
|
||||
${opt_n} make ${make_f} >> ${logfile} 2>&1 || \
|
||||
{ logprint failed to make ${pv} ; return 1 ; }
|
||||
${opt_n} make install >> ${logfile} 2>&1 || \
|
||||
{ logprint failed to install ${pv} ; return 1 ; }
|
||||
do_check_p make_check_version ${real_ver} || \
|
||||
{ ${opt_n} make check >> ${logfile} 2>&1 || return 1 ; }
|
||||
${opt_n} cd ..
|
||||
[ "${checks}" != "" ] && ${opt_n} ${checks} >> ${logfile} 2>&1
|
||||
return 0
|
||||
}
|
||||
|
||||
find_canon_name
|
||||
|
||||
logprint using host `hostname`
|
||||
logprint `uname -a`
|
||||
logprint canonical name ${canon_name}
|
||||
|
||||
logprint clearing logfile
|
||||
> ${logfile}
|
||||
|
||||
find_unzip_prog
|
||||
|
||||
logprint using target dir ${targetdir}
|
||||
mkdir -p ${targetdir}/src
|
||||
cd ${targetdir}/src || exit 1
|
||||
rm -rf heimdal* openssl* krb4*
|
||||
|
||||
logprint === building openssl versions
|
||||
for vo in ${openssl_versions} ; do
|
||||
build openssl-${vo} openssl $vo config
|
||||
done
|
||||
|
||||
wssl="--with-openssl=${targetdir}/openssl"
|
||||
wssli="--with-openssl-include=${targetdir}/openssl" #this is a hack for broken heimdal 0.5.x autoconf test
|
||||
wossl="--without-openssl"
|
||||
wk4c="--with-krb4-config=${targetdir}/krb4"
|
||||
bk4c="/bin/krb4-config"
|
||||
wok4="--without-krb4"
|
||||
|
||||
logprint === building heimdal w/o krb4 versions
|
||||
for vo in ${openssl_versions} ; do
|
||||
for vh in ${heimdal_versions} ; do
|
||||
v="openssl-${vo}-heimdal-${vh}"
|
||||
build "${v}" \
|
||||
heimdal ${vh} \
|
||||
"configure ${wok4} ${wssl}-${vo} ${wssli}-${vo}/include" \
|
||||
"${targetdir}/heimdal-${vh}/bin/krb5-config --libs | grep lcrypto" \ || \
|
||||
{ failed="${failed} ${v}" ; logprint ${v} failed ; }
|
||||
done
|
||||
done
|
||||
|
||||
logprint === building krb4
|
||||
for vo in ${openssl_versions} ; do
|
||||
for vk in ${krb4_versions} ; do
|
||||
v="openssl-${vo}-krb4-${vk}"
|
||||
build "${v}" \
|
||||
krb4 ${vk} \
|
||||
"configure ${wssl}-${vo}" \
|
||||
"${targetdir}/krb4-${vk}/bin/krb4-config --libs | grep lcrypto"|| \
|
||||
{ failed="${failed} ${v}" ; logprint ${v} failed ; }
|
||||
done
|
||||
done
|
||||
|
||||
logprint === building heimdal with krb4 versions
|
||||
for vo in ${openssl_versions} ; do
|
||||
for vk in ${krb4_versions} ; do
|
||||
for vh in ${heimdal_versions} ; do
|
||||
v="openssl-${vo}-krb4-${vk}-heimdal-${vh}"
|
||||
build "${v}" \
|
||||
heimdal ${vh} \
|
||||
"configure ${wk4c}-${vk}${bk4c} ${wssl}-${vo} ${wssli}-${vo}/include" \
|
||||
"${targetdir}/heimdal-${vh}/bin/krb5-config --libs | grep lcrypto && ${targetdir}/heimdal-${vh}/bin/krb5-config --libs | grep krb4" \
|
||||
|| \
|
||||
{ failed="${failed} ${v}" ; logprint ${v} failed ; }
|
||||
done
|
||||
done
|
||||
done
|
||||
|
||||
logprint === building heimdal without krb4 and openssl versions
|
||||
for vh in ${heimdal_versions} ; do
|
||||
v="des-heimdal-${vh}"
|
||||
build "${v}" \
|
||||
heimdal ${vh} \
|
||||
"configure ${wok4} ${wossl}" || \
|
||||
{ failed="${failed} ${v}" ; logprint ${v} failed ; }
|
||||
done
|
||||
|
||||
logprint all done
|
||||
[ "${failed}" != "" ] && logprint "failed: ${failed}"
|
||||
exit 0
|
Reference in New Issue
Block a user