diff options
author | Teemu Holappa <teemu.holappa@qt.io> | 2017-01-13 10:01:47 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2017-03-03 14:37:46 +0000 |
commit | 111799abf170d4a65358aa84d1f1d9a92bee6350 (patch) | |
tree | 00d1ca08d485010750fd2ce3b9785821ecdbce61 /coin | |
parent | 93b18e36e4cee7daccb24b986823360d1707c0a4 (diff) |
Add qemu user mode binary
qemu is used to run unit tests for arm binaries in coin.
Change-Id: I8610b5d7603fa3bcd5cf0f9e83ee38e219b60a85
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'coin')
-rwxr-xr-x | coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh new file mode 100755 index 00000000..bd71bbe2 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh @@ -0,0 +1,60 @@ +#!/usr/bin/env bash +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -e +# build latest qemu to usermode +sudo apt-get -y install automake autoconf libtool + +tempDir=$(mktemp -d) || echo "Failed to create temporary directory" +git clone git://git.qemu.org/qemu.git "$tempDir" +cd "$tempDir" + +#latest commit from the master proven to work +git checkout c7f1cf01b8245762ca5864e835d84f6677ae8b1f +git submodule update --init pixman +./configure --target-list=arm-linux-user --static +make +sudo make install +rm -rf "$tempDir" + +# Enable binfmt support +sudo apt-get -y install binfmt-support + +# Install qemu binfmt +sudo update-binfmts --package qemu-arm --install arm \ +/usr/local/bin/qemu-arm \ +--magic \ +"\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00" \ +--mask \ +"\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff" |