mirror of
git://code.qt.io/qt/qt5.git
synced 2026-02-02 03:36:54 +08:00
Provisioning: Separate QNX710 and QNX800 qemu configs
QNX qemu configs separated. QNX710 and QNX800 require different set of
dependency libraries and there's an extra image creation bug on QNX800
that needs workaround too.
QNX800 toolchain updated.
Task-number: QTBUG-131708
Pick-to: 6.8
Change-Id: I3bc5c8bb63abbb729d03fcf3afb2f7881bcdd270
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 4791054b10)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
committed by
Qt Cherry-pick Bot
parent
7228be7f72
commit
a47c2b4ec7
@@ -15,6 +15,7 @@ Configurations:
|
||||
'QT_CMAKE_DIR=/opt/cmake-3.30.5/bin',
|
||||
'QNX_TEST_ENV=LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
||||
'QNX_QEMU={{.Env.QNX_710_QEMU}}',
|
||||
]
|
||||
-
|
||||
Id: 'qnx-710-arm64-on-linux'
|
||||
|
||||
@@ -26,12 +26,12 @@ DownloadAndExtract () {
|
||||
aarch64le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake"
|
||||
armv7le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake"
|
||||
x8664_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/710/"
|
||||
|
||||
targetFolder="/opt/"
|
||||
folderName="qnx710"
|
||||
targetPath="$targetFolder$folderName"
|
||||
qemuTargetPath="$HOME/QNX"
|
||||
qemuTargetPath="$HOME/QNX710"
|
||||
qemuIpAddress="172.31.1.10"
|
||||
export qemuNetwork="172.31.1.1"
|
||||
qemuSSHuser="root"
|
||||
@@ -81,7 +81,7 @@ fi
|
||||
|
||||
# Set env variables
|
||||
SetEnvVar "QNX_710" "$targetPath"
|
||||
SetEnvVar "QNX_QEMU" "$qemuTargetPath"
|
||||
SetEnvVar "QNX_710_QEMU" "$qemuTargetPath"
|
||||
SetEnvVar "QNX_QEMU_IPADDR" "$qemuIpAddress"
|
||||
SetEnvVar "QNX_QEMU_SSH" "$qemuSSHurl"
|
||||
SetEnvVar "QNX_QEMU_LD_LIBRARY_PATH" "$qemuLDpath"
|
||||
|
||||
@@ -26,12 +26,12 @@ DownloadAndExtract () {
|
||||
aarch64le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake"
|
||||
armv7le_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake"
|
||||
x8664_toolchain="${BASH_SOURCE%/*}/../shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/"
|
||||
QNX_qemu_bld_files_dir="${BASH_SOURCE%/*}/qnx_qemu_build_files/800/"
|
||||
|
||||
targetFolder="/opt/"
|
||||
folderName="qnx800"
|
||||
targetPath="$targetFolder$folderName"
|
||||
qemuTargetPath="$HOME/QNX"
|
||||
qemuTargetPath="$HOME/QNX800"
|
||||
qemuIpAddress="172.31.1.10"
|
||||
export qemuNetwork="172.31.1.1"
|
||||
qemuSSHuser="root"
|
||||
@@ -43,9 +43,9 @@ if [ ! -d "$targetFolder" ]; then
|
||||
fi
|
||||
|
||||
# QNX SDP
|
||||
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-linux-20240510.tar.xz"
|
||||
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-windows-linux-20240930.tar.xz"
|
||||
targetFile="qnx800.tar.xz"
|
||||
sha1="93245a5bc11b88563328f0763573942fd25b5e18"
|
||||
sha1="a86d6e001e4ad46f50ed430fb85e8230e730751b"
|
||||
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetFolder"
|
||||
|
||||
sudo cp "$aarch64le_toolchain" "$targetPath"
|
||||
@@ -81,5 +81,11 @@ fi
|
||||
|
||||
# Set env variables
|
||||
SetEnvVar "QNX_800" "$targetPath"
|
||||
SetEnvVar "QNX_800_QEMU" "$qemuTargetPath"
|
||||
# These are common defines with QNX710
|
||||
SetEnvVar "QNX_QEMU_IPADDR" "$qemuIpAddress"
|
||||
SetEnvVar "QNX_QEMU_SSH" "$qemuSSHurl"
|
||||
SetEnvVar "QNX_QEMU_LD_LIBRARY_PATH" "$qemuLDpath"
|
||||
|
||||
|
||||
echo "QNX SDP = 8.0.0" >> ~/versions.txt
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# Need to add all testserver names statically
|
||||
# as current Docker uses Multicast DNS (mDNS) (avahi)
|
||||
# Which does not work with QNX qemu
|
||||
172.31.1.1 apache2 apache2.test-net.qt.local
|
||||
172.31.1.1 squid squid.test-net.qt.local
|
||||
172.31.1.1 vsftpd vsftpd.test-net.qt.local
|
||||
172.31.1.1 ftp-proxy ftp-proxy.test-net.qt.local
|
||||
172.31.1.1 danted danted.test-net.qt.local
|
||||
172.31.1.1 cyrus cyrus.test-net.qt.local
|
||||
172.31.1.1 echo echo.test-net.qt.local
|
||||
172.31.1.1 iptables iptables.test-net.qt.local
|
||||
|
||||
# For network test server which is still used on some test
|
||||
# like networkselftest for local dns resolution
|
||||
172.31.1.1 qt-test-server
|
||||
|
||||
# QtCoap testservers
|
||||
172.31.1.1 californium californium.test-net.qt.local
|
||||
172.31.1.1 freecoap freecoap.test-net.qt.local
|
||||
@@ -0,0 +1,2 @@
|
||||
search test-net.qt.local
|
||||
nameserver 172.31.1.1
|
||||
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
function brief()
|
||||
{
|
||||
echo "--nfs=[<mount>|no]"
|
||||
}
|
||||
|
||||
function help()
|
||||
{
|
||||
brief
|
||||
cat <<EOF
|
||||
If yes, the given nfs share "<mount>" will be mounted at <mount>
|
||||
|
||||
The default is no.
|
||||
EOF
|
||||
}
|
||||
|
||||
function validate() {
|
||||
exit 0
|
||||
}
|
||||
|
||||
function configure()
|
||||
{
|
||||
if [ "$OPT_NFS_QT" != no ]; then
|
||||
cat >output/option_files/post_start.opt_nfs <<EOF
|
||||
|
||||
echo "---> Starting NFS"
|
||||
STARTU_P(fs_nfs3_t,__FS_NFS3_ID__) fs-nfs3 -t 172.31.1.1:$OPT_NFS_QT $OPT_NFS_QT
|
||||
EOF
|
||||
fi
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
brief)
|
||||
brief;;
|
||||
help)
|
||||
help;;
|
||||
validate)
|
||||
validate;;
|
||||
configure)
|
||||
configure;;
|
||||
default)
|
||||
echo no;;
|
||||
esac
|
||||
@@ -0,0 +1,88 @@
|
||||
OPT_ABLELOCK='no'
|
||||
DEF_OPT_ABLELOCK='no'
|
||||
OPT_ARCH='x86_64'
|
||||
DEF_OPT_ARCH='x86_64'
|
||||
OPT_ASLR='yes'
|
||||
DEF_OPT_ASLR='yes'
|
||||
OPT_CERTICOM='no'
|
||||
DEF_OPT_CERTICOM='no'
|
||||
OPT_CRYPTODEV='no'
|
||||
DEF_OPT_CRYPTODEV='no'
|
||||
OPT_DATA_INODES='3000'
|
||||
DEF_OPT_DATA_INODES='3000'
|
||||
OPT_DATA_SIZE='512'
|
||||
DEF_OPT_DATA_SIZE='60'
|
||||
OPT_EXTRA_DIRS='none'
|
||||
DEF_OPT_EXTRA_DIRS='none'
|
||||
OPT_GRAPHICS='no'
|
||||
DEF_OPT_GRAPHICS='no'
|
||||
OPT_GUEST='none'
|
||||
DEF_OPT_GUEST='none'
|
||||
OPT_HOSTNAME='qnx_QEMU_CI'
|
||||
DEF_OPT_HOSTNAME='noname'
|
||||
OPT_IP='172.31.1.69'
|
||||
DEF_OPT_IP='dhcp'
|
||||
OPT_MACADDR='52:54:00:f1:c4:92'
|
||||
DEF_OPT_MACADDR='generate'
|
||||
OPT_NFS='no'
|
||||
DEF_OPT_NFS='no'
|
||||
OPT_NFS_QT='/home/qt/work'
|
||||
DEF_OPT_NFS_QT='/home/qt/work'
|
||||
OPT_PATHTRUST='no'
|
||||
DEF_OPT_PATHTRUST='no'
|
||||
OPT_PERL='no'
|
||||
DEF_OPT_PERL='no'
|
||||
OPT_POLICY='none'
|
||||
DEF_OPT_POLICY='none'
|
||||
OPT_PYTHON='no'
|
||||
DEF_OPT_PYTHON='no'
|
||||
OPT_QAUDIT='no'
|
||||
DEF_OPT_QAUDIT='no'
|
||||
OPT_QFIM='no'
|
||||
DEF_OPT_QFIM='no'
|
||||
OPT_QTD='no'
|
||||
DEF_OPT_QTD='no'
|
||||
OPT_QVM='no'
|
||||
DEF_OPT_QVM='no'
|
||||
OPT_REPOS='$QNX_STAGE_nto:$QNX_TARGET'
|
||||
DEF_OPT_REPOS='$QNX_STAGE_nto:$QNX_TARGET'
|
||||
OPT_ROOT='no'
|
||||
DEF_OPT_ROOT='no'
|
||||
OPT_SAFE='no'
|
||||
DEF_OPT_SAFE='no'
|
||||
OPT_SECPOL='no'
|
||||
DEF_OPT_SECPOL='no'
|
||||
OPT_SECURE_DATA='no'
|
||||
DEF_OPT_SECURE_DATA='no'
|
||||
OPT_SECURE_PROCFS='yes'
|
||||
DEF_OPT_SECURE_PROCFS='yes'
|
||||
OPT_SLM='no'
|
||||
DEF_OPT_SLM='no'
|
||||
OPT_SSHD_PREGEN='yes'
|
||||
DEF_OPT_SSHD_PREGEN='yes'
|
||||
OPT_SSH_IDENT='prompt'
|
||||
DEF_OPT_SSH_IDENT='prompt'
|
||||
OPT_SYS_INODES='1000'
|
||||
DEF_OPT_SYS_INODES='1000'
|
||||
OPT_SYS_SIZE='20'
|
||||
DEF_OPT_SYS_SIZE='20'
|
||||
OPT_TCG='no'
|
||||
DEF_OPT_TCG='no'
|
||||
OPT_TELNET='no'
|
||||
DEF_OPT_TELNET='no'
|
||||
OPT_TOMCRYPT='no'
|
||||
DEF_OPT_TOMCRYPT='no'
|
||||
OPT_TOYBOX='no'
|
||||
DEF_OPT_TOYBOX='no'
|
||||
OPT_TYPE='qemu'
|
||||
DEF_OPT_TYPE='qemu'
|
||||
OPT_TZ='UTC0'
|
||||
DEF_OPT_TZ='UTC0'
|
||||
OPT_UNION='yes'
|
||||
DEF_OPT_UNION='yes'
|
||||
OPT_USB='no'
|
||||
DEF_OPT_USB='no'
|
||||
OPT_VALGRIND='no'
|
||||
DEF_OPT_VALGRIND='no'
|
||||
OPT_ZONEINFO='no'
|
||||
DEF_OPT_ZONEINFO='no'
|
||||
@@ -0,0 +1,25 @@
|
||||
# local/snippets/data_files.custom
|
||||
# Placeholder for local list of files to add to data partition
|
||||
|
||||
home/root/.ssh/environment = {
|
||||
TERM=qansi
|
||||
PATH=__IFS_PATH__:/system/xbin:.
|
||||
#LD_LIBRARY_PATH=__PROC_LIB__:/home/qt/work/install/target/lib
|
||||
#QSG_RHI_BACKEND=software
|
||||
#QT_QPA_PLATFORM=offscreen
|
||||
}
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/share
|
||||
var/share/zoneinfo=usr/share/zoneinfo
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/share/fonts
|
||||
var/etc/fontconfig/fonts.conf=etc/fontconfig/fonts.conf
|
||||
var/share/fonts=usr/share/fonts
|
||||
|
||||
var/etc/hosts=local/misc_files/etc/hosts
|
||||
var/etc/resolv.conf=local/misc_files/etc/resolv.conf
|
||||
var/etc/nsswitch.conf=etc/nsswitch.conf
|
||||
|
||||
[uid=0 gid=0 dperms=755 type=dir] var/etc/ssl/certs
|
||||
var/share/ca-certificates=local/misc_files/ca-certificates
|
||||
var/etc/ssl/certs=local/misc_files/etc/ssl/certs
|
||||
@@ -0,0 +1,12 @@
|
||||
# Add root HOME env variable
|
||||
procmgr_symlink /data/home/root/ /home/root
|
||||
HOME=/home/root
|
||||
|
||||
# Needed for timezone related tests
|
||||
TZ=Europe/Oslo
|
||||
procmgr_symlink /data/var/share /usr/share
|
||||
procmgr_symlink /data/var/share/zoneinfo/Europe/Oslo /data/var/etc/localtime
|
||||
|
||||
# fontconfig
|
||||
#procmgr_symlink /data/var/etc/fontconfig/fonts.conf /etc/fontconfig/fonts.conf
|
||||
#procmgr_symlink /data/var/share/fonts /usr/share/fonts
|
||||
@@ -0,0 +1,3 @@
|
||||
root:x:0:0:Superuser:/data/home/root:/bin/sh
|
||||
sshd:x:15:6:sshd:/data/var/chroot/sshd:/bin/false
|
||||
qnxuser:x:__QNXUSER_UID__:__QNXUSER_GID__:User9:/data/home/qnxuser:/bin/sh
|
||||
@@ -0,0 +1,29 @@
|
||||
# local/snippets/post_start.custom
|
||||
# Commands executed from post_startup.sh. Executed at the end of system startup whether slm is in use
|
||||
# or not
|
||||
#
|
||||
# To allow resource managers to be run properly with and without security policies, command lines
|
||||
# should be written in one of the following forms:
|
||||
#
|
||||
# START(resmgr_t) resmgr DROPROOT(resmgr_uid)
|
||||
# STARTU(resmgr_t, resmgr_uid) resmgr
|
||||
# Where resmgr_t is the security type name (arbitrary but usually the name of the resmgr with _t appended),
|
||||
# and resmgr_uid is the id to use for both uid and gid. DROPROOT is used only in cases where the
|
||||
# resource manager supports a -U option for switching to non-root.
|
||||
echo "---> Starting Filesystem event manager (fsevmgr)"
|
||||
STARTU_P(fsevmg_t,__FSEVMG_ID__) fsevmgr -d -F __DEVB_ID__ -N __DEVB_ID__
|
||||
|
||||
echo "---> Remove large fonts"
|
||||
rm -rf /data/var/share/fonts/NotoSansCJK*
|
||||
rm -rf /data/var/share/fonts/NotoSansMonoCJK*
|
||||
echo "---> Create fontconfig cache"
|
||||
fc-cache &
|
||||
|
||||
echo "---> Restart ssh daemon"
|
||||
slay sshd
|
||||
/system/xbin/sshd -f /system/data/etc/ssh/sshd_config
|
||||
|
||||
# Add default route so QNX knows where to send
|
||||
# requests for unknown network
|
||||
echo "---> Add default route"
|
||||
route add default 172.31.1.1
|
||||
@@ -0,0 +1,2 @@
|
||||
root::1475759054:0:0
|
||||
qnxuser:@S@f0J4xZibUbKllVqPMzetauCHLRi+9C8wTsxYXE5r7Pfhda5FI7zkObEmKogy01pAX5f/1niG2S2eLXbLs3xoww==@YjBmOTQwNzZiNzYwMzY3N2RkMGQ1NTZmNzA5MDFhMWY=:1476890273:0:0
|
||||
@@ -0,0 +1,65 @@
|
||||
# local/snippets/system_files.custom
|
||||
# Placeholder for local list of files to add to system partition
|
||||
|
||||
[perms=444] data/etc/ssh/sshd_config={
|
||||
HostKey /data/var/ssh/ssh_host_rsa_key
|
||||
HostKey /data/var/ssh/ssh_host_ed25519_key
|
||||
AuthorizedKeysFile .ssh/authorized_keys
|
||||
PermitUserEnvironment yes
|
||||
AuthenticationMethods none
|
||||
PermitEmptyPasswords yes
|
||||
PermitRootLogin yes
|
||||
PidFile none
|
||||
Subsystem sftp /system/xbin/sftp-server
|
||||
}
|
||||
|
||||
# libraries Qt requires
|
||||
lib/libicuuc.so.67=usr/lib/libicuuc.so.67
|
||||
lib/libicudata.so.67=usr/lib/libicudata.so.67
|
||||
lib/libicui18n.so.67=usr/lib/libicui18n.so.67
|
||||
lib/libGLESv2.so.1=usr/lib/libGLESv2.so.1
|
||||
lib/libEGL.so.1=usr/lib/libEGL.so.1
|
||||
lib/libz.so.2=usr/lib/libz.so.2
|
||||
lib/libzstd.so.1=usr/lib/libzstd.so.1
|
||||
lib/libxml2.so.2=usr/lib/libxml2.so.2
|
||||
lib/libfreetype.so.24=usr/lib/libfreetype.so.24
|
||||
lib/libbz2.so.1=usr/lib/libbz2.so.1
|
||||
lib/liblzma.so.5=usr/lib/liblzma.so.5
|
||||
lib/libdbus-1.so=usr/lib//libdbus-1.so
|
||||
lib/libdbus-1.so.22=usr/lib//libdbus-1.so.22
|
||||
lib/libbacktrace.so.1=lib/libbacktrace.so.1
|
||||
lib/libm.so.3=lib/libm.so.3
|
||||
|
||||
#############################################
|
||||
### Image support
|
||||
#############################################
|
||||
etc/system/config/img.conf=etc/system/config/img.conf
|
||||
lib/libpng16.so.16=usr/lib/libpng16.so.16
|
||||
lib/libjpeg.so.9=lib/libjpeg.so.9
|
||||
lib/libimg.so.1=lib/libimg.so.1
|
||||
lib/dll/img_codec_bmp.so=lib/dll/img_codec_bmp.so
|
||||
lib/dll/img_codec_gif.so=lib/dll/img_codec_gif.so
|
||||
lib/dll/img_codec_jpg.so=lib/dll/img_codec_jpg.so
|
||||
lib/dll/img_codec_png.so=lib/dll/img_codec_png.so
|
||||
lib/dll/img_codec_sgi.so=lib/dll/img_codec_sgi.so
|
||||
lib/dll/img_codec_tga.so=lib/dll/img_codec_tga.so
|
||||
lib/dll/img_codec_tif.so=lib/dll/img_codec_tif.so
|
||||
|
||||
# for inotify
|
||||
xbin/fsevmgr=sbin/fsevmgr
|
||||
|
||||
##############################################
|
||||
### Sreen support
|
||||
##############################################
|
||||
lib/libscreen.so.1=usr/lib/libscreen.so.1
|
||||
|
||||
# for fontconfig
|
||||
lib/libfontconfig.so.1=usr/lib/libfontconfig.so.1
|
||||
xbin/fc-cache=bin/fc-cache
|
||||
xbin/fc-match=local/misc_files/fc-match
|
||||
|
||||
# network
|
||||
lib/libssl.so=usr/lib/libssl.so
|
||||
xbin/nslookup=usr/bin/nslookup
|
||||
xbin/unbound=sbin/unbound
|
||||
xbin/curl=usr/bin/curl
|
||||
@@ -0,0 +1 @@
|
||||
#define __FSEVMG_ID__ 50
|
||||
Reference in New Issue
Block a user