├── .azure-pipelines ├── azure-pipelines-linux.yml ├── azure-pipelines-osx.yml └── azure-pipelines-win.yml ├── .ci_support ├── README ├── linux_64_.yaml ├── linux_aarch64_.yaml ├── linux_ppc64le_.yaml ├── osx_64_.yaml ├── osx_arm64_.yaml └── win_64_.yaml ├── .circleci └── config.yml ├── .gitattributes ├── .github └── CODEOWNERS ├── .gitignore ├── .scripts ├── build_steps.sh ├── logging_utils.sh ├── run_docker_build.sh ├── run_osx_build.sh └── run_win_build.bat ├── LICENSE.txt ├── README.md ├── azure-pipelines.yml ├── build-locally.py ├── conda-forge.yml └── recipe ├── LICENSE.LGPLv3 ├── conda_build_config.yaml ├── meta.yaml ├── run_test.bat ├── run_test.sh ├── test ├── hello.pro ├── main-qtwebengine.cpp ├── main.cpp ├── main.qml ├── qml.qrc ├── qrc_qml.cpp └── qtwebengine.pro ├── xcodebuild ├── xcrun └── yum_requirements.txt /.azure-pipelines/azure-pipelines-linux.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: linux 7 | pool: 8 | vmImage: ubuntu-latest 9 | strategy: 10 | matrix: 11 | linux_64_: 12 | CONFIG: linux_64_ 13 | UPLOAD_PACKAGES: 'True' 14 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:cos7 15 | linux_aarch64_: 16 | CONFIG: linux_aarch64_ 17 | UPLOAD_PACKAGES: 'True' 18 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:cos7 19 | linux_ppc64le_: 20 | CONFIG: linux_ppc64le_ 21 | UPLOAD_PACKAGES: 'True' 22 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:cos7 23 | timeoutInMinutes: 360 24 | variables: {} 25 | 26 | steps: 27 | # configure qemu binfmt-misc running. This allows us to run docker containers 28 | # embedded qemu-static 29 | - script: | 30 | docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes 31 | ls /proc/sys/fs/binfmt_misc/ 32 | condition: not(startsWith(variables['CONFIG'], 'linux_64')) 33 | displayName: Configure binfmt_misc 34 | 35 | - script: | 36 | export CI=azure 37 | export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) 38 | export remote_url=$(Build.Repository.Uri) 39 | export sha=$(Build.SourceVersion) 40 | export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME 41 | export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) 42 | if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then 43 | export IS_PR_BUILD="True" 44 | else 45 | export IS_PR_BUILD="False" 46 | fi 47 | .scripts/run_docker_build.sh 48 | displayName: Run docker build 49 | env: 50 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 51 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 52 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-osx.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: osx 7 | pool: 8 | vmImage: macOS-13 9 | strategy: 10 | matrix: 11 | osx_64_: 12 | CONFIG: osx_64_ 13 | UPLOAD_PACKAGES: 'True' 14 | osx_arm64_: 15 | CONFIG: osx_arm64_ 16 | UPLOAD_PACKAGES: 'True' 17 | timeoutInMinutes: 360 18 | variables: {} 19 | 20 | steps: 21 | # TODO: Fast finish on azure pipelines? 22 | - script: | 23 | export CI=azure 24 | export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) 25 | export remote_url=$(Build.Repository.Uri) 26 | export sha=$(Build.SourceVersion) 27 | export OSX_FORCE_SDK_DOWNLOAD="1" 28 | export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME 29 | export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) 30 | if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then 31 | export IS_PR_BUILD="True" 32 | else 33 | export IS_PR_BUILD="False" 34 | fi 35 | ./.scripts/run_osx_build.sh 36 | displayName: Run OSX build 37 | env: 38 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 39 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 40 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-win.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: win 7 | pool: 8 | vmImage: windows-2022 9 | strategy: 10 | matrix: 11 | win_64_: 12 | CONFIG: win_64_ 13 | UPLOAD_PACKAGES: 'True' 14 | timeoutInMinutes: 360 15 | variables: 16 | CONDA_BLD_PATH: D:\\bld\\ 17 | MINIFORGE_HOME: D:\Miniforge 18 | UPLOAD_TEMP: D:\\tmp 19 | 20 | steps: 21 | 22 | - script: | 23 | call ".scripts\run_win_build.bat" 24 | displayName: Run Windows build 25 | env: 26 | MINIFORGE_HOME: $(MINIFORGE_HOME) 27 | CONDA_BLD_PATH: $(CONDA_BLD_PATH) 28 | PYTHONUNBUFFERED: 1 29 | CONFIG: $(CONFIG) 30 | CI: azure 31 | flow_run_id: azure_$(Build.BuildNumber).$(System.JobAttempt) 32 | remote_url: $(Build.Repository.Uri) 33 | sha: $(Build.SourceVersion) 34 | UPLOAD_PACKAGES: $(UPLOAD_PACKAGES) 35 | UPLOAD_TEMP: $(UPLOAD_TEMP) 36 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 37 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 38 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.ci_support/README: -------------------------------------------------------------------------------- 1 | This file is automatically generated by conda-smithy. If any 2 | particular build configuration is expected, but it is not found, 3 | please make sure all dependencies are satisfiable. To add/modify any 4 | matrix elements, you should create/change conda-smithy's input 5 | recipe/conda_build_config.yaml and re-render the recipe, rather than 6 | editing these files directly. 7 | -------------------------------------------------------------------------------- /.ci_support/linux_64_.yaml: -------------------------------------------------------------------------------- 1 | cdt_name: 2 | - conda 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - gxx 9 | cxx_compiler_version: 10 | - '13' 11 | docker_image: 12 | - quay.io/condaforge/linux-anvil-x86_64:cos7 13 | qt: 14 | - '5.15' 15 | target_platform: 16 | - linux-64 17 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_.yaml: -------------------------------------------------------------------------------- 1 | cdt_name: 2 | - conda 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - gxx 9 | cxx_compiler_version: 10 | - '13' 11 | docker_image: 12 | - quay.io/condaforge/linux-anvil-x86_64:cos7 13 | qt: 14 | - '5.15' 15 | target_platform: 16 | - linux-aarch64 17 | -------------------------------------------------------------------------------- /.ci_support/linux_ppc64le_.yaml: -------------------------------------------------------------------------------- 1 | cdt_name: 2 | - conda 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - gxx 9 | cxx_compiler_version: 10 | - '13' 11 | docker_image: 12 | - quay.io/condaforge/linux-anvil-x86_64:cos7 13 | qt: 14 | - '5.15' 15 | target_platform: 16 | - linux-ppc64le 17 | -------------------------------------------------------------------------------- /.ci_support/osx_64_.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.14' 3 | MACOSX_SDK_VERSION: 4 | - '10.14' 5 | channel_sources: 6 | - conda-forge 7 | channel_targets: 8 | - conda-forge main 9 | cxx_compiler: 10 | - clangxx 11 | cxx_compiler_version: 12 | - '18' 13 | macos_machine: 14 | - x86_64-apple-darwin13.4.0 15 | qt: 16 | - '5.15' 17 | target_platform: 18 | - osx-64 19 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | channel_sources: 6 | - conda-forge 7 | channel_targets: 8 | - conda-forge main 9 | cxx_compiler: 10 | - clangxx 11 | cxx_compiler_version: 12 | - '18' 13 | macos_machine: 14 | - arm64-apple-darwin20.0.0 15 | qt: 16 | - '5.15' 17 | target_platform: 18 | - osx-arm64 19 | -------------------------------------------------------------------------------- /.ci_support/win_64_.yaml: -------------------------------------------------------------------------------- 1 | channel_sources: 2 | - conda-forge 3 | channel_targets: 4 | - conda-forge main 5 | cxx_compiler: 6 | - vs2019 7 | qt: 8 | - '5.15' 9 | target_platform: 10 | - win-64 11 | -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: jinja-yaml -*- 4 | 5 | version: 2 6 | 7 | jobs: 8 | build: 9 | working_directory: ~/test 10 | machine: 11 | image: ubuntu-2004:current 12 | steps: 13 | - run: 14 | # The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish. 15 | command: exit 0 16 | 17 | workflows: 18 | version: 2 19 | build_and_test: 20 | jobs: 21 | - build: 22 | filters: 23 | branches: 24 | ignore: 25 | - /.*/ 26 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | 3 | *.patch binary 4 | *.diff binary 5 | meta.yaml text eol=lf 6 | build.sh text eol=lf 7 | bld.bat text eol=crlf 8 | 9 | # github helper pieces to make some files not show up in diffs automatically 10 | .azure-pipelines/* linguist-generated=true 11 | .circleci/* linguist-generated=true 12 | .ci_support/README linguist-generated=true 13 | .drone/* linguist-generated=true 14 | .drone.yml linguist-generated=true 15 | .github/* linguist-generated=true 16 | .travis/* linguist-generated=true 17 | .appveyor.yml linguist-generated=true 18 | .gitattributes linguist-generated=true 19 | .gitignore linguist-generated=true 20 | .travis.yml linguist-generated=true 21 | .scripts/* linguist-generated=true 22 | .woodpecker.yml linguist-generated=true 23 | /LICENSE.txt linguist-generated=true 24 | /README.md linguist-generated=true 25 | azure-pipelines.yml linguist-generated=true 26 | build-locally.py linguist-generated=true 27 | shippable.yml linguist-generated=true 28 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @conda-forge/qt-main -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # User content belongs under recipe/. 2 | # Feedstock configuration goes in `conda-forge.yml` 3 | # Everything else is managed by the conda-smithy rerender process. 4 | # Please do not modify 5 | 6 | # Ignore all files and folders in root 7 | * 8 | !/conda-forge.yml 9 | 10 | # Don't ignore any files/folders if the parent folder is 'un-ignored' 11 | # This also avoids warnings when adding an already-checked file with an ignored parent. 12 | !/**/ 13 | # Don't ignore any files/folders recursively in the following folders 14 | !/recipe/** 15 | !/.ci_support/** 16 | 17 | # Since we ignore files/folders recursively, any folders inside 18 | # build_artifacts gets ignored which trips some build systems. 19 | # To avoid that we 'un-ignore' all files/folders recursively 20 | # and only ignore the root build_artifacts folder. 21 | !/build_artifacts/** 22 | /build_artifacts 23 | 24 | *.pyc 25 | 26 | # Rattler-build's artifacts are in `output` when not specifying anything. 27 | /output 28 | # Pixi's configuration 29 | .pixi 30 | -------------------------------------------------------------------------------- /.scripts/build_steps.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | # -*- mode: jinja-shell -*- 9 | 10 | set -xeuo pipefail 11 | export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" 12 | source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh 13 | 14 | 15 | ( endgroup "Start Docker" ) 2> /dev/null 16 | 17 | ( startgroup "Configuring conda" ) 2> /dev/null 18 | 19 | export PYTHONUNBUFFERED=1 20 | export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" 21 | export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" 22 | export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" 23 | 24 | cat >~/.condarc < /opt/conda/conda-meta/history 36 | micromamba install --root-prefix ~/.conda --prefix /opt/conda \ 37 | --yes --override-channels --channel conda-forge --strict-channel-priority \ 38 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 39 | export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 40 | 41 | # set up the condarc 42 | setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 43 | 44 | source run_conda_forge_build_setup 45 | 46 | ( 47 | # Due to https://bugzilla.redhat.com/show_bug.cgi?id=1537564 old versions of rpm 48 | # are drastically slowed down when the number of file descriptors is very high. 49 | # This can be visible during a `yum install` step of a feedstock build. 50 | # => Set a lower limit in a subshell for the `yum install`s only. 51 | ulimit -n 1024 52 | 53 | # Install the yum requirements defined canonically in the 54 | # "recipe/yum_requirements.txt" file. After updating that file, 55 | # run "conda smithy rerender" and this line will be updated 56 | # automatically. 57 | /usr/bin/sudo -n yum install -y alsa-lib libXScrnSaver libXtst libXi libXcursor libXcomposite mesa-libGL mesa-dri-drivers libselinux libXdamage libXxf86vm libXext libX11-devel libXt-devel libXext-devel chrpath libXrender-devel gtk2-devel dbus-devel libSM-devel libICE-devel xorg-x11-server-Xvfb ruby 58 | ) 59 | 60 | # make the build number clobber 61 | make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 62 | 63 | if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${HOST_PLATFORM}" != linux-* ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then 64 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" 65 | fi 66 | 67 | 68 | ( endgroup "Configuring conda" ) 2> /dev/null 69 | 70 | if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then 71 | cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" 72 | fi 73 | 74 | if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then 75 | if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then 76 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" 77 | fi 78 | conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 79 | ${EXTRA_CB_OPTIONS:-} \ 80 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" 81 | 82 | # Drop into an interactive shell 83 | /bin/bash 84 | else 85 | conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 86 | --suppress-variables ${EXTRA_CB_OPTIONS:-} \ 87 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ 88 | --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" 89 | ( startgroup "Inspecting artifacts" ) 2> /dev/null 90 | 91 | # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 92 | command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 93 | 94 | ( endgroup "Inspecting artifacts" ) 2> /dev/null 95 | ( startgroup "Validating outputs" ) 2> /dev/null 96 | 97 | validate_recipe_outputs "${FEEDSTOCK_NAME}" 98 | 99 | ( endgroup "Validating outputs" ) 2> /dev/null 100 | 101 | ( startgroup "Uploading packages" ) 2> /dev/null 102 | 103 | if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then 104 | upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 105 | fi 106 | 107 | ( endgroup "Uploading packages" ) 2> /dev/null 108 | fi 109 | 110 | ( startgroup "Final checks" ) 2> /dev/null 111 | 112 | touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" -------------------------------------------------------------------------------- /.scripts/logging_utils.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Provide a unified interface for the different logging 4 | # utilities CI providers offer. If unavailable, provide 5 | # a compatible fallback (e.g. bare `echo xxxxxx`). 6 | 7 | function startgroup { 8 | # Start a foldable group of log lines 9 | # Pass a single argument, quoted 10 | case ${CI:-} in 11 | azure ) 12 | echo "##[group]$1";; 13 | travis ) 14 | echo "$1" 15 | echo -en 'travis_fold:start:'"${1// /}"'\r';; 16 | github_actions ) 17 | echo "::group::$1";; 18 | * ) 19 | echo "$1";; 20 | esac 21 | } 2> /dev/null 22 | 23 | function endgroup { 24 | # End a foldable group of log lines 25 | # Pass a single argument, quoted 26 | 27 | case ${CI:-} in 28 | azure ) 29 | echo "##[endgroup]";; 30 | travis ) 31 | echo -en 'travis_fold:end:'"${1// /}"'\r';; 32 | github_actions ) 33 | echo "::endgroup::";; 34 | esac 35 | } 2> /dev/null 36 | -------------------------------------------------------------------------------- /.scripts/run_docker_build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | source .scripts/logging_utils.sh 9 | 10 | ( startgroup "Configure Docker" ) 2> /dev/null 11 | 12 | set -xeo pipefail 13 | 14 | THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" 15 | PROVIDER_DIR="$(basename "$THISDIR")" 16 | 17 | FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )" 18 | RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" 19 | 20 | if [ -z ${FEEDSTOCK_NAME} ]; then 21 | export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) 22 | fi 23 | 24 | if [[ "${sha:-}" == "" ]]; then 25 | pushd "${FEEDSTOCK_ROOT}" 26 | sha=$(git rev-parse HEAD) 27 | popd 28 | fi 29 | 30 | docker info 31 | 32 | # In order for the conda-build process in the container to write to the mounted 33 | # volumes, we need to run with the same id as the host machine, which is 34 | # normally the owner of the mounted volumes, or at least has write permission 35 | export HOST_USER_ID=$(id -u) 36 | # Check if docker-machine is being used (normally on OSX) and get the uid from 37 | # the VM 38 | if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then 39 | export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) 40 | fi 41 | 42 | ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" 43 | 44 | if [ -z "$CONFIG" ]; then 45 | set +x 46 | FILES=`ls .ci_support/linux_*` 47 | CONFIGS="" 48 | for file in $FILES; do 49 | CONFIGS="${CONFIGS}'${file:12:-5}' or "; 50 | done 51 | echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" 52 | exit 1 53 | fi 54 | 55 | if [ -z "${DOCKER_IMAGE}" ]; then 56 | SHYAML_INSTALLED="$(shyaml -h || echo NO)" 57 | if [ "${SHYAML_INSTALLED}" == "NO" ]; then 58 | echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" 59 | DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) 60 | if [ "${DOCKER_IMAGE}" = "" ]; then 61 | echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7" 62 | DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7" 63 | fi 64 | else 65 | DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )" 66 | fi 67 | fi 68 | 69 | mkdir -p "$ARTIFACTS" 70 | DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" 71 | rm -f "$DONE_CANARY" 72 | 73 | # Allow people to specify extra default arguments to `docker run` (e.g. `--rm`) 74 | DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}" 75 | if [ -z "${CI}" ]; then 76 | DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" 77 | fi 78 | 79 | ( endgroup "Configure Docker" ) 2> /dev/null 80 | 81 | ( startgroup "Start Docker" ) 2> /dev/null 82 | 83 | export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" 84 | export IS_PR_BUILD="${IS_PR_BUILD:-False}" 85 | docker pull "${DOCKER_IMAGE}" 86 | docker run ${DOCKER_RUN_ARGS} \ 87 | -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ 88 | -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ 89 | -e CONFIG \ 90 | -e HOST_USER_ID \ 91 | -e UPLOAD_PACKAGES \ 92 | -e IS_PR_BUILD \ 93 | -e GIT_BRANCH \ 94 | -e UPLOAD_ON_BRANCH \ 95 | -e CI \ 96 | -e FEEDSTOCK_NAME \ 97 | -e CPU_COUNT \ 98 | -e BUILD_WITH_CONDA_DEBUG \ 99 | -e BUILD_OUTPUT_ID \ 100 | -e flow_run_id \ 101 | -e remote_url \ 102 | -e sha \ 103 | -e BINSTAR_TOKEN \ 104 | -e FEEDSTOCK_TOKEN \ 105 | -e STAGING_BINSTAR_TOKEN \ 106 | "${DOCKER_IMAGE}" \ 107 | bash \ 108 | "/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh" 109 | 110 | # verify that the end of the script was reached 111 | test -f "$DONE_CANARY" 112 | 113 | # This closes the last group opened in `build_steps.sh` 114 | ( endgroup "Final checks" ) 2> /dev/null -------------------------------------------------------------------------------- /.scripts/run_osx_build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # -*- mode: jinja-shell -*- 4 | 5 | source .scripts/logging_utils.sh 6 | 7 | set -xe 8 | 9 | MINIFORGE_HOME="${MINIFORGE_HOME:-${HOME}/miniforge3}" 10 | MINIFORGE_HOME="${MINIFORGE_HOME%/}" # remove trailing slash 11 | export CONDA_BLD_PATH="${CONDA_BLD_PATH:-${MINIFORGE_HOME}/conda-bld}" 12 | 13 | ( startgroup "Provisioning base env with micromamba" ) 2> /dev/null 14 | MICROMAMBA_VERSION="1.5.10-0" 15 | if [[ "$(uname -m)" == "arm64" ]]; then 16 | osx_arch="osx-arm64" 17 | else 18 | osx_arch="osx-64" 19 | fi 20 | MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" 21 | MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" 22 | echo "Downloading micromamba ${MICROMAMBA_VERSION}" 23 | micromamba_exe="$(mktemp -d)/micromamba" 24 | curl -L -o "${micromamba_exe}" "${MICROMAMBA_URL}" 25 | chmod +x "${micromamba_exe}" 26 | echo "Creating environment" 27 | "${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ 28 | --channel conda-forge \ 29 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 30 | echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" 31 | mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" 32 | echo "Cleaning up micromamba" 33 | rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true 34 | ( endgroup "Provisioning base env with micromamba" ) 2> /dev/null 35 | 36 | ( startgroup "Configuring conda" ) 2> /dev/null 37 | echo "Activating environment" 38 | source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" 39 | conda activate base 40 | export CONDA_SOLVER="libmamba" 41 | export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 42 | 43 | 44 | 45 | 46 | 47 | echo -e "\n\nSetting up the condarc and mangling the compiler." 48 | setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml 49 | 50 | if [[ "${CI:-}" != "" ]]; then 51 | mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml 52 | fi 53 | 54 | if [[ "${CI:-}" != "" ]]; then 55 | echo -e "\n\nMangling homebrew in the CI to avoid conflicts." 56 | /usr/bin/sudo mangle_homebrew 57 | /usr/bin/sudo -k 58 | else 59 | echo -e "\n\nNot mangling homebrew as we are not running in CI" 60 | fi 61 | 62 | if [[ "${sha:-}" == "" ]]; then 63 | sha=$(git rev-parse HEAD) 64 | fi 65 | 66 | echo -e "\n\nRunning the build setup script." 67 | source run_conda_forge_build_setup 68 | 69 | 70 | 71 | ( endgroup "Configuring conda" ) 2> /dev/null 72 | 73 | echo -e "\n\nMaking the build clobber file" 74 | make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml 75 | 76 | if [[ -f LICENSE.txt ]]; then 77 | cp LICENSE.txt "recipe/recipe-scripts-license.txt" 78 | fi 79 | 80 | if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then 81 | if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then 82 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" 83 | fi 84 | conda debug ./recipe -m ./.ci_support/${CONFIG}.yaml \ 85 | ${EXTRA_CB_OPTIONS:-} \ 86 | --clobber-file ./.ci_support/clobber_${CONFIG}.yaml 87 | 88 | # Drop into an interactive shell 89 | /bin/bash 90 | else 91 | 92 | if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then 93 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" 94 | fi 95 | 96 | conda-build ./recipe -m ./.ci_support/${CONFIG}.yaml \ 97 | --suppress-variables ${EXTRA_CB_OPTIONS:-} \ 98 | --clobber-file ./.ci_support/clobber_${CONFIG}.yaml \ 99 | --extra-meta flow_run_id="$flow_run_id" remote_url="$remote_url" sha="$sha" 100 | 101 | ( startgroup "Inspecting artifacts" ) 2> /dev/null 102 | 103 | # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 104 | command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir ./recipe -m ./.ci_support/${CONFIG}.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 105 | 106 | ( endgroup "Inspecting artifacts" ) 2> /dev/null 107 | ( startgroup "Validating outputs" ) 2> /dev/null 108 | 109 | validate_recipe_outputs "${FEEDSTOCK_NAME}" 110 | 111 | ( endgroup "Validating outputs" ) 2> /dev/null 112 | 113 | ( startgroup "Uploading packages" ) 2> /dev/null 114 | 115 | if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then 116 | upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml 117 | fi 118 | 119 | ( endgroup "Uploading packages" ) 2> /dev/null 120 | fi -------------------------------------------------------------------------------- /.scripts/run_win_build.bat: -------------------------------------------------------------------------------- 1 | :: PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 2 | :: will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 3 | :: changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 4 | :: benefit from the improvement. 5 | 6 | :: INPUTS (required environment variables) 7 | :: CONFIG: name of the .ci_support/*.yaml file for this job 8 | :: CI: azure, github_actions, or unset 9 | :: MINIFORGE_HOME: where to install the base conda environment 10 | :: UPLOAD_PACKAGES: true or false 11 | :: UPLOAD_ON_BRANCH: true or false 12 | 13 | setlocal enableextensions enabledelayedexpansion 14 | 15 | FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" 16 | if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" 17 | :: Remove trailing backslash, if present 18 | if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" 19 | call :start_group "Provisioning base env with micromamba" 20 | set "MAMBA_ROOT_PREFIX=%MINIFORGE_HOME%-micromamba-%RANDOM%" 21 | set "MICROMAMBA_VERSION=1.5.10-0" 22 | set "MICROMAMBA_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-64" 23 | set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" 24 | set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" 25 | 26 | echo Downloading micromamba %MICROMAMBA_VERSION% 27 | if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" 28 | powershell -ExecutionPolicy Bypass -Command "(New-Object Net.WebClient).DownloadFile('%MICROMAMBA_URL%', '%MICROMAMBA_EXE%')" 29 | if !errorlevel! neq 0 exit /b !errorlevel! 30 | 31 | echo Creating environment 32 | call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefix "%MINIFORGE_HOME%" ^ 33 | --channel conda-forge ^ 34 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 35 | if !errorlevel! neq 0 exit /b !errorlevel! 36 | echo Removing %MAMBA_ROOT_PREFIX% 37 | del /S /Q "%MAMBA_ROOT_PREFIX%" >nul 38 | del /S /Q "%MICROMAMBA_TMPDIR%" >nul 39 | call :end_group 40 | 41 | call :start_group "Configuring conda" 42 | 43 | :: Activate the base conda environment 44 | echo Activating environment 45 | call "%MINIFORGE_HOME%\Scripts\activate.bat" 46 | :: Configure the solver 47 | set "CONDA_SOLVER=libmamba" 48 | if !errorlevel! neq 0 exit /b !errorlevel! 49 | set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" 50 | 51 | :: Set basic configuration 52 | echo Setting up configuration 53 | setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml 54 | if !errorlevel! neq 0 exit /b !errorlevel! 55 | echo Running build setup 56 | CALL run_conda_forge_build_setup 57 | 58 | 59 | if !errorlevel! neq 0 exit /b !errorlevel! 60 | 61 | if EXIST LICENSE.txt ( 62 | echo Copying feedstock license 63 | copy LICENSE.txt "recipe\\recipe-scripts-license.txt" 64 | ) 65 | if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( 66 | if [%CROSSCOMPILING_EMULATOR%] == [] ( 67 | set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test" 68 | ) 69 | ) 70 | 71 | if NOT [%flow_run_id%] == [] ( 72 | set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% remote_url=%remote_url% sha=%sha%" 73 | ) 74 | 75 | call :end_group 76 | 77 | :: Build the recipe 78 | echo Building recipe 79 | conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% 80 | if !errorlevel! neq 0 exit /b !errorlevel! 81 | 82 | call :start_group "Inspecting artifacts" 83 | :: inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 84 | WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir ".\recipe" -m .ci_support\%CONFIG%.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 85 | call :end_group 86 | 87 | :: Prepare some environment variables for the upload step 88 | if /i "%CI%" == "github_actions" ( 89 | set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" 90 | set "GIT_BRANCH=%GITHUB_REF:refs/heads/=%" 91 | if /i "%GITHUB_EVENT_NAME%" == "pull_request" ( 92 | set "IS_PR_BUILD=True" 93 | ) else ( 94 | set "IS_PR_BUILD=False" 95 | ) 96 | set "TEMP=%RUNNER_TEMP%" 97 | ) 98 | if /i "%CI%" == "azure" ( 99 | set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" 100 | set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" 101 | if /i "%BUILD_REASON%" == "PullRequest" ( 102 | set "IS_PR_BUILD=True" 103 | ) else ( 104 | set "IS_PR_BUILD=False" 105 | ) 106 | set "TEMP=%UPLOAD_TEMP%" 107 | ) 108 | 109 | :: Validate 110 | call :start_group "Validating outputs" 111 | validate_recipe_outputs "%FEEDSTOCK_NAME%" 112 | if !errorlevel! neq 0 exit /b !errorlevel! 113 | call :end_group 114 | 115 | if /i "%UPLOAD_PACKAGES%" == "true" ( 116 | if /i "%IS_PR_BUILD%" == "false" ( 117 | call :start_group "Uploading packages" 118 | if not exist "%TEMP%\" md "%TEMP%" 119 | set "TMP=%TEMP%" 120 | upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml 121 | if !errorlevel! neq 0 exit /b !errorlevel! 122 | call :end_group 123 | ) 124 | ) 125 | 126 | exit 127 | 128 | :: Logging subroutines 129 | 130 | :start_group 131 | if /i "%CI%" == "github_actions" ( 132 | echo ::group::%~1 133 | exit /b 134 | ) 135 | if /i "%CI%" == "azure" ( 136 | echo ##[group]%~1 137 | exit /b 138 | ) 139 | echo %~1 140 | exit /b 141 | 142 | :end_group 143 | if /i "%CI%" == "github_actions" ( 144 | echo ::endgroup:: 145 | exit /b 146 | ) 147 | if /i "%CI%" == "azure" ( 148 | echo ##[endgroup] 149 | exit /b 150 | ) 151 | exit /b -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | BSD-3-Clause license 2 | Copyright (c) 2015-2022, conda-forge contributors 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, 9 | this list of conditions and the following disclaimer. 10 | 2. Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 3. Neither the name of the copyright holder nor the names of its 14 | contributors may be used to endorse or promote products derived from 15 | this software without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR 21 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 23 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 24 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 27 | DAMAGE. 28 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | About qt-feedstock 2 | ================== 3 | 4 | Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/qt-feedstock/blob/main/LICENSE.txt) 5 | 6 | Home: http://qt-project.org 7 | 8 | Package license: LGPL-3.0-only 9 | 10 | Summary: Qt is a cross-platform application and UI framework. 11 | 12 | Development: https://github.com/qtproject 13 | 14 | Documentation: http://doc.qt.io/ 15 | 16 | Qt helps you create connected devices, UIs & applications that run 17 | anywhere on any device, on any operating system at any time. 18 | 19 | 20 | Current build status 21 | ==================== 22 | 23 | 24 | 25 | 26 | 27 | 28 | 84 | 85 |
Azure 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 46 | 51 | 52 | 53 | 58 | 59 | 60 | 65 | 66 | 67 | 72 | 73 | 74 | 79 | 80 | 81 |
VariantStatus
linux_64 40 | 41 | variant 42 | 43 |
linux_aarch64 47 | 48 | variant 49 | 50 |
linux_ppc64le 54 | 55 | variant 56 | 57 |
osx_64 61 | 62 | variant 63 | 64 |
osx_arm64 68 | 69 | variant 70 | 71 |
win_64 75 | 76 | variant 77 | 78 |
82 |
83 |
86 | 87 | Current release info 88 | ==================== 89 | 90 | | Name | Downloads | Version | Platforms | 91 | | --- | --- | --- | --- | 92 | | [![Conda Recipe](https://img.shields.io/badge/recipe-qt-green.svg)](https://anaconda.org/conda-forge/qt) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/qt.svg)](https://anaconda.org/conda-forge/qt) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/qt.svg)](https://anaconda.org/conda-forge/qt) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/qt.svg)](https://anaconda.org/conda-forge/qt) | 93 | 94 | Installing qt 95 | ============= 96 | 97 | Installing `qt` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with: 98 | 99 | ``` 100 | conda config --add channels conda-forge 101 | conda config --set channel_priority strict 102 | ``` 103 | 104 | Once the `conda-forge` channel has been enabled, `qt` can be installed with `conda`: 105 | 106 | ``` 107 | conda install qt 108 | ``` 109 | 110 | or with `mamba`: 111 | 112 | ``` 113 | mamba install qt 114 | ``` 115 | 116 | It is possible to list all of the versions of `qt` available on your platform with `conda`: 117 | 118 | ``` 119 | conda search qt --channel conda-forge 120 | ``` 121 | 122 | or with `mamba`: 123 | 124 | ``` 125 | mamba search qt --channel conda-forge 126 | ``` 127 | 128 | Alternatively, `mamba repoquery` may provide more information: 129 | 130 | ``` 131 | # Search all versions available on your platform: 132 | mamba repoquery search qt --channel conda-forge 133 | 134 | # List packages depending on `qt`: 135 | mamba repoquery whoneeds qt --channel conda-forge 136 | 137 | # List dependencies of `qt`: 138 | mamba repoquery depends qt --channel conda-forge 139 | ``` 140 | 141 | 142 | About conda-forge 143 | ================= 144 | 145 | [![Powered by 146 | NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](https://numfocus.org) 147 | 148 | conda-forge is a community-led conda channel of installable packages. 149 | In order to provide high-quality builds, the process has been automated into the 150 | conda-forge GitHub organization. The conda-forge organization contains one repository 151 | for each of the installable packages. Such a repository is known as a *feedstock*. 152 | 153 | A feedstock is made up of a conda recipe (the instructions on what and how to build 154 | the package) and the necessary configurations for automatic building using freely 155 | available continuous integration services. Thanks to the awesome service provided by 156 | [Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/), 157 | [CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), 158 | [Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) 159 | it is possible to build and upload installable packages to the 160 | [conda-forge](https://anaconda.org/conda-forge) [anaconda.org](https://anaconda.org/) 161 | channel for Linux, Windows and OSX respectively. 162 | 163 | To manage the continuous integration and simplify feedstock maintenance 164 | [conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed. 165 | Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of 166 | this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``. 167 | 168 | For more information please check the [conda-forge documentation](https://conda-forge.org/docs/). 169 | 170 | Terminology 171 | =========== 172 | 173 | **feedstock** - the conda recipe (raw material), supporting scripts and CI configuration. 174 | 175 | **conda-smithy** - the tool which helps orchestrate the feedstock. 176 | Its primary use is in the construction of the CI ``.yml`` files 177 | and simplify the management of *many* feedstocks. 178 | 179 | **conda-forge** - the place where the feedstock and smithy live and work to 180 | produce the finished article (built conda distributions) 181 | 182 | 183 | Updating qt-feedstock 184 | ===================== 185 | 186 | If you would like to improve the qt recipe or build a new 187 | package version, please fork this repository and submit a PR. Upon submission, 188 | your changes will be run on the appropriate platforms to give the reviewer an 189 | opportunity to confirm that the changes result in a successful build. Once 190 | merged, the recipe will be re-built and uploaded automatically to the 191 | `conda-forge` channel, whereupon the built conda packages will be available for 192 | everybody to install and use from the `conda-forge` channel. 193 | Note that all branches in the conda-forge/qt-feedstock are 194 | immediately built and any created packages are uploaded, so PRs should be based 195 | on branches in forks and branches in the main repository should only be used to 196 | build distinct package versions. 197 | 198 | In order to produce a uniquely identifiable distribution: 199 | * If the version of a package **is not** being increased, please add or increase 200 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string). 201 | * If the version of a package **is** being increased, please remember to return 202 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string) 203 | back to 0. 204 | 205 | Feedstock Maintainers 206 | ===================== 207 | 208 | * [@conda-forge/qt-main](https://github.com/orgs/conda-forge/teams/qt-main/) 209 | 210 | -------------------------------------------------------------------------------- /azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | stages: 6 | - stage: Check 7 | jobs: 8 | - job: Skip 9 | pool: 10 | vmImage: 'ubuntu-22.04' 11 | variables: 12 | DECODE_PERCENTS: 'false' 13 | RET: 'true' 14 | steps: 15 | - checkout: self 16 | fetchDepth: '2' 17 | - bash: | 18 | git_log=`git log --max-count=1 --skip=1 --pretty=format:"%B" | tr "\n" " "` 19 | echo "##vso[task.setvariable variable=log]$git_log" 20 | displayName: Obtain commit message 21 | - bash: echo "##vso[task.setvariable variable=RET]false" 22 | condition: and(eq(variables['Build.Reason'], 'PullRequest'), or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]'))) 23 | displayName: Skip build? 24 | - bash: echo "##vso[task.setvariable variable=start_main;isOutput=true]$RET" 25 | name: result 26 | displayName: Export result 27 | - stage: Build 28 | condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true')) 29 | dependsOn: Check 30 | jobs: 31 | - template: ./.azure-pipelines/azure-pipelines-linux.yml 32 | - template: ./.azure-pipelines/azure-pipelines-osx.yml 33 | - template: ./.azure-pipelines/azure-pipelines-win.yml -------------------------------------------------------------------------------- /build-locally.py: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | """exec" "python3" "$0" "$@" #""" # fmt: off # fmt: on 3 | # 4 | # This file has been generated by conda-smithy in order to build the recipe 5 | # locally. 6 | # 7 | # The line above this comment is a bash / sh / zsh guard 8 | # to stop people from running it with the wrong interpreter 9 | import glob 10 | import os 11 | import platform 12 | import subprocess 13 | import sys 14 | from argparse import ArgumentParser 15 | 16 | 17 | def setup_environment(ns): 18 | os.environ["CONFIG"] = ns.config 19 | os.environ["UPLOAD_PACKAGES"] = "False" 20 | os.environ["IS_PR_BUILD"] = "True" 21 | if ns.debug: 22 | os.environ["BUILD_WITH_CONDA_DEBUG"] = "1" 23 | if ns.output_id: 24 | os.environ["BUILD_OUTPUT_ID"] = ns.output_id 25 | if "MINIFORGE_HOME" not in os.environ: 26 | os.environ["MINIFORGE_HOME"] = os.path.join( 27 | os.path.dirname(__file__), "miniforge3" 28 | ) 29 | 30 | # The default cache location might not be writable using docker on macOS. 31 | if ns.config.startswith("linux") and platform.system() == "Darwin": 32 | os.environ["CONDA_FORGE_DOCKER_RUN_ARGS"] = ( 33 | os.environ.get("CONDA_FORGE_DOCKER_RUN_ARGS", "") 34 | + " -e RATTLER_CACHE_DIR=/tmp/rattler_cache" 35 | ) 36 | 37 | 38 | def run_docker_build(ns): 39 | script = ".scripts/run_docker_build.sh" 40 | subprocess.check_call([script]) 41 | 42 | 43 | def run_osx_build(ns): 44 | script = ".scripts/run_osx_build.sh" 45 | subprocess.check_call([script]) 46 | 47 | 48 | def run_win_build(ns): 49 | script = ".scripts/run_win_build.bat" 50 | subprocess.check_call(["cmd", "/D", "/Q", "/C", f"CALL {script}"]) 51 | 52 | 53 | def verify_config(ns): 54 | choices_filter = ns.filter or "*" 55 | valid_configs = { 56 | os.path.basename(f)[:-5] 57 | for f in glob.glob(f".ci_support/{choices_filter}.yaml") 58 | } 59 | if choices_filter != "*": 60 | print(f"filtering for '{choices_filter}.yaml' configs") 61 | print(f"valid configs are {valid_configs}") 62 | if ns.config in valid_configs: 63 | print("Using " + ns.config + " configuration") 64 | return 65 | elif len(valid_configs) == 1: 66 | ns.config = valid_configs.pop() 67 | print("Found " + ns.config + " configuration") 68 | elif ns.config is None: 69 | print("config not selected, please choose from the following:\n") 70 | selections = list(enumerate(sorted(valid_configs), 1)) 71 | for i, c in selections: 72 | print(f"{i}. {c}") 73 | try: 74 | s = input("\n> ") 75 | except KeyboardInterrupt: 76 | print("\nno option selected, bye!", file=sys.stderr) 77 | sys.exit(1) 78 | idx = int(s) - 1 79 | ns.config = selections[idx][1] 80 | print(f"selected {ns.config}") 81 | else: 82 | raise ValueError("config " + ns.config + " is not valid") 83 | if ( 84 | ns.config.startswith("osx") 85 | and platform.system() == "Darwin" 86 | and not os.environ.get("OSX_SDK_DIR") 87 | ): 88 | raise RuntimeError( 89 | "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " 90 | "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " 91 | "Note: OSX_SDK_DIR must be set to an absolute path. " 92 | "Setting this variable implies agreement to the licensing terms of the SDK by Apple." 93 | ) 94 | 95 | 96 | def main(args=None): 97 | p = ArgumentParser("build-locally") 98 | p.add_argument("config", default=None, nargs="?") 99 | p.add_argument( 100 | "--filter", 101 | default=None, 102 | help="Glob string to filter which build choices are presented in interactive mode.", 103 | ) 104 | p.add_argument( 105 | "--debug", 106 | action="store_true", 107 | help="Setup debug environment using `conda debug`", 108 | ) 109 | p.add_argument( 110 | "--output-id", help="If running debug, specify the output to setup." 111 | ) 112 | 113 | ns = p.parse_args(args=args) 114 | verify_config(ns) 115 | setup_environment(ns) 116 | 117 | try: 118 | if ns.config.startswith("linux") or ( 119 | ns.config.startswith("osx") and platform.system() == "Linux" 120 | ): 121 | run_docker_build(ns) 122 | elif ns.config.startswith("osx"): 123 | run_osx_build(ns) 124 | elif ns.config.startswith("win"): 125 | run_win_build(ns) 126 | finally: 127 | recipe_license_file = os.path.join( 128 | "recipe", "recipe-scripts-license.txt" 129 | ) 130 | if os.path.exists(recipe_license_file): 131 | os.remove(recipe_license_file) 132 | 133 | 134 | if __name__ == "__main__": 135 | main() 136 | -------------------------------------------------------------------------------- /conda-forge.yml: -------------------------------------------------------------------------------- 1 | build_platform: 2 | osx_arm64: osx_64 3 | linux_aarch64: linux_64 4 | linux_ppc64le: linux_64 5 | conda_forge_output_validation: true 6 | github: 7 | branch_name: main 8 | tooling_branch_name: main 9 | os_version: 10 | linux_64: cos7 11 | provider: 12 | linux_aarch64: azure 13 | test: native_and_emulated 14 | conda_build: 15 | pkg_format: '2' 16 | -------------------------------------------------------------------------------- /recipe/LICENSE.LGPLv3: -------------------------------------------------------------------------------- 1 | GNU LESSER GENERAL PUBLIC LICENSE 2 | 3 | The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd. 4 | Contact: http://www.qt.io/licensing/ 5 | 6 | You may use, distribute and copy the Qt Toolkit under the terms of 7 | GNU Lesser General Public License version 3, which is displayed below. 8 | This license makes reference to the version 3 of the GNU General 9 | Public License, which you can find in the LICENSE.GPLv3 file. 10 | 11 | ------------------------------------------------------------------------- 12 | 13 | GNU LESSER GENERAL PUBLIC LICENSE 14 | Version 3, 29 June 2007 15 | 16 | Copyright © 2007 Free Software Foundation, Inc. 17 | Everyone is permitted to copy and distribute verbatim copies of this 18 | licensedocument, but changing it is not allowed. 19 | 20 | This version of the GNU Lesser General Public License incorporates 21 | the terms and conditions of version 3 of the GNU General Public 22 | License, supplemented by the additional permissions listed below. 23 | 24 | 0. Additional Definitions. 25 | 26 | As used herein, “this License” refers to version 3 of the GNU Lesser 27 | General Public License, and the “GNU GPL” refers to version 3 of the 28 | GNU General Public License. 29 | 30 | “The Library” refers to a covered work governed by this License, 31 | other than an Application or a Combined Work as defined below. 32 | 33 | An “Application” is any work that makes use of an interface provided 34 | by the Library, but which is not otherwise based on the Library. 35 | Defining a subclass of a class defined by the Library is deemed a mode 36 | of using an interface provided by the Library. 37 | 38 | A “Combined Work” is a work produced by combining or linking an 39 | Application with the Library. The particular version of the Library 40 | with which the Combined Work was made is also called the “Linked 41 | Version”. 42 | 43 | The “Minimal Corresponding Source” for a Combined Work means the 44 | Corresponding Source for the Combined Work, excluding any source code 45 | for portions of the Combined Work that, considered in isolation, are 46 | based on the Application, and not on the Linked Version. 47 | 48 | The “Corresponding Application Code” for a Combined Work means the 49 | object code and/or source code for the Application, including any data 50 | and utility programs needed for reproducing the Combined Work from the 51 | Application, but excluding the System Libraries of the Combined Work. 52 | 53 | 1. Exception to Section 3 of the GNU GPL. 54 | 55 | You may convey a covered work under sections 3 and 4 of this License 56 | without being bound by section 3 of the GNU GPL. 57 | 58 | 2. Conveying Modified Versions. 59 | 60 | If you modify a copy of the Library, and, in your modifications, a 61 | facility refers to a function or data to be supplied by an Application 62 | that uses the facility (other than as an argument passed when the 63 | facility is invoked), then you may convey a copy of the modified 64 | version: 65 | 66 | a) under this License, provided that you make a good faith effort 67 | to ensure that, in the event an Application does not supply the 68 | function or data, the facility still operates, and performs 69 | whatever part of its purpose remains meaningful, or 70 | 71 | b) under the GNU GPL, with none of the additional permissions of 72 | this License applicable to that copy. 73 | 74 | 3. Object Code Incorporating Material from Library Header Files. 75 | 76 | The object code form of an Application may incorporate material from 77 | a header file that is part of the Library. You may convey such object 78 | code under terms of your choice, provided that, if the incorporated 79 | material is not limited to numerical parameters, data structure 80 | layouts and accessors, or small macros, inline functions and templates 81 | (ten or fewer lines in length), you do both of the following: 82 | 83 | a) Give prominent notice with each copy of the object code that 84 | the Library is used in it and that the Library and its use are 85 | covered by this License. 86 | 87 | b) Accompany the object code with a copy of the GNU GPL and this 88 | license document. 89 | 90 | 4. Combined Works. 91 | 92 | You may convey a Combined Work under terms of your choice that, taken 93 | together, effectively do not restrict modification of the portions of 94 | the Library contained in the Combined Work and reverse engineering for 95 | debugging such modifications, if you also do each of the following: 96 | 97 | a) Give prominent notice with each copy of the Combined Work that 98 | the Library is used in it and that the Library and its use are 99 | covered by this License. 100 | 101 | b) Accompany the Combined Work with a copy of the GNU GPL and this 102 | license document. 103 | 104 | c) For a Combined Work that displays copyright notices during 105 | execution, include the copyright notice for the Library among 106 | these notices, as well as a reference directing the user to the 107 | copies of the GNU GPL and this license document. 108 | 109 | d) Do one of the following: 110 | 111 | 0) Convey the Minimal Corresponding Source under the terms of 112 | this License, and the Corresponding Application Code in a form 113 | suitable for, and under terms that permit, the user to 114 | recombine or relink the Application with a modified version of 115 | the Linked Version to produce a modified Combined Work, in the 116 | manner specified by section 6 of the GNU GPL for conveying 117 | Corresponding Source. 118 | 119 | 1) Use a suitable shared library mechanism for linking with 120 | the Library. A suitable mechanism is one that (a) uses at run 121 | time a copy of the Library already present on the user's 122 | computer system, and (b) will operate properly with a modified 123 | version of the Library that is interface-compatible with the 124 | Linked Version. 125 | 126 | e) Provide Installation Information, but only if you would 127 | otherwise be required to provide such information under section 6 128 | of the GNU GPL, and only to the extent that such information is 129 | necessary to install and execute a modified version of the 130 | Combined Work produced by recombining or relinking the Application 131 | with a modified version of the Linked Version. (If you use option 132 | 4d0, the Installation Information must accompany the Minimal 133 | Corresponding Source and Corresponding Application Code. If you 134 | use option 4d1, you must provide the Installation Information in 135 | the manner specified by section 6 of the GNU GPL for conveying 136 | Corresponding Source.) 137 | 138 | 5. Combined Libraries. 139 | 140 | You may place library facilities that are a work based on the Library 141 | side by side in a single library together with other library 142 | facilities that are not Applications and are not covered by this 143 | License, and convey such a combined library under terms of your 144 | choice, if you do both of the following: 145 | 146 | a) Accompany the combined library with a copy of the same work 147 | based on the Library, uncombined with any other library 148 | facilities, conveyed under the terms of this License. 149 | 150 | b) Give prominent notice with the combined library that part of 151 | it is a work based on the Library, and explaining where to find 152 | the accompanying uncombined form of the same work. 153 | 154 | 6. Revised Versions of the GNU Lesser General Public License. 155 | 156 | The Free Software Foundation may publish revised and/or new versions 157 | of the GNU Lesser General Public License from time to time. Such new 158 | versions will be similar in spirit to the present version, but may 159 | differ in detail to address new problems or concerns. 160 | 161 | Each version is given a distinguishing version number. If the Library 162 | as you received it specifies that a certain numbered version of the 163 | GNU Lesser General Public License “or any later version” applies to 164 | it, you have the option of following the terms and conditions either 165 | of that published version or of any later version published by the 166 | Free Software Foundation. If the Library as you received it does not 167 | specify a version number of the GNU Lesser General Public License, 168 | you may choose any version of the GNU Lesser General Public License 169 | ever published by the Free Software Foundation. 170 | 171 | If the Library as you received it specifies that a proxy can decide 172 | whether future versions of the GNU Lesser General Public License shall 173 | apply, that proxy's public statement of acceptance of any version is 174 | permanent authorization for you to choose that version for the Library. 175 | 176 | -------------------------------------------------------------------------------- /recipe/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib_version: # [osx] 2 | - '10.14' # [osx] -------------------------------------------------------------------------------- /recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | # This has become a metapacakge for qt-base and other related packages 2 | {% set version = "5.15.15" %} 3 | 4 | package: 5 | name: qt 6 | version: {{ version }} 7 | 8 | # Add a dummy source so that the bot helps us keep this up to date 9 | source: 10 | url: https://download.qt.io/official_releases/qt/{{ version.rpartition('.')[0] }}/{{ version }}/submodules/qtbase-everywhere-opensource-src-{{ version }}.tar.xz 11 | sha256: e5f941fecf694ecba97c550b45b0634e552166cc6c815bcfdc481edd62796ba1 12 | 13 | build: 14 | number: 0 15 | run_exports: 16 | - {{ pin_subpackage('qt', max_pin='x.x') }} 17 | 18 | requirements: 19 | run: 20 | - qt-main {{ version }}.* 21 | # qt-webengine sometimes goes more out of sync due to 22 | # the fact that they release open source releases more frequently 23 | # qt-webengine does not support ppc64le 24 | # (https://github.com/conda-forge/qt-webengine-feedstock/pull/21) 25 | - qt-webengine {{ version }}.* # [not ppc64le] 26 | 27 | test: 28 | requires: 29 | - make # [unix] 30 | - {{ compiler('cxx') }} 31 | - {{ cdt('xorg-x11-proto-devel') }} # [linux] 32 | - {{ cdt('libx11-devel') }} # [linux] 33 | - {{ cdt('libxext-devel') }} # [linux] 34 | - {{ cdt('libxrender-devel') }} # [linux] 35 | - {{ cdt('mesa-libgl-devel') }} # [linux] 36 | - {{ cdt('mesa-libegl-devel') }} # [linux] 37 | - {{ cdt('mesa-dri-drivers') }} # [linux] 38 | - {{ cdt('libxau-devel') }} # [linux] 39 | - {{ cdt('alsa-lib-devel') }} # [linux] 40 | - {{ cdt('gtk2-devel') }} # [linux] 41 | - {{ cdt('gtkmm24-devel') }} # [linux] 42 | - {{ cdt('libdrm-devel') }} # [linux] 43 | - {{ cdt('libxcomposite-devel') }} # [linux] 44 | - {{ cdt('libxcursor-devel') }} # [linux] 45 | - {{ cdt('libxi-devel') }} # [linux] 46 | - {{ cdt('libxrandr-devel') }} # [linux] 47 | - {{ cdt('pciutils-devel') }} # [linux] 48 | - {{ cdt('libxscrnsaver-devel') }} # [linux] 49 | - {{ cdt('libxtst-devel') }} # [linux] 50 | - {{ cdt('libselinux-devel') }} # [linux] 51 | - {{ cdt('libxdamage') }} # [linux] 52 | - {{ cdt('libxdamage-devel') }} # [linux] 53 | - {{ cdt('libxfixes') }} # [linux] 54 | - {{ cdt('libxfixes-devel') }} # [linux] 55 | - {{ cdt('libxxf86vm') }} # [linux] 56 | - {{ cdt('libxcb') }} # [linux] 57 | - {{ cdt('expat-devel') }} # [linux] 58 | - {{ cdt('pcre') }} # [linux and cdt_name != 'cos6'] 59 | - {{ cdt('libglvnd-glx') }} # [linux and cdt_name != 'cos6'] 60 | files: 61 | - test/hello.pro 62 | - test/main-qtwebengine.cpp 63 | - test/main.cpp 64 | - test/main.qml 65 | - test/qml.qrc 66 | - test/qrc_qml.cpp 67 | - test/qtwebengine.pro 68 | - xcodebuild 69 | - xcrun 70 | commands: 71 | - if not exist %LIBRARY_BIN%\\Qt5WebEngine_conda.dll exit 1 # [win] 72 | - if not exist %LIBRARY_BIN%\\Qt5Core_conda.dll exit 1 # [win] 73 | - if not exist %LIBRARY_BIN%\\Qt5Gui_conda.dll exit 1 # [win] 74 | - test -f $PREFIX/lib/libQt5WebEngine${SHLIB_EXT} # [unix and not ppc64le] 75 | - test -f $PREFIX/lib/libQt5Core${SHLIB_EXT} # [unix] 76 | - test -f $PREFIX/lib/libQt5Gui${SHLIB_EXT} # [unix] 77 | # sql plugin 78 | - test -f $PREFIX/plugins/sqldrivers/libqsqlite${SHLIB_EXT} # [unix] 79 | - if not exist %LIBRARY_PREFIX%\plugins\sqldrivers\qsqlite.dll exit 1 # [win] 80 | 81 | about: 82 | home: http://qt-project.org 83 | license: LGPL-3.0-only 84 | license_file: LICENSE.LGPLv3 85 | summary: 'Qt is a cross-platform application and UI framework.' 86 | description: | 87 | Qt helps you create connected devices, UIs & applications that run 88 | anywhere on any device, on any operating system at any time. 89 | doc_url: http://doc.qt.io/ 90 | dev_url: https://github.com/qtproject 91 | 92 | extra: 93 | recipe-maintainers: 94 | - conda-forge/qt-main 95 | -------------------------------------------------------------------------------- /recipe/run_test.bat: -------------------------------------------------------------------------------- 1 | pushd test 2 | if exist .qmake.stash del /a .qmake.stash 3 | qmake hello.pro 4 | if %ErrorLevel% neq 0 exit /b 1 5 | nmake 6 | if %ErrorLevel% neq 0 exit /b 1 7 | :: Only test that this builds 8 | nmake clean 9 | if %ErrorLevel% neq 0 exit /b 1 10 | qmake qtwebengine.pro 11 | if %ErrorLevel% neq 0 exit /b 1 12 | nmake 13 | if %ErrorLevel% neq 0 exit /b 1 14 | popd 15 | -------------------------------------------------------------------------------- /recipe/run_test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -ex 4 | 5 | cd test 6 | ln -s ${GXX} g++ 7 | cp ../xcrun . 8 | cp ../xcodebuild . 9 | export PATH=${PWD}:${PATH} 10 | qmake hello.pro 11 | make 12 | ./hello 13 | # Only test that this builds 14 | make clean 15 | 16 | if [[ $target_platform != "linux-ppc64le" ]]; then 17 | qmake qtwebengine.pro 18 | make 19 | fi 20 | -------------------------------------------------------------------------------- /recipe/test/hello.pro: -------------------------------------------------------------------------------- 1 | QT += core 2 | QT += charts 3 | TARGET = hello 4 | CONFIG += console 5 | CONFIG -= app_bundle 6 | TEMPLATE = app 7 | SOURCES += main.cpp 8 | -------------------------------------------------------------------------------- /recipe/test/main-qtwebengine.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** 3 | ** Copyright (C) 2016 The Qt Company Ltd. 4 | ** Contact: https://www.qt.io/licensing/ 5 | ** 6 | ** This file is part of the examples of the Qt Toolkit. 7 | ** 8 | ** $QT_BEGIN_LICENSE:BSD$ 9 | ** Commercial License Usage 10 | ** Licensees holding valid commercial Qt licenses may use this file in 11 | ** accordance with the commercial license agreement provided with the 12 | ** Software or, alternatively, in accordance with the terms contained in 13 | ** a written agreement between you and The Qt Company. For licensing terms 14 | ** and conditions see https://www.qt.io/terms-conditions. For further 15 | ** information use the contact form at https://www.qt.io/contact-us. 16 | ** 17 | ** BSD License Usage 18 | ** Alternatively, you may use this file under the terms of the BSD license 19 | ** as follows: 20 | ** 21 | ** "Redistribution and use in source and binary forms, with or without 22 | ** modification, are permitted provided that the following conditions are 23 | ** met: 24 | ** * Redistributions of source code must retain the above copyright 25 | ** notice, this list of conditions and the following disclaimer. 26 | ** * Redistributions in binary form must reproduce the above copyright 27 | ** notice, this list of conditions and the following disclaimer in 28 | ** the documentation and/or other materials provided with the 29 | ** distribution. 30 | ** * Neither the name of The Qt Company Ltd nor the names of its 31 | ** contributors may be used to endorse or promote products derived 32 | ** from this software without specific prior written permission. 33 | ** 34 | ** 35 | ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 36 | ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 37 | ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 38 | ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 39 | ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 40 | ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 41 | ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 42 | ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 43 | ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 44 | ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 45 | ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." 46 | ** 47 | ** $QT_END_LICENSE$ 48 | ** 49 | ****************************************************************************/ 50 | 51 | 52 | #include 53 | #include 54 | #include 55 | 56 | int main(int argc, char *argv[]) 57 | { 58 | QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); 59 | QGuiApplication app(argc, argv); 60 | 61 | QtWebEngine::initialize(); 62 | 63 | QQmlApplicationEngine engine; 64 | engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); 65 | 66 | return app.exec(); 67 | } 68 | 69 | -------------------------------------------------------------------------------- /recipe/test/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main(int argc, char *argv[]) { 5 | QCoreApplication a(argc, argv); 6 | qDebug() << "Hello World!"; 7 | return 0; 8 | } 9 | -------------------------------------------------------------------------------- /recipe/test/main.qml: -------------------------------------------------------------------------------- 1 | 2 | /**************************************************************************** 3 | ** 4 | ** Copyright (C) 2016 The Qt Company Ltd. 5 | ** Contact: https://www.qt.io/licensing/ 6 | ** 7 | ** This file is part of the examples of the Qt Toolkit. 8 | ** 9 | ** $QT_BEGIN_LICENSE:BSD$ 10 | ** Commercial License Usage 11 | ** Licensees holding valid commercial Qt licenses may use this file in 12 | ** accordance with the commercial license agreement provided with the 13 | ** Software or, alternatively, in accordance with the terms contained in 14 | ** a written agreement between you and The Qt Company. For licensing terms 15 | ** and conditions see https://www.qt.io/terms-conditions. For further 16 | ** information use the contact form at https://www.qt.io/contact-us. 17 | ** 18 | ** BSD License Usage 19 | ** Alternatively, you may use this file under the terms of the BSD license 20 | ** as follows: 21 | ** 22 | ** "Redistribution and use in source and binary forms, with or without 23 | ** modification, are permitted provided that the following conditions are 24 | ** met: 25 | ** * Redistributions of source code must retain the above copyright 26 | ** notice, this list of conditions and the following disclaimer. 27 | ** * Redistributions in binary form must reproduce the above copyright 28 | ** notice, this list of conditions and the following disclaimer in 29 | ** the documentation and/or other materials provided with the 30 | ** distribution. 31 | ** * Neither the name of The Qt Company Ltd nor the names of its 32 | ** contributors may be used to endorse or promote products derived 33 | ** from this software without specific prior written permission. 34 | ** 35 | ** 36 | ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 37 | ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 38 | ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 39 | ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 40 | ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 41 | ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 42 | ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 43 | ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 44 | ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 45 | ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 46 | ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." 47 | ** 48 | ** $QT_END_LICENSE$ 49 | ** 50 | ****************************************************************************/ 51 | 52 | 53 | import QtQuick 2.0 54 | import QtQuick.Window 2.0 55 | import QtWebEngine 1.0 56 | 57 | Window { 58 | width: 1024 59 | height: 750 60 | visible: true 61 | WebEngineView { 62 | anchors.fill: parent 63 | url: "http://www.qt.io" 64 | } 65 | } 66 | 67 | -------------------------------------------------------------------------------- /recipe/test/qml.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | main.qml 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /recipe/test/qrc_qml.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Resource object code 3 | ** 4 | ** Created by: The Resource Compiler for Qt version 5.9.6 5 | ** 6 | ** WARNING! All changes made in this file will be lost! 7 | *****************************************************************************/ 8 | 9 | static const unsigned char qt_resource_data[] = { 10 | // /Users/rdonnelly/conda/aggregate/qt-feedstock/recipe/test/main.qml 11 | 0x0,0x0,0xa,0x73, 12 | 0xa, 13 | 0x2f,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 14 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 15 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 16 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 17 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0xa,0x2a,0x2a, 18 | 0xa,0x2a,0x2a,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x43, 19 | 0x29,0x20,0x32,0x30,0x31,0x36,0x20,0x54,0x68,0x65,0x20,0x51,0x74,0x20,0x43,0x6f, 20 | 0x6d,0x70,0x61,0x6e,0x79,0x20,0x4c,0x74,0x64,0x2e,0xa,0x2a,0x2a,0x20,0x43,0x6f, 21 | 0x6e,0x74,0x61,0x63,0x74,0x3a,0x20,0x68,0x74,0x74,0x70,0x73,0x3a,0x2f,0x2f,0x77, 22 | 0x77,0x77,0x2e,0x71,0x74,0x2e,0x69,0x6f,0x2f,0x6c,0x69,0x63,0x65,0x6e,0x73,0x69, 23 | 0x6e,0x67,0x2f,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0x20,0x54,0x68,0x69,0x73,0x20,0x66, 24 | 0x69,0x6c,0x65,0x20,0x69,0x73,0x20,0x70,0x61,0x72,0x74,0x20,0x6f,0x66,0x20,0x74, 25 | 0x68,0x65,0x20,0x65,0x78,0x61,0x6d,0x70,0x6c,0x65,0x73,0x20,0x6f,0x66,0x20,0x74, 26 | 0x68,0x65,0x20,0x51,0x74,0x20,0x54,0x6f,0x6f,0x6c,0x6b,0x69,0x74,0x2e,0xa,0x2a, 27 | 0x2a,0xa,0x2a,0x2a,0x20,0x24,0x51,0x54,0x5f,0x42,0x45,0x47,0x49,0x4e,0x5f,0x4c, 28 | 0x49,0x43,0x45,0x4e,0x53,0x45,0x3a,0x42,0x53,0x44,0x24,0xa,0x2a,0x2a,0x20,0x43, 29 | 0x6f,0x6d,0x6d,0x65,0x72,0x63,0x69,0x61,0x6c,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73, 30 | 0x65,0x20,0x55,0x73,0x61,0x67,0x65,0xa,0x2a,0x2a,0x20,0x4c,0x69,0x63,0x65,0x6e, 31 | 0x73,0x65,0x65,0x73,0x20,0x68,0x6f,0x6c,0x64,0x69,0x6e,0x67,0x20,0x76,0x61,0x6c, 32 | 0x69,0x64,0x20,0x63,0x6f,0x6d,0x6d,0x65,0x72,0x63,0x69,0x61,0x6c,0x20,0x51,0x74, 33 | 0x20,0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x73,0x20,0x6d,0x61,0x79,0x20,0x75,0x73, 34 | 0x65,0x20,0x74,0x68,0x69,0x73,0x20,0x66,0x69,0x6c,0x65,0x20,0x69,0x6e,0xa,0x2a, 35 | 0x2a,0x20,0x61,0x63,0x63,0x6f,0x72,0x64,0x61,0x6e,0x63,0x65,0x20,0x77,0x69,0x74, 36 | 0x68,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x6d,0x6d,0x65,0x72,0x63,0x69,0x61,0x6c, 37 | 0x20,0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x61,0x67,0x72,0x65,0x65,0x6d,0x65, 38 | 0x6e,0x74,0x20,0x70,0x72,0x6f,0x76,0x69,0x64,0x65,0x64,0x20,0x77,0x69,0x74,0x68, 39 | 0x20,0x74,0x68,0x65,0xa,0x2a,0x2a,0x20,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65, 40 | 0x20,0x6f,0x72,0x2c,0x20,0x61,0x6c,0x74,0x65,0x72,0x6e,0x61,0x74,0x69,0x76,0x65, 41 | 0x6c,0x79,0x2c,0x20,0x69,0x6e,0x20,0x61,0x63,0x63,0x6f,0x72,0x64,0x61,0x6e,0x63, 42 | 0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73, 43 | 0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,0x65,0x64,0x20,0x69,0x6e,0xa,0x2a,0x2a, 44 | 0x20,0x61,0x20,0x77,0x72,0x69,0x74,0x74,0x65,0x6e,0x20,0x61,0x67,0x72,0x65,0x65, 45 | 0x6d,0x65,0x6e,0x74,0x20,0x62,0x65,0x74,0x77,0x65,0x65,0x6e,0x20,0x79,0x6f,0x75, 46 | 0x20,0x61,0x6e,0x64,0x20,0x54,0x68,0x65,0x20,0x51,0x74,0x20,0x43,0x6f,0x6d,0x70, 47 | 0x61,0x6e,0x79,0x2e,0x20,0x46,0x6f,0x72,0x20,0x6c,0x69,0x63,0x65,0x6e,0x73,0x69, 48 | 0x6e,0x67,0x20,0x74,0x65,0x72,0x6d,0x73,0xa,0x2a,0x2a,0x20,0x61,0x6e,0x64,0x20, 49 | 0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x20,0x73,0x65,0x65,0x20,0x68, 50 | 0x74,0x74,0x70,0x73,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x71,0x74,0x2e,0x69,0x6f, 51 | 0x2f,0x74,0x65,0x72,0x6d,0x73,0x2d,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e, 52 | 0x73,0x2e,0x20,0x46,0x6f,0x72,0x20,0x66,0x75,0x72,0x74,0x68,0x65,0x72,0xa,0x2a, 53 | 0x2a,0x20,0x69,0x6e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x69,0x6f,0x6e,0x20,0x75,0x73, 54 | 0x65,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x6e,0x74,0x61,0x63,0x74,0x20,0x66,0x6f, 55 | 0x72,0x6d,0x20,0x61,0x74,0x20,0x68,0x74,0x74,0x70,0x73,0x3a,0x2f,0x2f,0x77,0x77, 56 | 0x77,0x2e,0x71,0x74,0x2e,0x69,0x6f,0x2f,0x63,0x6f,0x6e,0x74,0x61,0x63,0x74,0x2d, 57 | 0x75,0x73,0x2e,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0x20,0x42,0x53,0x44,0x20,0x4c,0x69, 58 | 0x63,0x65,0x6e,0x73,0x65,0x20,0x55,0x73,0x61,0x67,0x65,0xa,0x2a,0x2a,0x20,0x41, 59 | 0x6c,0x74,0x65,0x72,0x6e,0x61,0x74,0x69,0x76,0x65,0x6c,0x79,0x2c,0x20,0x79,0x6f, 60 | 0x75,0x20,0x6d,0x61,0x79,0x20,0x75,0x73,0x65,0x20,0x74,0x68,0x69,0x73,0x20,0x66, 61 | 0x69,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65, 62 | 0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x42,0x53,0x44,0x20,0x6c, 63 | 0x69,0x63,0x65,0x6e,0x73,0x65,0xa,0x2a,0x2a,0x20,0x61,0x73,0x20,0x66,0x6f,0x6c, 64 | 0x6c,0x6f,0x77,0x73,0x3a,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0x20,0x22,0x52,0x65,0x64, 65 | 0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x20, 66 | 0x75,0x73,0x65,0x20,0x69,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x61,0x6e, 67 | 0x64,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x20,0x66,0x6f,0x72,0x6d,0x73,0x2c,0x20, 68 | 0x77,0x69,0x74,0x68,0x20,0x6f,0x72,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0xa, 69 | 0x2a,0x2a,0x20,0x6d,0x6f,0x64,0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x2c, 70 | 0x20,0x61,0x72,0x65,0x20,0x70,0x65,0x72,0x6d,0x69,0x74,0x74,0x65,0x64,0x20,0x70, 71 | 0x72,0x6f,0x76,0x69,0x64,0x65,0x64,0x20,0x74,0x68,0x61,0x74,0x20,0x74,0x68,0x65, 72 | 0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,0x6e,0x67,0x20,0x63,0x6f,0x6e,0x64,0x69, 73 | 0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x72,0x65,0xa,0x2a,0x2a,0x20,0x6d,0x65,0x74, 74 | 0x3a,0xa,0x2a,0x2a,0x20,0x20,0x20,0x2a,0x20,0x52,0x65,0x64,0x69,0x73,0x74,0x72, 75 | 0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x73,0x20,0x6f,0x66,0x20,0x73,0x6f,0x75,0x72, 76 | 0x63,0x65,0x20,0x63,0x6f,0x64,0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x72,0x65,0x74, 77 | 0x61,0x69,0x6e,0x20,0x74,0x68,0x65,0x20,0x61,0x62,0x6f,0x76,0x65,0x20,0x63,0x6f, 78 | 0x70,0x79,0x72,0x69,0x67,0x68,0x74,0xa,0x2a,0x2a,0x20,0x20,0x20,0x20,0x20,0x6e, 79 | 0x6f,0x74,0x69,0x63,0x65,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x6c,0x69,0x73,0x74, 80 | 0x20,0x6f,0x66,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x20,0x61, 81 | 0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,0x6e,0x67, 82 | 0x20,0x64,0x69,0x73,0x63,0x6c,0x61,0x69,0x6d,0x65,0x72,0x2e,0xa,0x2a,0x2a,0x20, 83 | 0x20,0x20,0x2a,0x20,0x52,0x65,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69, 84 | 0x6f,0x6e,0x73,0x20,0x69,0x6e,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x20,0x66,0x6f, 85 | 0x72,0x6d,0x20,0x6d,0x75,0x73,0x74,0x20,0x72,0x65,0x70,0x72,0x6f,0x64,0x75,0x63, 86 | 0x65,0x20,0x74,0x68,0x65,0x20,0x61,0x62,0x6f,0x76,0x65,0x20,0x63,0x6f,0x70,0x79, 87 | 0x72,0x69,0x67,0x68,0x74,0xa,0x2a,0x2a,0x20,0x20,0x20,0x20,0x20,0x6e,0x6f,0x74, 88 | 0x69,0x63,0x65,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x6c,0x69,0x73,0x74,0x20,0x6f, 89 | 0x66,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x6e,0x64, 90 | 0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,0x6e,0x67,0x20,0x64, 91 | 0x69,0x73,0x63,0x6c,0x61,0x69,0x6d,0x65,0x72,0x20,0x69,0x6e,0xa,0x2a,0x2a,0x20, 92 | 0x20,0x20,0x20,0x20,0x74,0x68,0x65,0x20,0x64,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74, 93 | 0x61,0x74,0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x2f,0x6f,0x72,0x20,0x6f,0x74,0x68, 94 | 0x65,0x72,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x20,0x70,0x72,0x6f, 95 | 0x76,0x69,0x64,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0xa,0x2a, 96 | 0x2a,0x20,0x20,0x20,0x20,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69, 97 | 0x6f,0x6e,0x2e,0xa,0x2a,0x2a,0x20,0x20,0x20,0x2a,0x20,0x4e,0x65,0x69,0x74,0x68, 98 | 0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x6f,0x66,0x20,0x54, 99 | 0x68,0x65,0x20,0x51,0x74,0x20,0x43,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x20,0x4c,0x74, 100 | 0x64,0x20,0x6e,0x6f,0x72,0x20,0x74,0x68,0x65,0x20,0x6e,0x61,0x6d,0x65,0x73,0x20, 101 | 0x6f,0x66,0x20,0x69,0x74,0x73,0xa,0x2a,0x2a,0x20,0x20,0x20,0x20,0x20,0x63,0x6f, 102 | 0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x20,0x6d,0x61,0x79,0x20,0x62, 103 | 0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x65,0x6e,0x64,0x6f,0x72,0x73, 104 | 0x65,0x20,0x6f,0x72,0x20,0x70,0x72,0x6f,0x6d,0x6f,0x74,0x65,0x20,0x70,0x72,0x6f, 105 | 0x64,0x75,0x63,0x74,0x73,0x20,0x64,0x65,0x72,0x69,0x76,0x65,0x64,0xa,0x2a,0x2a, 106 | 0x20,0x20,0x20,0x20,0x20,0x66,0x72,0x6f,0x6d,0x20,0x74,0x68,0x69,0x73,0x20,0x73, 107 | 0x6f,0x66,0x74,0x77,0x61,0x72,0x65,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20, 108 | 0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x20,0x70,0x72,0x69,0x6f,0x72,0x20,0x77, 109 | 0x72,0x69,0x74,0x74,0x65,0x6e,0x20,0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f, 110 | 0x6e,0x2e,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0x20,0x54,0x48,0x49,0x53, 111 | 0x20,0x53,0x4f,0x46,0x54,0x57,0x41,0x52,0x45,0x20,0x49,0x53,0x20,0x50,0x52,0x4f, 112 | 0x56,0x49,0x44,0x45,0x44,0x20,0x42,0x59,0x20,0x54,0x48,0x45,0x20,0x43,0x4f,0x50, 113 | 0x59,0x52,0x49,0x47,0x48,0x54,0x20,0x48,0x4f,0x4c,0x44,0x45,0x52,0x53,0x20,0x41, 114 | 0x4e,0x44,0x20,0x43,0x4f,0x4e,0x54,0x52,0x49,0x42,0x55,0x54,0x4f,0x52,0x53,0xa, 115 | 0x2a,0x2a,0x20,0x22,0x41,0x53,0x20,0x49,0x53,0x22,0x20,0x41,0x4e,0x44,0x20,0x41, 116 | 0x4e,0x59,0x20,0x45,0x58,0x50,0x52,0x45,0x53,0x53,0x20,0x4f,0x52,0x20,0x49,0x4d, 117 | 0x50,0x4c,0x49,0x45,0x44,0x20,0x57,0x41,0x52,0x52,0x41,0x4e,0x54,0x49,0x45,0x53, 118 | 0x2c,0x20,0x49,0x4e,0x43,0x4c,0x55,0x44,0x49,0x4e,0x47,0x2c,0x20,0x42,0x55,0x54, 119 | 0x20,0x4e,0x4f,0x54,0xa,0x2a,0x2a,0x20,0x4c,0x49,0x4d,0x49,0x54,0x45,0x44,0x20, 120 | 0x54,0x4f,0x2c,0x20,0x54,0x48,0x45,0x20,0x49,0x4d,0x50,0x4c,0x49,0x45,0x44,0x20, 121 | 0x57,0x41,0x52,0x52,0x41,0x4e,0x54,0x49,0x45,0x53,0x20,0x4f,0x46,0x20,0x4d,0x45, 122 | 0x52,0x43,0x48,0x41,0x4e,0x54,0x41,0x42,0x49,0x4c,0x49,0x54,0x59,0x20,0x41,0x4e, 123 | 0x44,0x20,0x46,0x49,0x54,0x4e,0x45,0x53,0x53,0x20,0x46,0x4f,0x52,0xa,0x2a,0x2a, 124 | 0x20,0x41,0x20,0x50,0x41,0x52,0x54,0x49,0x43,0x55,0x4c,0x41,0x52,0x20,0x50,0x55, 125 | 0x52,0x50,0x4f,0x53,0x45,0x20,0x41,0x52,0x45,0x20,0x44,0x49,0x53,0x43,0x4c,0x41, 126 | 0x49,0x4d,0x45,0x44,0x2e,0x20,0x49,0x4e,0x20,0x4e,0x4f,0x20,0x45,0x56,0x45,0x4e, 127 | 0x54,0x20,0x53,0x48,0x41,0x4c,0x4c,0x20,0x54,0x48,0x45,0x20,0x43,0x4f,0x50,0x59, 128 | 0x52,0x49,0x47,0x48,0x54,0xa,0x2a,0x2a,0x20,0x4f,0x57,0x4e,0x45,0x52,0x20,0x4f, 129 | 0x52,0x20,0x43,0x4f,0x4e,0x54,0x52,0x49,0x42,0x55,0x54,0x4f,0x52,0x53,0x20,0x42, 130 | 0x45,0x20,0x4c,0x49,0x41,0x42,0x4c,0x45,0x20,0x46,0x4f,0x52,0x20,0x41,0x4e,0x59, 131 | 0x20,0x44,0x49,0x52,0x45,0x43,0x54,0x2c,0x20,0x49,0x4e,0x44,0x49,0x52,0x45,0x43, 132 | 0x54,0x2c,0x20,0x49,0x4e,0x43,0x49,0x44,0x45,0x4e,0x54,0x41,0x4c,0x2c,0xa,0x2a, 133 | 0x2a,0x20,0x53,0x50,0x45,0x43,0x49,0x41,0x4c,0x2c,0x20,0x45,0x58,0x45,0x4d,0x50, 134 | 0x4c,0x41,0x52,0x59,0x2c,0x20,0x4f,0x52,0x20,0x43,0x4f,0x4e,0x53,0x45,0x51,0x55, 135 | 0x45,0x4e,0x54,0x49,0x41,0x4c,0x20,0x44,0x41,0x4d,0x41,0x47,0x45,0x53,0x20,0x28, 136 | 0x49,0x4e,0x43,0x4c,0x55,0x44,0x49,0x4e,0x47,0x2c,0x20,0x42,0x55,0x54,0x20,0x4e, 137 | 0x4f,0x54,0xa,0x2a,0x2a,0x20,0x4c,0x49,0x4d,0x49,0x54,0x45,0x44,0x20,0x54,0x4f, 138 | 0x2c,0x20,0x50,0x52,0x4f,0x43,0x55,0x52,0x45,0x4d,0x45,0x4e,0x54,0x20,0x4f,0x46, 139 | 0x20,0x53,0x55,0x42,0x53,0x54,0x49,0x54,0x55,0x54,0x45,0x20,0x47,0x4f,0x4f,0x44, 140 | 0x53,0x20,0x4f,0x52,0x20,0x53,0x45,0x52,0x56,0x49,0x43,0x45,0x53,0x3b,0x20,0x4c, 141 | 0x4f,0x53,0x53,0x20,0x4f,0x46,0x20,0x55,0x53,0x45,0x2c,0xa,0x2a,0x2a,0x20,0x44, 142 | 0x41,0x54,0x41,0x2c,0x20,0x4f,0x52,0x20,0x50,0x52,0x4f,0x46,0x49,0x54,0x53,0x3b, 143 | 0x20,0x4f,0x52,0x20,0x42,0x55,0x53,0x49,0x4e,0x45,0x53,0x53,0x20,0x49,0x4e,0x54, 144 | 0x45,0x52,0x52,0x55,0x50,0x54,0x49,0x4f,0x4e,0x29,0x20,0x48,0x4f,0x57,0x45,0x56, 145 | 0x45,0x52,0x20,0x43,0x41,0x55,0x53,0x45,0x44,0x20,0x41,0x4e,0x44,0x20,0x4f,0x4e, 146 | 0x20,0x41,0x4e,0x59,0xa,0x2a,0x2a,0x20,0x54,0x48,0x45,0x4f,0x52,0x59,0x20,0x4f, 147 | 0x46,0x20,0x4c,0x49,0x41,0x42,0x49,0x4c,0x49,0x54,0x59,0x2c,0x20,0x57,0x48,0x45, 148 | 0x54,0x48,0x45,0x52,0x20,0x49,0x4e,0x20,0x43,0x4f,0x4e,0x54,0x52,0x41,0x43,0x54, 149 | 0x2c,0x20,0x53,0x54,0x52,0x49,0x43,0x54,0x20,0x4c,0x49,0x41,0x42,0x49,0x4c,0x49, 150 | 0x54,0x59,0x2c,0x20,0x4f,0x52,0x20,0x54,0x4f,0x52,0x54,0xa,0x2a,0x2a,0x20,0x28, 151 | 0x49,0x4e,0x43,0x4c,0x55,0x44,0x49,0x4e,0x47,0x20,0x4e,0x45,0x47,0x4c,0x49,0x47, 152 | 0x45,0x4e,0x43,0x45,0x20,0x4f,0x52,0x20,0x4f,0x54,0x48,0x45,0x52,0x57,0x49,0x53, 153 | 0x45,0x29,0x20,0x41,0x52,0x49,0x53,0x49,0x4e,0x47,0x20,0x49,0x4e,0x20,0x41,0x4e, 154 | 0x59,0x20,0x57,0x41,0x59,0x20,0x4f,0x55,0x54,0x20,0x4f,0x46,0x20,0x54,0x48,0x45, 155 | 0x20,0x55,0x53,0x45,0xa,0x2a,0x2a,0x20,0x4f,0x46,0x20,0x54,0x48,0x49,0x53,0x20, 156 | 0x53,0x4f,0x46,0x54,0x57,0x41,0x52,0x45,0x2c,0x20,0x45,0x56,0x45,0x4e,0x20,0x49, 157 | 0x46,0x20,0x41,0x44,0x56,0x49,0x53,0x45,0x44,0x20,0x4f,0x46,0x20,0x54,0x48,0x45, 158 | 0x20,0x50,0x4f,0x53,0x53,0x49,0x42,0x49,0x4c,0x49,0x54,0x59,0x20,0x4f,0x46,0x20, 159 | 0x53,0x55,0x43,0x48,0x20,0x44,0x41,0x4d,0x41,0x47,0x45,0x2e,0x22,0xa,0x2a,0x2a, 160 | 0xa,0x2a,0x2a,0x20,0x24,0x51,0x54,0x5f,0x45,0x4e,0x44,0x5f,0x4c,0x49,0x43,0x45, 161 | 0x4e,0x53,0x45,0x24,0xa,0x2a,0x2a,0xa,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 162 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 163 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 164 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 165 | 0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a,0x2a, 166 | 0x2a,0x2a,0x2a,0x2a,0x2f,0xa,0xa,0xa,0x69,0x6d,0x70,0x6f,0x72,0x74,0x20,0x51, 167 | 0x74,0x51,0x75,0x69,0x63,0x6b,0x20,0x32,0x2e,0x30,0xa,0x69,0x6d,0x70,0x6f,0x72, 168 | 0x74,0x20,0x51,0x74,0x51,0x75,0x69,0x63,0x6b,0x2e,0x57,0x69,0x6e,0x64,0x6f,0x77, 169 | 0x20,0x32,0x2e,0x30,0xa,0x69,0x6d,0x70,0x6f,0x72,0x74,0x20,0x51,0x74,0x57,0x65, 170 | 0x62,0x45,0x6e,0x67,0x69,0x6e,0x65,0x20,0x31,0x2e,0x30,0xa,0xa,0x57,0x69,0x6e, 171 | 0x64,0x6f,0x77,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x77,0x69,0x64,0x74,0x68,0x3a, 172 | 0x20,0x31,0x30,0x32,0x34,0xa,0x20,0x20,0x20,0x20,0x68,0x65,0x69,0x67,0x68,0x74, 173 | 0x3a,0x20,0x37,0x35,0x30,0xa,0x20,0x20,0x20,0x20,0x76,0x69,0x73,0x69,0x62,0x6c, 174 | 0x65,0x3a,0x20,0x74,0x72,0x75,0x65,0xa,0x20,0x20,0x20,0x20,0x57,0x65,0x62,0x45, 175 | 0x6e,0x67,0x69,0x6e,0x65,0x56,0x69,0x65,0x77,0x20,0x7b,0xa,0x20,0x20,0x20,0x20, 176 | 0x20,0x20,0x20,0x20,0x61,0x6e,0x63,0x68,0x6f,0x72,0x73,0x2e,0x66,0x69,0x6c,0x6c, 177 | 0x3a,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20, 178 | 0x20,0x75,0x72,0x6c,0x3a,0x20,0x22,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77, 179 | 0x77,0x2e,0x71,0x74,0x2e,0x69,0x6f,0x22,0xa,0x20,0x20,0x20,0x20,0x7d,0xa,0x7d, 180 | 0xa,0xa, 181 | 182 | }; 183 | 184 | static const unsigned char qt_resource_name[] = { 185 | // main.qml 186 | 0x0,0x8, 187 | 0x8,0x1,0x5a,0x5c, 188 | 0x0,0x6d, 189 | 0x0,0x61,0x0,0x69,0x0,0x6e,0x0,0x2e,0x0,0x71,0x0,0x6d,0x0,0x6c, 190 | 191 | }; 192 | 193 | static const unsigned char qt_resource_struct[] = { 194 | // : 195 | 0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1, 196 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 197 | // :/main.qml 198 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0, 199 | 0x0,0x0,0x1,0x65,0x8a,0xd8,0x45,0x50, 200 | 201 | }; 202 | 203 | #ifdef QT_NAMESPACE 204 | # define QT_RCC_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name 205 | # define QT_RCC_MANGLE_NAMESPACE0(x) x 206 | # define QT_RCC_MANGLE_NAMESPACE1(a, b) a##_##b 207 | # define QT_RCC_MANGLE_NAMESPACE2(a, b) QT_RCC_MANGLE_NAMESPACE1(a,b) 208 | # define QT_RCC_MANGLE_NAMESPACE(name) QT_RCC_MANGLE_NAMESPACE2( \ 209 | QT_RCC_MANGLE_NAMESPACE0(name), QT_RCC_MANGLE_NAMESPACE0(QT_NAMESPACE)) 210 | #else 211 | # define QT_RCC_PREPEND_NAMESPACE(name) name 212 | # define QT_RCC_MANGLE_NAMESPACE(name) name 213 | #endif 214 | 215 | #ifdef QT_NAMESPACE 216 | namespace QT_NAMESPACE { 217 | #endif 218 | 219 | bool qRegisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *); 220 | 221 | bool qUnregisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *); 222 | 223 | #ifdef QT_NAMESPACE 224 | } 225 | #endif 226 | 227 | int QT_RCC_MANGLE_NAMESPACE(qInitResources_qml)(); 228 | int QT_RCC_MANGLE_NAMESPACE(qInitResources_qml)() 229 | { 230 | QT_RCC_PREPEND_NAMESPACE(qRegisterResourceData) 231 | (0x2, qt_resource_struct, qt_resource_name, qt_resource_data); 232 | return 1; 233 | } 234 | 235 | int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qml)(); 236 | int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qml)() 237 | { 238 | QT_RCC_PREPEND_NAMESPACE(qUnregisterResourceData) 239 | (0x2, qt_resource_struct, qt_resource_name, qt_resource_data); 240 | return 1; 241 | } 242 | 243 | namespace { 244 | struct initializer { 245 | initializer() { QT_RCC_MANGLE_NAMESPACE(qInitResources_qml)(); } 246 | ~initializer() { QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qml)(); } 247 | } dummy; 248 | } 249 | -------------------------------------------------------------------------------- /recipe/test/qtwebengine.pro: -------------------------------------------------------------------------------- 1 | TEMPLATE = app 2 | QT += webengine 3 | SOURCES += main-qtwebengine.cpp 4 | RESOURCES += qml.qrc 5 | -------------------------------------------------------------------------------- /recipe/xcodebuild: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | echo "$@" >> /tmp/xcodebuild-$$.log 4 | 5 | # We could not care less, luckily this always comes first 6 | if [[ ${1} == --sdk || ${1} == -sdk ]]; then 7 | shift; 8 | shift; 9 | elif [[ ${1} == -version ]]; then 10 | # If Qt uses this to determine C++ features then we need to 11 | # pretend to be a very recent Xcode. 12 | echo "Xcode 8.3.3" >> /tmp/xcodebuild-$$.log 13 | echo "Build version 8E3004b" >> /tmp/xcodebuild-$$.log 14 | echo "Xcode 8.3.3" 15 | echo "Build version 8E3004b" 16 | exit 0 17 | fi 18 | 19 | case ${1} in 20 | 21 | -version) 22 | shift 23 | if [[ ${1} == Path ]]; then 24 | if [[ -n ${CONDA_BUILD_SYSROOT} ]]; then 25 | echo ${CONDA_BUILD_SYSROOT} >> /tmp/xcodebuild-$$.log 26 | echo ${CONDA_BUILD_SYSROOT} 27 | exit 0 28 | fi 29 | if [[ -f /usr/bin/xcodebuild ]]; then 30 | /usr/bin/xcodebuild --sdk macosx Path 31 | exit $? 32 | fi 33 | echo "TODO :: Implement fallback for xcodebuild --show-sdk-path" >> /tmp/xcodebuild-$$.log 34 | echo "TODO :: Implement fallback for xcodebuild --show-sdk-path" 35 | exit 1 36 | elif [[ ${1} == SDKVersion ]]; then 37 | echo "10.12" >> /tmp/xcodebuild-$$.log 38 | echo "10.12" 39 | exit 0 40 | elif [[ ${1} == PlatformPath ]]; then 41 | echo "Making this one up entirely, you may need a real Xcode" >> /tmp/xcodebuild-$$.log 42 | echo "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform" >> /tmp/xcodebuild-$$.log 43 | echo "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform" 44 | exit 0 45 | elif [[ ${1} == ProductVersion ]]; then 46 | echo "10.12" 47 | exit 0 48 | fi 49 | ;; 50 | 51 | -license) 52 | exit 0 53 | ;; 54 | 55 | *) 56 | echo "ERROR :: Unimplemented xcodebuild mode ${1}" >> /tmp/xcodebuild-$$.log 57 | echo "ERROR :: Unimplemented xcodebuild mode ${1}" 58 | exit 1 59 | ;; 60 | 61 | esac 62 | -------------------------------------------------------------------------------- /recipe/xcrun: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | echo "$@" >> /tmp/xcrun-$$.log 4 | 5 | # We could not care less, luckily this always comes first 6 | if [[ ${1} == --sdk ]] || [[ ${1} == -sdk ]] || [[ ${1} == sdk ]]; then 7 | shift; 8 | shift; 9 | fi 10 | 11 | case ${1} in 12 | 13 | *-find) 14 | if which ${HOST}-${2} > /dev/null 2>&1; then 15 | echo "which ${HOST}-${2}" >> /tmp/xcrun-$$.log 16 | which ${HOST}-${2} >> /tmp/xcrun-$$.log 17 | which ${HOST}-${2} 18 | exit 0 19 | elif which ${2} > /dev/null 2>&1; then 20 | echo "which ${2}" >> /tmp/xcrun-$$.log 21 | which ${2} >> /tmp/xcrun-$$.log 22 | which ${2} 23 | exit 0 24 | else 25 | echo "ERROR :: Fake xcrun failed to locate ${2}" >> /tmp/xcrun-$$.log 26 | echo "ERROR :: Fake xcrun failed to locate ${2}" 27 | exit 1 28 | fi 29 | ;; 30 | 31 | *-show-sdk-path) 32 | if [[ -n ${CONDA_BUILD_SYSROOT} ]]; then 33 | echo ${CONDA_BUILD_SYSROOT} >> /tmp/xcrun-$$.log 34 | echo ${CONDA_BUILD_SYSROOT} 35 | exit 0 36 | fi 37 | if [[ -f /usr/bin/xcrun ]]; then 38 | /usr/bin/xcrun --sdk macosx --show-sdk-path 39 | exit $? 40 | fi 41 | echo "TODO :: Implement fallback for xcrun --show-sdk-path" 42 | exit 1 43 | ;; 44 | 45 | *-show-sdk-version) 46 | echo 10.12 47 | exit 0 48 | ;; 49 | 50 | *-show-sdk-platform-path) 51 | echo /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform 52 | exit 0 53 | ;; 54 | 55 | *-show-sdk-build-version) 56 | echo 16C58 57 | exit 0 58 | ;; 59 | 60 | esac 61 | 62 | if [[ -n ${HOST} ]] && [[ -f ${HOST}-${1} ]]; then 63 | echo "calling ${HOST}-$@" >> /tmp/xcrun-$$.log 64 | ${HOST}-"$@" 65 | else 66 | echo "calling $@" >> /tmp/xcrun-$$.log 67 | "$@" 68 | fi 69 | 70 | -------------------------------------------------------------------------------- /recipe/yum_requirements.txt: -------------------------------------------------------------------------------- 1 | alsa-lib 2 | libXScrnSaver 3 | libXtst 4 | libXi 5 | libXcursor 6 | libXcomposite 7 | mesa-libGL 8 | mesa-dri-drivers 9 | libselinux 10 | libXdamage 11 | libXxf86vm 12 | libXext 13 | libX11-devel 14 | libXt-devel 15 | libXext-devel 16 | chrpath 17 | libXrender-devel 18 | gtk2-devel 19 | dbus-devel 20 | libSM-devel 21 | libICE-devel 22 | xorg-x11-server-Xvfb 23 | ruby 24 | --------------------------------------------------------------------------------