From f352dc7c5eb26cb2061a386362b59d598e13ec24 Mon Sep 17 00:00:00 2001 From: goro <qtc-committer@nokia.com> Date: Fri, 9 Jan 2009 15:17:07 +0100 Subject: [PATCH] Script for Qt binary creation, work in progress --- .../shipping/prepare-linux-qt-for-shipping.sh | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100755 scripts/shipping/prepare-linux-qt-for-shipping.sh diff --git a/scripts/shipping/prepare-linux-qt-for-shipping.sh b/scripts/shipping/prepare-linux-qt-for-shipping.sh new file mode 100755 index 00000000000..7b5910bc988 --- /dev/null +++ b/scripts/shipping/prepare-linux-qt-for-shipping.sh @@ -0,0 +1,96 @@ +#!/usr/bin/env bash + +workdir=/home/berlin/workdir +destdir=/home/sping/install +dir=qt-x11-opensource-src-4.4.3 +file="${dir}.tar.gz" +[ -z ${MAKE} ] && MAKE=make +envpath=/usr/bin:/bin + +if gcc -dumpversion | grep '^4' ; then + # GCC 4.x machine + webkit= +else + # GCC 3.3.5 machine + webkit='-no-webkit' +fi + + +die() { + echo $1 1>&2 + exit 1 +} + +rand_range() { + incMin=$1 + incMax=$2 + echo $((RANDOM*(incMax-incMin+1)/32768+incMin)) +} + + +setup() { + mkdir -p "${workdir}" + cd "${workdir}" || die "cd failed" +} + +download() { + [ -f "${file}" ] && return + case `rand_range 1 2` in + 1) + mirror=http://ftp.ntua.gr/pub/X11/Qt/qt/source/ + ;; + *) + mirror=http://wftp.tu-chemnitz.de/pub/Qt/qt/source/ + ;; + esac + wget "${mirror}/${file}" || die "Download failed" +} + +unpack() { + [ -d "${dir}" ] && return + tar -xf "${file}" +} + +build() { + ( + cd "${dir}" + if [ ! -f config.status ] ; then + env -i PATH=${envpath} ./configure \ + -prefix "${destdir}" \ + -optimized-qmake \ + -confirm-license \ + \ + -no-mmx -no-sse -no-sse2 -no-3dnow \ + -release -fast \ + ${webkit} \ + -qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg \ + \ + || die "configure failed" + fi + + env -i PATH=${envpath} "${MAKE}" || die "make failed" + ) + ret=$?; [ ${ret} = 0 ] || exit ${ret} +} + +inst() { + ( + cd "${dir}" + mkdir -p "${destdir}" + env -i "${MAKE}" install || die "make install failed" + ) + ret=$?; [ ${ret} = 0 ] || exit ${ret} +} + +main() { + ( + setup + download + unpack + build + inst + ) + ret=$?; [ ${ret} = 0 ] || exit ${ret} +} + +main -- GitLab