diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index a20f315..d33b56a 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -8,8 +8,12 @@ jobs: vmImage: ubuntu-latest strategy: matrix: - linux_64_: - CONFIG: linux_64_ + linux_64_tk_variantnoxft: + CONFIG: linux_64_tk_variantnoxft + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_64_tk_variantxft: + CONFIG: linux_64_tk_variantxft UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 timeoutInMinutes: 360 diff --git a/.ci_support/linux_64_tk_variantnoxft.yaml b/.ci_support/linux_64_tk_variantnoxft.yaml new file mode 100644 index 0000000..30c6f41 --- /dev/null +++ b/.ci_support/linux_64_tk_variantnoxft.yaml @@ -0,0 +1,20 @@ +c_compiler: +- gcc +c_compiler_version: +- '12' +cdt_name: +- cos6 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +target_platform: +- linux-64 +tk: +- '8.6' +tk_variant: +- noxft +zlib: +- '1.2' diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_tk_variantxft.yaml similarity index 88% rename from .ci_support/linux_64_.yaml rename to .ci_support/linux_64_tk_variantxft.yaml index 9be0573..a1e6d65 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_tk_variantxft.yaml @@ -12,5 +12,9 @@ docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 target_platform: - linux-64 +tk: +- '8.6' +tk_variant: +- xft zlib: - '1.2' diff --git a/.ci_support/linux_aarch64_tk_variantnoxft.yaml b/.ci_support/linux_aarch64_tk_variantnoxft.yaml new file mode 100644 index 0000000..15b2740 --- /dev/null +++ b/.ci_support/linux_aarch64_tk_variantnoxft.yaml @@ -0,0 +1,24 @@ +BUILD: +- aarch64-conda_cos7-linux-gnu +c_compiler: +- gcc +c_compiler_version: +- '12' +cdt_arch: +- aarch64 +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-aarch64 +target_platform: +- linux-aarch64 +tk: +- '8.6' +tk_variant: +- noxft +zlib: +- '1.2' diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_tk_variantxft.yaml similarity index 90% rename from .ci_support/linux_aarch64_.yaml rename to .ci_support/linux_aarch64_tk_variantxft.yaml index e5dd612..02f0322 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_tk_variantxft.yaml @@ -16,5 +16,9 @@ docker_image: - quay.io/condaforge/linux-anvil-aarch64 target_platform: - linux-aarch64 +tk: +- '8.6' +tk_variant: +- xft zlib: - '1.2' diff --git a/.ci_support/linux_ppc64le_tk_variantnoxft.yaml b/.ci_support/linux_ppc64le_tk_variantnoxft.yaml new file mode 100644 index 0000000..95e7464 --- /dev/null +++ b/.ci_support/linux_ppc64le_tk_variantnoxft.yaml @@ -0,0 +1,18 @@ +c_compiler: +- gcc +c_compiler_version: +- '12' +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-ppc64le +target_platform: +- linux-ppc64le +tk_variant: +- noxft +zlib: +- '1.2' diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_tk_variantxft.yaml similarity index 92% rename from .ci_support/linux_ppc64le_.yaml rename to .ci_support/linux_ppc64le_tk_variantxft.yaml index ae6e330..b1df87f 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_ppc64le_tk_variantxft.yaml @@ -12,5 +12,7 @@ docker_image: - quay.io/condaforge/linux-anvil-ppc64le target_platform: - linux-ppc64le +tk_variant: +- xft zlib: - '1.2' diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_.yaml index a0e2cee..cc07be9 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_.yaml @@ -5,7 +5,7 @@ MACOSX_SDK_VERSION: c_compiler: - clang c_compiler_version: -- '15' +- '16' channel_sources: - conda-forge channel_targets: @@ -14,5 +14,9 @@ macos_machine: - x86_64-apple-darwin13.4.0 target_platform: - osx-64 +tk: +- '8.6' +tk_variant: +- noxft zlib: - '1.2' diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml index 6ec0f72..7b8ad5f 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_.yaml @@ -3,7 +3,7 @@ MACOSX_DEPLOYMENT_TARGET: c_compiler: - clang c_compiler_version: -- '15' +- '16' channel_sources: - conda-forge channel_targets: @@ -12,5 +12,9 @@ macos_machine: - arm64-apple-darwin20.0.0 target_platform: - osx-arm64 +tk: +- '8.6' +tk_variant: +- noxft zlib: - '1.2' diff --git a/.ci_support/win_64_.yaml b/.ci_support/win_64_.yaml index afe7133..2d80fc1 100644 --- a/.ci_support/win_64_.yaml +++ b/.ci_support/win_64_.yaml @@ -6,3 +6,7 @@ channel_targets: - conda-forge main target_platform: - win-64 +tk: +- '8.6' +tk_variant: +- noxft diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 32a32ea..23ac37b 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -34,7 +34,7 @@ CONDARC mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ pip mamba conda-build boa conda-forge-ci-setup=3 mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup + pip mamba conda-build boa conda-forge-ci-setup=3 # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -46,7 +46,7 @@ source run_conda_forge_build_setup # "recipe/yum_requirements.txt" file. After updating that file, # run "conda smithy rerender" and this line will be updated # automatically. -/usr/bin/sudo -n yum install -y libX11-devel +/usr/bin/sudo -n yum install -y libX11 libXft libfontconfig # make the build number clobber diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index cd9a88f..870c49a 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -26,7 +26,7 @@ conda activate base mamba install --update-specs --quiet --yes --channel conda-forge --strict-channel-priority \ pip mamba conda-build boa conda-forge-ci-setup=3 mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup + pip mamba conda-build boa conda-forge-ci-setup=3 diff --git a/.travis.yml b/.travis.yml index 58a72eb..1ef87ed 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,12 +7,22 @@ language: generic matrix: include: - - env: CONFIG=linux_aarch64_ UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64 + - env: CONFIG=linux_aarch64_tk_variantnoxft UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64 os: linux arch: arm64 dist: focal - - env: CONFIG=linux_ppc64le_ UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le + - env: CONFIG=linux_aarch64_tk_variantxft UPLOAD_PACKAGES=True PLATFORM=linux-aarch64 DOCKER_IMAGE=quay.io/condaforge/linux-anvil-aarch64 + os: linux + arch: arm64 + dist: focal + + - env: CONFIG=linux_ppc64le_tk_variantnoxft UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le + os: linux + arch: ppc64le + dist: focal + + - env: CONFIG=linux_ppc64le_tk_variantxft UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le os: linux arch: ppc64le dist: focal diff --git a/README.md b/README.md index 2a58485..e5d4fd8 100644 --- a/README.md +++ b/README.md @@ -36,24 +36,45 @@ Current build status - + - + - + + + + + + + + + + diff --git a/recipe/build.sh b/recipe/build.sh index 0ea1b99..5842471 100755 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -4,27 +4,30 @@ set -ex IFS="." read -a VER_ARR <<<"${PKG_VERSION}" -ARCH_FLAG="" -if [[ ${ARCH} == 64 ]]; then - ARCH_FLAG="--enable-64bit" -fi pushd tcl${PKG_VERSION}/unix # autoreconf -vfi - ./configure --prefix="${PREFIX}" \ - --host=${HOST} \ - ${ARCH_FLAG} + ./configure --prefix="${PREFIX}" make -j${CPU_COUNT} ${VERBOSE_AT} make install install-private-headers popd +if [[ "$target_platform" == osx-* ]]; then + CONFIGURE_ARGS="${CONFIGURE_ARGS} --enable-aqua=yes" +elif [[ "$tk_variant" == xft ]]; then + CONFIGURE_ARGS="${CONFIGURE_ARGS} --enable-xft" + # Remove requires.private for now. Otherwise we need devel packages of + # libxrender-devel and the deps in libxrender-devel is broken anyway. + sed -i.bak 's/Requires.private: xrender, /Requires.private: /g' $BUILD_PREFIX/$HOST/sysroot/usr/lib/pkgconfig/xft.pc + pkg-config --cflags xft fontconfig +fi + pushd tk${PKG_VERSION}/unix # autoreconf -vfi ./configure --prefix="${PREFIX}" \ - --host=${HOST} \ --with-tcl="${PREFIX}"/lib \ - --enable-aqua=yes \ - ${ARCH_FLAG} + ${CONFIGURE_ARGS} + cat config.log make -j${CPU_COUNT} ${VERBOSE_AT} make install popd diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 561c189..9cf3831 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -1,3 +1,6 @@ +tk_variant: + - xft # [linux] + - noxft # Required for UniformTypeIdentifiers MACOSX_SDK_VERSION: # [osx and x86_64] - "11.0" # [osx and x86_64] diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 0e1543d..6ab6cb7 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,6 @@ {% set version = "8.6.13" %} {% set maj_min = ".".join(version.split(".")[:2]) %} +{% set build = 1 %} package: name: tk @@ -13,8 +14,17 @@ source: folder: tk{{ version }} sha256: 2e65fa069a23365440a3c56c556b8673b5e32a283800d8d9b257e3f584ce0675 + +{% if tk_variant == 'noxft' and linux %} +# prioritize noxft variant via build number +{% set build = build + 100 %} +{% endif %} + build: - number: 0 + number: {{ build }} + string: "{{ tk_variant }}_h{{ PKG_HASH }}_{{ build }}" # [linux] + track_features: + - tk_xft # [tk_variant == 'xft'] detect_binary_files_with_prefix: true run_exports: # pin to major.minor because library names have that info in them @@ -28,6 +38,11 @@ requirements: - {{ cdt('libxcb') }} # [linux] - {{ cdt('libxau') }} # [linux] - make # [linux] + - {{ cdt('freetype-devel') }} # [linux and tk_variant == 'xft'] + - {{ cdt('fontconfig-devel') }} # [linux and tk_variant == 'xft'] + - {{ cdt('libXrender-devel') }} # [linux and tk_variant == 'xft'] + - {{ cdt('libXft-devel') }} # [linux and tk_variant == 'xft'] + - pkg-config # [linux and tk_variant == 'xft'] host: - zlib # [unix] diff --git a/recipe/yum_requirements.txt b/recipe/yum_requirements.txt index 3a95b91..84b7ae1 100644 --- a/recipe/yum_requirements.txt +++ b/recipe/yum_requirements.txt @@ -1 +1,3 @@ -libX11-devel +libX11 +libXft +libfontconfig
VariantStatus
linux_64linux_64_tk_variantnoxft - variant + variant
linux_aarch64linux_64_tk_variantxft - variant + variant
linux_ppc64lelinux_aarch64_tk_variantnoxft - variant + variant + +
linux_aarch64_tk_variantxft + + variant + +
linux_ppc64le_tk_variantnoxft + + variant + +
linux_ppc64le_tk_variantxft + + variant