diff options
Diffstat (limited to 'coin/provisioning/common/shared')
22 files changed, 256 insertions, 204 deletions
diff --git a/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake new file mode 100644 index 00000000..9a207b0e --- /dev/null +++ b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-aarch64le.cmake @@ -0,0 +1,28 @@ +set(CMAKE_SYSTEM_NAME QNX) +set(CMAKE_SYSTEM_PROCESSOR aarch64le) + +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PROGRAM) + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_LIBRARY) + set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PACKAGE) + set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_INCLUDE) + set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +endif() + +set(CMAKE_FIND_ROOT_PATH $ENV{QNX_TARGET};$ENV{QNX_TARGET}/${CMAKE_SYSTEM_PROCESSOR}) + +set(_qnx_toolchain_arch gcc_ntoaarch64le) + +set(CMAKE_C_COMPILER qcc) +set(CMAKE_C_COMPILER_TARGET ${_qnx_toolchain_arch}) +set(CMAKE_CXX_COMPILER q++) +set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch}) + +set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntoaarch64-strip) + +set(CMAKE_SYSROOT $ENV{QNX_TARGET}) diff --git a/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake new file mode 100644 index 00000000..90bd9731 --- /dev/null +++ b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-armv7le.cmake @@ -0,0 +1,28 @@ +set(CMAKE_SYSTEM_NAME QNX) +set(CMALE_SYSTEM_PROCESSOR armv7le) + +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PROGRAM) + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_LIBRARY) + set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PACKAGE) + set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_INCLUDE) + set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +endif() + +set(CMAKE_FIND_ROOT_PATH $ENV{QNX_TARGET};$ENV{QNX_TARGET}/${CMAKE_SYSTEM_PROCESSOR}) + +set(_qnx_toolchain_arch gcc_ntoarmv7le) + +set(CMAKE_C_COMPILER qcc) +set(CMAKE_C_COMPILER_TARGET ${_qnx_toolchain_arch}) +set(CMAKE_CXX_COMPILER q++) +set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch}) + +set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntoarmv7-strip) + +set(CMAKE_SYSROOT $ENV{QNX_TARGET}) diff --git a/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake new file mode 100644 index 00000000..e11488bc --- /dev/null +++ b/coin/provisioning/common/shared/cmake_toolchain_files/qnx-toolchain-x8664.cmake @@ -0,0 +1,28 @@ +set(CMAKE_SYSTEM_NAME QNX) +set(CMAKE_SYSTEM_PROCESSOR x86_64) + +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PROGRAM) + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_LIBRARY) + set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PACKAGE) + set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +endif() +if (NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_INCLUDE) + set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +endif() + +set(CMAKE_FIND_ROOT_PATH $ENV{QNX_TARGET};$ENV{QNX_TARGET}/${CMAKE_SYSTEM_PROCESSOR}) + +set(_qnx_toolchain_arch gcc_ntox86_64) + +set(CMAKE_C_COMPILER qcc) +set(CMAKE_C_COMPILER_TARGET ${_qnx_toolchain_arch}) +set(CMAKE_CXX_COMPILER q++) +set(CMAKE_CXX_COMPILER_TARGET ${_qnx_toolchain_arch}) + +set(CMAKE_STRIP $ENV{QNX_HOST}/usr/bin/ntox86_64-strip) + +set(CMAKE_SYSROOT $ENV{QNX_TARGET}) diff --git a/coin/provisioning/common/shared/ffmpeg_config_options.txt b/coin/provisioning/common/shared/ffmpeg_config_options.txt new file mode 100644 index 00000000..52f79c14 --- /dev/null +++ b/coin/provisioning/common/shared/ffmpeg_config_options.txt @@ -0,0 +1 @@ +--disable-programs --disable-doc --disable-debug --enable-network --disable-lzma --enable-pic --disable-vulkan --disable-v4l2-m2m --disable-decoder=truemotion1 diff --git a/coin/provisioning/common/shared/requirements.txt b/coin/provisioning/common/shared/requirements.txt deleted file mode 100644 index 863707da..00000000 --- a/coin/provisioning/common/shared/requirements.txt +++ /dev/null @@ -1,19 +0,0 @@ -# This file holds all python3 packages need for a certain qt module -# When adding new packages here, first add a comment with the name of the module -# Then all the packages. Duplicates are wanted as every module should install -# all packages it needs and shouldn't depend on a package from another module -# -# qtinterfaceframework -antlr4-python3-runtime==4.9.2 -argh==0.26.2 -click==8.0.1 -coloredlogs==15.0.1 -humanfriendly==10.0 -Jinja2==3.0.1 -MarkupSafe==2.0.1 -path.py==12.5.0 -pathtools==0.1.2 -PyYAML==5.4.1 -six==1.16.0 -typing==3.7.4 -watchdog==2.1.5 diff --git a/coin/provisioning/common/shared/telegraf/telegraf-ioping.sh b/coin/provisioning/common/shared/telegraf/telegraf-ioping.sh index ad95eadc..528047ce 100644..100755 --- a/coin/provisioning/common/shared/telegraf/telegraf-ioping.sh +++ b/coin/provisioning/common/shared/telegraf/telegraf-ioping.sh @@ -1,4 +1,6 @@ #!/bin/sh +#Copyright (C) 2023 The Qt Company Ltd +#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only # Measure I/O latency once, return data in InfluxDB format # @@ -12,7 +14,7 @@ set -e -[ x"$1" = x ] && echo "$0 takes a path as a first argument" && exit 1 +[ -z "$1" ] && echo "$0 takes a path as a first argument" && exit 1 # Try to run in high priority to avoid slow-downs because of # factors other than I/O. @@ -23,4 +25,4 @@ rlatency="$(ioping -B -k -c 3 -i 0.1 "$1" | cut -d " " -f 5)" wlatency="$(ioping -B -k -c 3 -i 0.1 -W "$1" | cut -d " " -f 5)" printf "ioping,path=$1 read_latency_ns=%u,write_latency_ns=%u\n" \ - $rlatency $wlatency + "$rlatency" "$wlatency" diff --git a/coin/provisioning/common/shared/testserver/californium/Dockerfile b/coin/provisioning/common/shared/testserver/californium/Dockerfile index 041c3ef4..81d27f9b 100644 --- a/coin/provisioning/common/shared/testserver/californium/Dockerfile +++ b/coin/provisioning/common/shared/testserver/californium/Dockerfile @@ -1,5 +1,5 @@ FROM qt_ubuntu_18.04 -ARG packages="avahi-daemon maven default-jdk" +ARG packages="avahi-daemon maven default-jdk patch" RUN apt-get update && apt-get -y install $packages # Get californium-based CoAP test server @@ -7,6 +7,8 @@ WORKDIR /root/src ADD californium-*.tar.gz . RUN mv californium-* californium WORKDIR /root/src/californium +ADD qt_changes.patch ./ +RUN patch -p1 < qt_changes.patch RUN mvn clean install -q -DskipTests WORKDIR / diff --git a/coin/provisioning/common/shared/testserver/californium/qt_changes.patch b/coin/provisioning/common/shared/testserver/californium/qt_changes.patch new file mode 100644 index 00000000..732c0daa --- /dev/null +++ b/coin/provisioning/common/shared/testserver/californium/qt_changes.patch @@ -0,0 +1,43 @@ +diff -ruN californium_3.8.0/demo-apps/cf-plugtest-server/src/main/java/org/eclipse/californium/plugtests/PlugtestServer.java californium/demo-apps/cf-plugtest-server/src/main/java/org/eclipse/californium/plugtests/PlugtestServer.java +--- californium_3.8.0/demo-apps/cf-plugtest-server/src/main/java/org/eclipse/californium/plugtests/PlugtestServer.java 2023-07-21 11:16:21.142201240 +0200 ++++ californium/demo-apps/cf-plugtest-server/src/main/java/org/eclipse/californium/plugtests/PlugtestServer.java 2023-07-21 11:16:51.074210378 +0200 +@@ -100,6 +100,14 @@ + import org.eclipse.californium.unixhealth.NetSocketHealthLogger; + import org.eclipse.californium.unixhealth.NetStatLogger; + ++import org.eclipse.californium.scandium.DTLSConnector; ++import org.eclipse.californium.scandium.config.DtlsConnectorConfig; ++import org.eclipse.californium.scandium.dtls.pskstore.AdvancedSinglePskStore; ++import org.eclipse.californium.core.network.CoapEndpoint; ++ ++import java.net.InetSocketAddress; ++import java.net.InetAddress; ++ + import picocli.CommandLine; + import picocli.CommandLine.ArgGroup; + import picocli.CommandLine.Command; +@@ -437,7 +445,23 @@ + // server.addEndpoint(new CoAPEndpoint(new InetSocketAddress("127.0.0.1", port))); + // server.addEndpoint(new CoAPEndpoint(new InetSocketAddress("2a01:c911:0:2010::10", port))); + // server.addEndpoint(new CoAPEndpoint(new InetSocketAddress("10.200.1.2", port))); +- server.addEndpoints(config); ++ // server.addEndpoints(config); ++ ++ CoapEndpoint.Builder endpointBuilder = new CoapEndpoint.Builder(); ++ endpointBuilder.setPort(5683); ++ server.addEndpoint(endpointBuilder.build()); ++ ++ AdvancedSinglePskStore pskStore = new AdvancedSinglePskStore("Client_identity", "secretPSK".getBytes()); ++ ++ DtlsConnectorConfig.Builder builder = new DtlsConnectorConfig.Builder(new Configuration()); ++ builder.setAddress(new InetSocketAddress(5684)); ++ builder.setAdvancedPskStore(pskStore); ++ DTLSConnector dtlsConnector = new DTLSConnector(builder.build()); ++ ++ endpointBuilder = new CoapEndpoint.Builder(); ++ endpointBuilder.setConnector(dtlsConnector); ++ server.addEndpoint(endpointBuilder.build()); ++ + if (server.getEndpoints().isEmpty()) { + System.err.println("no endpoint available!"); + System.exit(ERR_INIT_FAILED); diff --git a/coin/provisioning/common/shared/testserver/docker_images.sh b/coin/provisioning/common/shared/testserver/docker_images.sh index 8c731c52..e4782a72 100755 --- a/coin/provisioning/common/shared/testserver/docker_images.sh +++ b/coin/provisioning/common/shared/testserver/docker_images.sh @@ -1,51 +1,14 @@ #!/usr/bin/env bash - -############################################################################# -## -## Copyright (C) 2019 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the provisioning scripts of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL$ -## 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 https://www.qt.io/terms-conditions. For further -## information use the contact form at https://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 3 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL3 included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 3 requirements -## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 2.0 or (at your option) the GNU General -## Public license version 3 or any later version approved by the KDE Free -## Qt Foundation. The licenses are as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-2.0.html and -## https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################# +# Copyright (C) 2019 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only set -e - PROVISIONING_DIR="$(dirname "$0")/../../../" -. "$PROVISIONING_DIR"/common/unix/common.sourced.sh -. "$PROVISIONING_DIR"/common/unix/DownloadURL.sh - +# shellcheck source=../../../common/unix/common.sourced.sh +source "$PROVISIONING_DIR"/common/unix/common.sourced.sh +# shellcheck source=../../../common/unix/DownloadURL.sh +source "$PROVISIONING_DIR"/common/unix/DownloadURL.sh # Sort files by their SHA-1, and then return the accumulated result sha1tree () { @@ -53,14 +16,14 @@ sha1tree () { [ -x "$(command -v sha1sum)" ] || SHASUM=shasum find "$@" -type f -print0 | \ - xargs -0 ${SHASUM-sha1sum} | cut -d ' ' -f 1 | \ - sort | ${SHASUM-sha1sum} | cut -d ' ' -f 1 + xargs -0 "${SHASUM-sha1sum}" | cut -d ' ' -f 1 | \ + sort | "${SHASUM-sha1sum}" | cut -d ' ' -f 1 } SERVER_PATH="$PROVISIONING_DIR/common/shared/testserver" -. "$SERVER_PATH/settings.sh" +source "$SERVER_PATH/settings.sh" # Download all necessary dependencies outside of the dockerfiles, so that we @@ -70,32 +33,33 @@ SERVER_PATH="$PROVISIONING_DIR/common/shared/testserver" echo 'Downloading support files for the docker images' DownloadURL \ - http://ci-files01-hki.intra.qt.io/input/docker/rfc3252.txt \ + http://ci-files01-hki.ci.qt.io/input/docker/rfc3252.txt \ https://tools.ietf.org/rfc/rfc3252.txt \ 50c323dedce95e4fdc2db35cd1b8ebf9d74711bf5296ef438b88d186d7dd082d cp rfc3252.txt "$SERVER_PATH/vsftpd/" cp rfc3252.txt "$SERVER_PATH/apache2/" DownloadURL \ - http://ci-files01-hki.intra.qt.io/input/docker/dante-server_1.4.1-1_amd64.deb \ + http://ci-files01-hki.ci.qt.io/input/docker/dante-server_1.4.1-1_amd64.deb \ http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb \ 674a06f356cebd92c64920cec38a6687650a6f880198fbbad05aaaccca5c0a21 mv dante-server_1.4.1-1_amd64.deb "$SERVER_PATH/danted/" DownloadURL \ - http://ci-files01-hki.intra.qt.io/input/docker/FreeCoAP-0.7.tar.gz \ + http://ci-files01-hki.ci.qt.io/input/docker/FreeCoAP-0.7.tar.gz \ https://github.com/keith-cullen/FreeCoAP/archive/v0.7.tar.gz \ fa6602e27dc8eaee6e34ff53400c0519da0c5c7cd47bf6f13acb564f52a693ee \ FreeCoAP-0.7.tar.gz mv FreeCoAP-0.7.tar.gz "$SERVER_PATH/freecoap/" -# Custom fork of Eclipse Californium with changes not upstream +# Eclipse Californium 3.8.0, requires to apply a custom patch from +# $SERVER_PATH/californium/ before usage DownloadURL \ - http://ci-files01-hki.intra.qt.io/input/docker/californium-secure-test-server.tar.gz \ - https://github.com/sonakur/californium/archive/secure-test-server.tar.gz \ - 0ee7f5d4366b9e31f6d2d42e389cb7a66d2db54987b700a38a3a31e8f38a7a19 \ - californium-secure-test-server.tar.gz -mv californium-secure-test-server.tar.gz "$SERVER_PATH/californium/" + http://ci-files01-hki.ci.qt.io/input/docker/californium-3.8.0.tar.gz \ + https://github.com/eclipse-californium/californium/archive/refs/tags/3.8.0.tar.gz \ + 24f8ca393f26c922739462e4586b8ced1ff75f99bfa795defa34a967b5a4a5a0 \ + californium-3.8.0.tar.gz +mv californium-3.8.0.tar.gz "$SERVER_PATH/californium/" echo 'Building the docker images...' @@ -123,10 +87,10 @@ do # backwards-incompatible changes across repositories. context="$SERVER_PATH/$server" - tag=$(sha1tree $context) - docker build -t qt-test-server-$server:latest \ - -t qt-test-server-$server:$tag \ - $context + tag=$(sha1tree "$context") + docker build -t "qt-test-server-$server:latest" \ + -t "qt-test-server-$server:$tag" \ + "$context" done docker images diff --git a/coin/provisioning/common/shared/testserver/docker_machine.sh b/coin/provisioning/common/shared/testserver/docker_machine.sh index 313b5652..9abf0caa 100755 --- a/coin/provisioning/common/shared/testserver/docker_machine.sh +++ b/coin/provisioning/common/shared/testserver/docker_machine.sh @@ -1,59 +1,22 @@ #!/usr/bin/env bash - -############################################################################# -## -## Copyright (C) 2019 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the provisioning scripts of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL$ -## 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 https://www.qt.io/terms-conditions. For further -## information use the contact form at https://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 3 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL3 included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 3 requirements -## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 2.0 or (at your option) the GNU General -## Public license version 3 or any later version approved by the KDE Free -## Qt Foundation. The licenses are as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-2.0.html and -## https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################# +# Copyright (C) 2019 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only set -ex TestMachine='qt-test-server' # Deploy docker virtual machine (Boot2Docker) into VirtualBox only if it doesn't exist -if [ -z $(docker-machine ls -q --filter "name=$TestMachine") ] +if [ -z "$(docker-machine ls -q --filter "name=$TestMachine")" ] then - docker-machine create $@ $TestMachine - docker-machine ip $TestMachine + docker-machine create "$@" "$TestMachine" + docker-machine ip "$TestMachine" else # Otherwise, start the docker machine and update with new TLS certificates. - docker-machine start $TestMachine && docker-machine regenerate-certs -f $TestMachine + docker-machine start "$TestMachine" && docker-machine regenerate-certs -f "$TestMachine" fi # Switch the docker engine to $TestMachine -eval $(docker-machine env $TestMachine) +eval "$(docker-machine env "$TestMachine")" docker-machine ls diff --git a/coin/provisioning/common/shared/testserver/docker_testserver.sh b/coin/provisioning/common/shared/testserver/docker_testserver.sh index 18d9aeb8..7e743a80 100755 --- a/coin/provisioning/common/shared/testserver/docker_testserver.sh +++ b/coin/provisioning/common/shared/testserver/docker_testserver.sh @@ -1,47 +1,10 @@ #!/usr/bin/env bash - -############################################################################# -## -## Copyright (C) 2019 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the provisioning scripts of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL$ -## 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 https://www.qt.io/terms-conditions. For further -## information use the contact form at https://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 3 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL3 included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 3 requirements -## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 2.0 or (at your option) the GNU General -## Public license version 3 or any later version approved by the KDE Free -## Qt Foundation. The licenses are as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-2.0.html and -## https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################# +# Copyright (C) 2019 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only set -ex -[ -x "$(command -v realpath)" ] && FILE=$(realpath ${BASH_SOURCE[0]}) || FILE=${BASH_SOURCE[0]} +[ -x "$(command -v realpath)" ] && FILE=$(realpath "${BASH_SOURCE[0]}") || FILE="${BASH_SOURCE[0]}" case $FILE in */*) SERVER_PATH="${FILE%/*}" ;; *) SERVER_PATH="." ;; @@ -60,4 +23,4 @@ esac docker info # Create images -$SERVER_PATH/docker_images.sh +"$SERVER_PATH/docker_images.sh" diff --git a/coin/provisioning/common/shared/testserver/settings.sh b/coin/provisioning/common/shared/testserver/settings.sh index fc21d46b..03276eeb 100644..100755 --- a/coin/provisioning/common/shared/testserver/settings.sh +++ b/coin/provisioning/common/shared/testserver/settings.sh @@ -1,41 +1,6 @@ -############################################################################# -## -## Copyright (C) 2019 The Qt Company Ltd. -## Contact: https://www.qt.io/licensing/ -## -## This file is part of the provisioning scripts of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL$ -## 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 https://www.qt.io/terms-conditions. For further -## information use the contact form at https://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 3 as published by the Free Software -## Foundation and appearing in the file LICENSE.LGPL3 included in the -## packaging of this file. Please review the following information to -## ensure the GNU Lesser General Public License version 3 requirements -## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU -## General Public License version 2.0 or (at your option) the GNU General -## Public license version 3 or any later version approved by the KDE Free -## Qt Foundation. The licenses are as published by the Free Software -## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -## included in the packaging of this file. Please review the following -## information to ensure the GNU General Public License requirements will -## be met: https://www.gnu.org/licenses/gpl-2.0.html and -## https://www.gnu.org/licenses/gpl-3.0.html. -## -## $QT_END_LICENSE$ -## -############################################################################# +#!/usr/bin/env bash +# Copyright (C) 2019 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only set -ex diff --git a/coin/provisioning/common/shared/triplets/arm64-windows-qt.cmake b/coin/provisioning/common/shared/triplets/arm64-windows-qt.cmake new file mode 100644 index 00000000..4d9d5d69 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/arm64-windows-qt.cmake @@ -0,0 +1,7 @@ +set(VCPKG_TARGET_ARCHITECTURE arm64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE dynamic) + +# Qt custom per-port customizations diff --git a/coin/provisioning/common/shared/triplets/armeabi-v7a-android-qt.cmake b/coin/provisioning/common/shared/triplets/armeabi-v7a-android-qt.cmake new file mode 100644 index 00000000..fba6a00a --- /dev/null +++ b/coin/provisioning/common/shared/triplets/armeabi-v7a-android-qt.cmake @@ -0,0 +1,15 @@ +set(VCPKG_TARGET_ARCHITECTURE arm) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_CRT_LINKAGE dynamic) + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Android) +set(VCPKG_MAKE_BUILD_TRIPLET "--host=armv7a-linux-androideabi") +set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=armeabi-v7a -DANDROID_ARM_NEON=ON) diff --git a/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake b/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake new file mode 100644 index 00000000..95cc1934 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake @@ -0,0 +1,13 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_LIBRARY_LINKAGE dynamic) + set(VCPKG_FIXUP_ELF_RPATH ON) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) diff --git a/coin/provisioning/common/shared/triplets/x64-windows-qt.cmake b/coin/provisioning/common/shared/triplets/x64-windows-qt.cmake new file mode 100644 index 00000000..856b756e --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x64-windows-qt.cmake @@ -0,0 +1,7 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE dynamic) + +# Qt custom per-port customizations diff --git a/coin/provisioning/common/shared/triplets/x86-android-qt.cmake b/coin/provisioning/common/shared/triplets/x86-android-qt.cmake new file mode 100644 index 00000000..a4b74012 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x86-android-qt.cmake @@ -0,0 +1,15 @@ +set(VCPKG_TARGET_ARCHITECTURE x86) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_CRT_LINKAGE dynamic) + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Android) +set(VCPKG_MAKE_BUILD_TRIPLET "--host=i686-linux-android") +set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=x86) diff --git a/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake b/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake new file mode 100644 index 00000000..47afae58 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake @@ -0,0 +1,15 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_CRT_LINKAGE dynamic) + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Android) +set(VCPKG_MAKE_BUILD_TRIPLET "--host=x86_64-linux-android") +set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=x86_64) diff --git a/coin/provisioning/common/shared/vcpkg-configuration.json b/coin/provisioning/common/shared/vcpkg-configuration.json new file mode 100644 index 00000000..83f4f440 --- /dev/null +++ b/coin/provisioning/common/shared/vcpkg-configuration.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg-configuration.schema.json", + "default-registry": { + "kind": "git", + "repository": "https://git.qt.io/mrmsdbdl/vcpkg-mirror", + "baseline": "8eb57355a4ffb410a2e94c07b4dca2dffbee8e50" + }, + "overlay-triplets": [ "./../../shared/triplets" ] +} diff --git a/coin/provisioning/common/shared/vcpkg_registry_mirror.txt b/coin/provisioning/common/shared/vcpkg_registry_mirror.txt new file mode 100644 index 00000000..546ef5b6 --- /dev/null +++ b/coin/provisioning/common/shared/vcpkg_registry_mirror.txt @@ -0,0 +1 @@ +https://git.qt.io/mrmsdbdl/vcpkg-mirror.git diff --git a/coin/provisioning/common/shared/vcpkg_tool_release_tag.txt b/coin/provisioning/common/shared/vcpkg_tool_release_tag.txt new file mode 100644 index 00000000..3faa2683 --- /dev/null +++ b/coin/provisioning/common/shared/vcpkg_tool_release_tag.txt @@ -0,0 +1 @@ +vcpkg_tool_release_tag=2023-11-16 diff --git a/coin/provisioning/common/shared/vcpkg_version.txt b/coin/provisioning/common/shared/vcpkg_version.txt new file mode 100644 index 00000000..d2aa3aa3 --- /dev/null +++ b/coin/provisioning/common/shared/vcpkg_version.txt @@ -0,0 +1 @@ +vcpkg_version=2023.10.19 |