From 3cd716d1271fadd14f280deea8939cc4a27933d6 Mon Sep 17 00:00:00 2001 From: Graham Markall Date: Tue, 24 Sep 2024 22:14:38 +0100 Subject: [PATCH 1/3] Force siphash24 hash algorithm when cross-compiling When cross-compiling, the hash function is forced to be FNV because the configure script defines `HAVE_ALIGNED_REQUIRED` which is then used by pyhash.h to change the default to FNV (see #718) This commit fixes the issue by specifying siphash24 to the configure script when cross-compiling. --- recipe/build_base.sh | 4 ++++ recipe/meta.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/recipe/build_base.sh b/recipe/build_base.sh index ed421bdba..2e76f215f 100644 --- a/recipe/build_base.sh +++ b/recipe/build_base.sh @@ -249,6 +249,10 @@ _common_configure_args+=(--with-tcltk-includes="-I${PREFIX}/include") _common_configure_args+=("--with-tcltk-libs=-L${PREFIX}/lib -ltcl8.6 -ltk8.6") _common_configure_args+=(--with-platlibdir=lib) +if [[ "${CONDA_BUILD_CROSS_COMPILATION}" == "1" ]]; then + _common_configure_args+=(--with-hash-algorithm=siphash24) +fi + # Add more optimization flags for the static Python interpreter: declare -a PROFILE_TASK=() if [[ ${_OPTIMIZED} == yes ]]; then diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 2da14d44e..1c87325de 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -4,7 +4,7 @@ {% set ver2 = '.'.join(version.split('.')[0:2]) %} {% set ver2nd = ''.join(version.split('.')[0:2]) %} {% set ver3nd = ''.join(version.split('.')[0:3]) %} -{% set build_number = 0 %} +{% set build_number = 1 %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} From 4cdf1dac230c83e76a0d1433dce3d21afe5a0a10 Mon Sep 17 00:00:00 2001 From: "conda-forge-webservices[bot]" <91080706+conda-forge-webservices[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 21:21:31 +0000 Subject: [PATCH 2/3] MNT: Re-rendered with conda-build 24.9.0, conda-smithy 3.40.1, and conda-forge-pinning 2024.09.24.05.02.56 --- .scripts/build_steps.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index dfe08db46..f387b25bd 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -54,7 +54,7 @@ ulimit -n 1024 # "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 libxcb +/usr/bin/sudo -n yum install -y libX11 libxcb libxau ) # make the build number clobber From c15ed9c7a519647cacdb4cffdd33e7adf3ca4681 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 25 Sep 2024 09:22:34 -0500 Subject: [PATCH 3/3] Update build_base.sh --- recipe/build_base.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/recipe/build_base.sh b/recipe/build_base.sh index 2e76f215f..8f39c0bc7 100644 --- a/recipe/build_base.sh +++ b/recipe/build_base.sh @@ -164,6 +164,7 @@ if [[ "${CONDA_BUILD_CROSS_COMPILATION}" == "1" ]]; then echo "ac_cv_file__dev_ptc=yes" >> config.site echo "ac_cv_pthread=yes" >> config.site echo "ac_cv_little_endian_double=yes" >> config.site + echo "ac_cv_aligned_required=no" >> config.site if [[ ${target_platform} == osx-arm64 ]]; then echo "ac_cv_aligned_required=no" >> config.site echo "ac_cv_file__dev_ptc=no" >> config.site @@ -248,10 +249,7 @@ _common_configure_args+=(--enable-loadable-sqlite-extensions) _common_configure_args+=(--with-tcltk-includes="-I${PREFIX}/include") _common_configure_args+=("--with-tcltk-libs=-L${PREFIX}/lib -ltcl8.6 -ltk8.6") _common_configure_args+=(--with-platlibdir=lib) - -if [[ "${CONDA_BUILD_CROSS_COMPILATION}" == "1" ]]; then - _common_configure_args+=(--with-hash-algorithm=siphash24) -fi +_common_configure_args+=(--with-hash-algorithm=siphash24) # Add more optimization flags for the static Python interpreter: declare -a PROFILE_TASK=()