From 19f20954d876bd916fb0d11e7b4bed762f639758 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 2 Sep 2022 21:16:17 +0200 Subject: [PATCH 01/38] Apply changes from conda-forge Changes are the difference between isuruf's 3.11.0rc1 PR, and the most recent 3.10.0 commit on master. --- recipe/build_base.bat | 8 - recipe/build_base.sh | 12 +- recipe/conda_build_config.yaml | 2 +- recipe/meta.yaml | 55 +- ...03-Support-cross-compiling-byte-code.patch | 121 -- ...for-isysroot-in-addition-to-sysroot.patch} | 0 ...ir_option-Use-1st-word-of-CC-as-com.patch} | 0 ...005-Win32-Do-not-download-externals.patch} | 0 ...so-that-it-looks-in-sys.prefix-lib-.patch} | 0 ...ompiling-on-debian-ubuntu-with-a-di.patch} | 0 ...-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch | 1201 +++++++++++++++++ ...-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch | 38 - ...nssl.patch => 0009-Unvendor-openssl.patch} | 0 ...ite3.patch => 0010-Unvendor-sqlite3.patch} | 25 +- ...nge-from-https-github.com-python-cp.patch} | 0 ...DLLSuffix-used-to-find-the-openssl-.patch} | 0 ...lib-from-env-if-env-variable-is-set.patch} | 0 ...dd-CondaEcosystemModifyDllSearchPath.patch | 158 +++ ...dd-CondaEcosystemModifyDllSearchPath.patch | 481 ------- ...C_DIR-to-make-pdbs-more-relocatable.patch} | 0 ...file.patch => 0016-Doing-d1trimfile.patch} | 70 +- ....patch => 0017-cross-compile-darwin.patch} | 75 +- ...patch => 0018-Fix-TZPATH-on-windows.patch} | 12 +- ...h-work-with-SYSTEM_VERSION_COMPAT-1.patch} | 0 ...D-when-CC-is-overriden-on-Linux-too.patch} | 0 ...-bzip2.patch => 0021-Unvendor-bzip2.patch} | 0 ...ibffi.patch => 0022-Unvendor-libffi.patch} | 19 +- ...-tcltk.patch => 0023-Unvendor-tcltk.patch} | 16 +- ...vendor-xz.patch => 0024-unvendor-xz.patch} | 0 ...or-zlib.patch => 0025-unvendor-zlib.patch} | 47 +- 30 files changed, 1531 insertions(+), 809 deletions(-) delete mode 100644 recipe/patches/0003-Support-cross-compiling-byte-code.patch rename recipe/patches/{0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch => 0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch} (100%) rename recipe/patches/{0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch => 0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch} (100%) rename recipe/patches/{0006-Win32-Do-not-download-externals.patch => 0005-Win32-Do-not-download-externals.patch} (100%) rename recipe/patches/{0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch => 0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch} (100%) rename recipe/patches/{0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch => 0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch} (100%) create mode 100644 recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch delete mode 100644 recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch rename recipe/patches/{0010-Unvendor-openssl.patch => 0009-Unvendor-openssl.patch} (100%) rename recipe/patches/{0011-Unvendor-sqlite3.patch => 0010-Unvendor-sqlite3.patch} (78%) rename recipe/patches/{0012-venv-Revert-a-change-from-https-github.com-python-cp.patch => 0011-venv-Revert-a-change-from-https-github.com-python-cp.patch} (100%) rename recipe/patches/{0013-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch => 0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch} (100%) rename recipe/patches/{0014-Use-ranlib-from-env-if-env-variable-is-set.patch => 0013-Use-ranlib-from-env-if-env-variable-is-set.patch} (100%) create mode 100644 recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch delete mode 100644 recipe/patches/0015-Add-CondaEcosystemModifyDllSearchPath.patch rename recipe/patches/{0016-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch => 0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch} (100%) rename recipe/patches/{0017-Doing-d1trimfile.patch => 0016-Doing-d1trimfile.patch} (93%) rename recipe/patches/{0018-cross-compile-darwin.patch => 0017-cross-compile-darwin.patch} (74%) rename recipe/patches/{0019-Fix-TZPATH-on-windows.patch => 0018-Fix-TZPATH-on-windows.patch} (63%) rename recipe/patches/{0020-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch => 0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch} (100%) rename recipe/patches/{0021-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch => 0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch} (100%) rename recipe/patches/{0022-Unvendor-bzip2.patch => 0021-Unvendor-bzip2.patch} (100%) rename recipe/patches/{0023-Unvendor-libffi.patch => 0022-Unvendor-libffi.patch} (82%) rename recipe/patches/{0024-Unvendor-tcltk.patch => 0023-Unvendor-tcltk.patch} (65%) rename recipe/patches/{0025-unvendor-xz.patch => 0024-unvendor-xz.patch} (100%) rename recipe/patches/{0026-unvendor-zlib.patch => 0025-unvendor-zlib.patch} (83%) diff --git a/recipe/build_base.bat b/recipe/build_base.bat index 06af2528b..65959566c 100644 --- a/recipe/build_base.bat +++ b/recipe/build_base.bat @@ -25,8 +25,6 @@ for /F "tokens=1,2 delims=." %%i in ("%PKG_VERSION%") do ( if NOT "%PY_VER%"=="%%i.%%j" exit 1 ) -set "OPENSSL_DIR=%LIBRARY_PREFIX%" -set "SQLITE3_DIR=%LIBRARY_PREFIX%" for /f "usebackq delims=" %%i in (`conda list -p %PREFIX% sqlite --no-show-channel-urls --json ^| findstr "version"`) do set SQLITE3_VERSION_LINE=%%i for /f "tokens=2 delims==/ " %%i IN ('echo %SQLITE3_VERSION_LINE%') do (set SQLITE3_VERSION=%%~i) echo SQLITE3_VERSION detected as %SQLITE3_VERSION% @@ -95,17 +93,11 @@ xcopy /s /y /i %SRC_DIR%\Tools\demo %PREFIX%\Tools\demo if errorlevel 1 exit 1 xcopy /s /y /i %SRC_DIR%\Tools\i18n %PREFIX%\Tools\i18n if errorlevel 1 exit 1 -xcopy /s /y /i %SRC_DIR%\Tools\pynche %PREFIX%\Tools\pynche -if errorlevel 1 exit 1 xcopy /s /y /i %SRC_DIR%\Tools\scripts %PREFIX%\Tools\scripts if errorlevel 1 exit 1 del %PREFIX%\Tools\demo\README if errorlevel 1 exit 1 -del %PREFIX%\Tools\pynche\README -if errorlevel 1 exit 1 -del %PREFIX%\Tools\pynche\pynche -if errorlevel 1 exit 1 del %PREFIX%\Tools\scripts\README if errorlevel 1 exit 1 del %PREFIX%\Tools\scripts\dutree.doc diff --git a/recipe/build_base.sh b/recipe/build_base.sh index b4dc6c908..bec5e6171 100644 --- a/recipe/build_base.sh +++ b/recipe/build_base.sh @@ -130,6 +130,8 @@ fi export CPPFLAGS CFLAGS CXXFLAGS LDFLAGS +declare -a _common_configure_args + if [[ ${target_platform} == osx-* ]]; then sed -i -e "s/@OSX_ARCH@/$ARCH/g" Lib/distutils/unixccompiler.py fi @@ -174,6 +176,7 @@ if [[ "${CONDA_BUILD_CROSS_COMPILATION}" == "1" ]]; then export CONFIG_SITE=${PWD}/config.site # This is needed for libffi: export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig + _common_configure_args+=(--with-build-python=${BUILD_PYTHON_PREFIX}/bin/python) fi # This causes setup.py to query the sysroot directories from the compiler, something which @@ -235,7 +238,6 @@ if [[ ${CC} =~ .*-arm.* ]]; then TEST_EXCLUDES+=(test_compiler) fi -declare -a _common_configure_args _common_configure_args+=(--prefix=${PREFIX}) _common_configure_args+=(--build=${BUILD}) _common_configure_args+=(--host=${HOST}) @@ -310,7 +312,7 @@ pushd ${_buildd_static} ${_DISABLE_SHARED} "${_PROFILE_TASK[@]}" popd -if [[ ${target_platform} == linux-ppc64le ]]; then +if [[ "${CI}" == "travis" ]]; then # Travis has issues with long logs make -j${CPU_COUNT} -C ${_buildd_static} \ EXTRA_CFLAGS="${EXTRA_CFLAGS}" \ @@ -325,7 +327,7 @@ if rg "Failed to build these modules" make-static.log; then exit 1 fi -if [[ ${target_platform} == linux-ppc64le ]]; then +if [[ "${CI}" == "travis" ]]; then # Travis has issues with long logs make -j${CPU_COUNT} -C ${_buildd_shared} \ EXTRA_CFLAGS="${EXTRA_CFLAGS}" 2>&1 >make-shared.log @@ -391,7 +393,7 @@ fi ln -s ${PREFIX}/bin/python${VER} ${PREFIX}/bin/python ln -s ${PREFIX}/bin/pydoc${VER} ${PREFIX}/bin/pydoc # Workaround for https://github.com/conda/conda/issues/10969 -ln -s ${PREFIX}/bin/python3.10 ${PREFIX}/bin/python3.1 +ln -s ${PREFIX}/bin/python3.11 ${PREFIX}/bin/python3.1 # Remove test data to save space # Though keep `support` as some things use that. @@ -513,4 +515,4 @@ fi # Workaround for old conda versions which fail to install noarch packages for Python 3.10+ # https://github.com/conda/conda/issues/10969 -ln -s "${PREFIX}/lib/python3.10" "${PREFIX}/lib/python3.1" +ln -s "${PREFIX}/lib/python3.11" "${PREFIX}/lib/python3.1" diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 9b2219de7..192b8843c 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -1,5 +1,5 @@ python: - - 3.10 + - 3.11 python_impl: - cpython libffi: # [win] diff --git a/recipe/meta.yaml b/recipe/meta.yaml index bfd50217d..d8a786df1 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,5 @@ -{% set version = "3.10.4" %} -{% set dev = "" %} +{% set version = "3.11.0" %} +{% set dev = "rc1" %} {% set dev_ = "" %} {% set ver2 = '.'.join(version.split('.')[0:2]) %} {% set ver2nd = ''.join(version.split('.')[0:2]) %} @@ -48,43 +48,42 @@ source: {% else %} - url: https://www.python.org/ftp/python/{{ version }}/Python-{{ version }}{{ dev }}.tar.xz # md5 from: https://www.python.org/downloads/release/python-{{ ver3nd }}/ - sha256: 80bf925f571da436b35210886cf79f6eb5fa5d6c571316b73568343451f77a19 + sha256: 53a5377c37a8a2c6da075b14eb9d63374579f7f3c718fa20f0a1fbb0e94a922b {% endif %} patches: - patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch - patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch - - patches/0003-Support-cross-compiling-byte-code.patch # https://github.com/python/cpython/pull/28501 - - patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch + - patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch # https://github.com/pypa/distutils/pull/54 - - patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch - - patches/0006-Win32-Do-not-download-externals.patch - - patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch + - patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch + - patches/0005-Win32-Do-not-download-externals.patch + - patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch # https://github.com/python/cpython/pull/28397 # Patch doesn't apply, but is Debian-specific anyway. - # - patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch - - patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch - - patches/0010-Unvendor-openssl.patch - - patches/0011-Unvendor-sqlite3.patch - - patches/0012-venv-Revert-a-change-from-https-github.com-python-cp.patch - - patches/0013-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch + # - patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch + - patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch + - patches/0009-Unvendor-openssl.patch + - patches/0010-Unvendor-sqlite3.patch + - patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch + - patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch # https://github.com/pypa/distutils/pull/53 - - patches/0014-Use-ranlib-from-env-if-env-variable-is-set.patch - - patches/0015-Add-CondaEcosystemModifyDllSearchPath.patch - - patches/0016-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch - - patches/0017-Doing-d1trimfile.patch + - patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch + - patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch + - patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch + - patches/0016-Doing-d1trimfile.patch # https://github.com/python/cpython/pull/23523 - - patches/0018-cross-compile-darwin.patch - - patches/0019-Fix-TZPATH-on-windows.patch + - patches/0017-cross-compile-darwin.patch + - patches/0018-Fix-TZPATH-on-windows.patch # https://github.com/python/cpython/pull/24324 - - patches/0020-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch + - patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch # https://github.com/pypa/distutils/pull/53 - - patches/0021-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch - - patches/0022-Unvendor-bzip2.patch - - patches/0023-Unvendor-libffi.patch - - patches/0024-Unvendor-tcltk.patch - - patches/0025-unvendor-xz.patch - - patches/0026-unvendor-zlib.patch + - patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch + - patches/0021-Unvendor-bzip2.patch + - patches/0022-Unvendor-libffi.patch + - patches/0023-Unvendor-tcltk.patch + - patches/0024-unvendor-xz.patch + - patches/0025-unvendor-zlib.patch build: number: {{ build_number }} @@ -145,8 +144,6 @@ outputs: # Putting these here means they get emitted to build_env_setup.{sh,bat} meaning we can launch IDEs # after sourcing or calling that script without examine the contents of conda_build.{sh,bat} for # important env. vars. - - OPENSSL_DIR=%PREFIX%\Library # [win] - - SQLITE3_DIR=%PREFIX%\Library # [win] {% if 'conda-forge' in channel_targets %} - CONDA_FORGE=yes {% else %} diff --git a/recipe/patches/0003-Support-cross-compiling-byte-code.patch b/recipe/patches/0003-Support-cross-compiling-byte-code.patch deleted file mode 100644 index 228250402..000000000 --- a/recipe/patches/0003-Support-cross-compiling-byte-code.patch +++ /dev/null @@ -1,121 +0,0 @@ -From 7837cf219e72ab58d341c1c885ea526fa10e59d4 Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Wed, 16 Aug 2017 12:17:33 +0100 -Subject: [PATCH 03/25] Support cross-compiling byte-code - -https://bugs.python.org/issue22724 ---- - Makefile.pre.in | 13 +++++++------ - configure | 4 +++- - configure.ac | 4 +++- - 3 files changed, 13 insertions(+), 8 deletions(-) - -diff --git a/configure b/configure -index 1baa145e3e..f227dd88c0 100755 ---- a/configure 2022-03-21 13:42:59.924782584 +0300 -+++ b/configure 2022-03-21 13:43:08.464959119 +0300 -@@ -760,6 +760,7 @@ - SOVERSION - VERSION - PYTHON_FOR_BUILD -+PY_BUILD_ENVIRON - PYTHON_FOR_REGEN - host_os - host_vendor -@@ -3019,7 +3020,8 @@ - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $interp" >&5 - $as_echo "$interp" >&6; } -- PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH) '$interp -+ PY_BUILD_ENVIRON='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH)' -+ PYTHON_FOR_BUILD=$interp - fi - elif test "$cross_compiling" = maybe; then - as_fn_error $? "Cross compiling required --host=HOST-TUPLE and --build=ARCH" "$LINENO" 5 -diff --git a/configure.ac b/configure.ac -index 3e6c07c279..f70a69b2f9 100644 ---- a/configure.ac 2022-03-21 13:42:59.924782584 +0300 -+++ b/configure.ac 2022-03-21 13:43:08.464959119 +0300 -@@ -82,13 +82,15 @@ - AC_MSG_ERROR([python$PACKAGE_VERSION interpreter not found]) - fi - AC_MSG_RESULT($interp) -- PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH) '$interp -+ PY_BUILD_ENVIRON='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib _PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH)' -+ PYTHON_FOR_BUILD=$interp - fi - elif test "$cross_compiling" = maybe; then - AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH]) - else - PYTHON_FOR_BUILD='./$(BUILDPYTHON) -E' - fi -+AC_SUBST(PY_BUILD_ENVIRON) - AC_SUBST(PYTHON_FOR_BUILD) - - dnl Ensure that if prefix is specified, it does not end in a slash. If -diff --git a/Makefile.pre.in b/Makefile.pre.in -index 790d974b96..b851467f38 100644 ---- a/Makefile.pre.in 2022-03-21 13:42:59.920782501 +0300 -+++ b/Makefile.pre.in 2022-03-21 13:43:08.460959037 +0300 -@@ -261,6 +261,7 @@ - - PYTHON_FOR_REGEN?=@PYTHON_FOR_REGEN@ - UPDATE_FILE=$(PYTHON_FOR_REGEN) $(srcdir)/Tools/scripts/update_file.py -+PY_BUILD_ENVIRON=@PY_BUILD_ENVIRON@ - PYTHON_FOR_BUILD=@PYTHON_FOR_BUILD@ - _PYTHON_HOST_PLATFORM=@_PYTHON_HOST_PLATFORM@ - BUILD_GNU_TYPE= @build@ -@@ -589,7 +590,7 @@ - $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) - - platform: $(BUILDPYTHON) pybuilddir.txt -- $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print("%s-%d.%d" % (get_platform(), *sys.version_info[:2]))' >platform -+ $(RUNSHARED) $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print("%s-%d.%d" % (get_platform(), *sys.version_info[:2]))' >platform - - # Create build directory and generate the sysconfig build-time data there. - # pybuilddir.txt contains the name of the build dir and is used for -@@ -600,7 +601,7 @@ - # or removed in case of failure. - pybuilddir.txt: $(BUILDPYTHON) - @echo "none" > ./pybuilddir.txt -- $(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars ;\ -+ $(RUNSHARED) $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars ;\ - if test $$? -ne 0 ; then \ - echo "generate-posix-vars failed" ; \ - rm -f ./pybuilddir.txt ; \ -@@ -631,7 +632,7 @@ - $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \ - $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ - _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ -- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build -+ $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build - - - # Build static library -@@ -1270,7 +1271,7 @@ - upgrade) ensurepip="--upgrade" ;; \ - install|*) ensurepip="" ;; \ - esac; \ -- $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ -+ $(RUNSHARED) $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) -m ensurepip \ - $$ensurepip --root=$(DESTDIR)/ ; \ - fi - -@@ -1280,7 +1281,7 @@ - upgrade) ensurepip="--altinstall --upgrade" ;; \ - install|*) ensurepip="--altinstall" ;; \ - esac; \ -- $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ -+ $(RUNSHARED) $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) -m ensurepip \ - $$ensurepip --root=$(DESTDIR)/ ; \ - fi - -@@ -1746,7 +1747,7 @@ - # Install the dynamically loadable modules - # This goes into $(exec_prefix) - sharedinstall: sharedmods -- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \ -+ $(RUNSHARED) $(PY_BUILD_ENVIRON) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \ - --prefix=$(prefix) \ - --install-scripts=$(BINDIR) \ - --install-platlib=$(DESTSHARED) \ diff --git a/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch b/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch similarity index 100% rename from recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch rename to recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch diff --git a/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch b/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch similarity index 100% rename from recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch rename to recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch diff --git a/recipe/patches/0006-Win32-Do-not-download-externals.patch b/recipe/patches/0005-Win32-Do-not-download-externals.patch similarity index 100% rename from recipe/patches/0006-Win32-Do-not-download-externals.patch rename to recipe/patches/0005-Win32-Do-not-download-externals.patch diff --git a/recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch b/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch similarity index 100% rename from recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch rename to recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch diff --git a/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch b/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch similarity index 100% rename from recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch rename to recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch diff --git a/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch new file mode 100644 index 000000000..d230db0b7 --- /dev/null +++ b/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch @@ -0,0 +1,1201 @@ +From 8e033994de66ce822a007c44d833a27bb4818bfc Mon Sep 17 00:00:00 2001 +From: Ray Donnelly +Date: Sat, 27 Oct 2018 18:48:30 +0100 +Subject: [PATCH 08/24] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS + is not 0 + +Co-authored-by: Isuru Fernando +--- + Modules/getpath.c | 1 + + Modules/getpath.py | 3 +- + PC/getpathp.c | 1145 ++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 1148 insertions(+), 1 deletion(-) + create mode 100644 PC/getpathp.c + +diff --git a/Modules/getpath.c b/Modules/getpath.c +index 94479887cf..5ca10cb0f2 100644 +--- a/Modules/getpath.c ++++ b/Modules/getpath.c +@@ -894,6 +894,7 @@ _PyConfig_InitPathConfig(PyConfig *config, int compute_path_config) + !env_to_dict(dict, "ENV_PATH", 0) || + !env_to_dict(dict, "ENV_PYTHONHOME", 0) || + !env_to_dict(dict, "ENV_PYTHONEXECUTABLE", 0) || ++ !env_to_dict(dict, "ENV_CONDA_PY_ALLOW_REG_PATHS", 0) || + !env_to_dict(dict, "ENV___PYVENV_LAUNCHER__", 1) || + !progname_to_dict(dict, "real_executable") || + !library_to_dict(dict, "library") || +diff --git a/Modules/getpath.py b/Modules/getpath.py +index dceeed7702..334455f7d6 100644 +--- a/Modules/getpath.py ++++ b/Modules/getpath.py +@@ -51,6 +51,7 @@ + # ENV_PYTHONHOME -- [in] getenv(...) + # ENV_PYTHONEXECUTABLE -- [in] getenv(...) + # ENV___PYVENV_LAUNCHER__ -- [in] getenv(...) ++# ENV_CONDA_PY_ALLOW_REG_PATHS -- [in] getenv(...) + + # ** Values calculated at runtime ** + # config -- [in/out] dict of the PyConfig structure +@@ -654,7 +655,7 @@ def search_up(prefix, *landmarks, test=isfile): + else: + pythonpath.append(joinpath(prefix, ZIP_LANDMARK)) + +- if os_name == 'nt' and use_environment and winreg: ++ if os_name == 'nt' and use_environment and winreg and ENV_CONDA_PY_ALLOW_REG_PATHS and ENV_CONDA_PY_ALLOW_REG_PATHS != '0': + # QUIRK: Windows also lists paths in the registry. Paths are stored + # as the default value of each subkey of + # {HKCU,HKLM}\Software\Python\PythonCore\{winver}\PythonPath +diff --git a/PC/getpathp.c b/PC/getpathp.c +new file mode 100644 +index 0000000000..a73ea8a0e9 +--- /dev/null ++++ b/PC/getpathp.c +@@ -0,0 +1,1145 @@ ++ ++/* Return the initial module search path. */ ++/* Used by DOS, Windows 3.1, Windows 95/98, Windows NT. */ ++ ++/* ---------------------------------------------------------------- ++ PATH RULES FOR WINDOWS: ++ This describes how sys.path is formed on Windows. It describes the ++ functionality, not the implementation (ie, the order in which these ++ are actually fetched is different). The presence of a python._pth or ++ pythonXY._pth file alongside the program overrides these rules - see ++ below. ++ ++ * Python always adds an empty entry at the start, which corresponds ++ to the current directory. ++ ++ * If the PYTHONPATH env. var. exists, its entries are added next. ++ ++ * We look in the registry for "application paths" - that is, sub-keys ++ under the main PythonPath registry key. These are added next (the ++ order of sub-key processing is undefined). ++ HKEY_CURRENT_USER is searched and added first. ++ HKEY_LOCAL_MACHINE is searched and added next. ++ (Note that all known installers only use HKLM, so HKCU is typically ++ empty) ++ ++ * We attempt to locate the "Python Home" - if the PYTHONHOME env var ++ is set, we believe it. Otherwise, we use the path of our host .EXE's ++ to try and locate one of our "landmarks" and deduce our home. ++ - If we DO have a Python Home: The relevant sub-directories (Lib, ++ DLLs, etc) are based on the Python Home ++ - If we DO NOT have a Python Home, the core Python Path is ++ loaded from the registry. (This is the main PythonPath key, ++ and both HKLM and HKCU are combined to form the path) ++ ++ * Iff - we can not locate the Python Home, have not had a PYTHONPATH ++ specified, and can't locate any Registry entries (ie, we have _nothing_ ++ we can assume is a good path), a default path with relative entries is ++ used (eg. .\Lib;.\DLLs, etc) ++ ++ ++ If a '._pth' file exists adjacent to the executable with the same base name ++ (e.g. python._pth adjacent to python.exe) or adjacent to the shared library ++ (e.g. python36._pth adjacent to python36.dll), it is used in preference to ++ the above process. The shared library file takes precedence over the ++ executable. The path file must contain a list of paths to add to sys.path, ++ one per line. Each path is relative to the directory containing the file. ++ Blank lines and comments beginning with '#' are permitted. ++ ++ In the presence of this ._pth file, no other paths are added to the search ++ path, the registry finder is not enabled, site.py is not imported and ++ isolated mode is enabled. The site package can be enabled by including a ++ line reading "import site"; no other imports are recognized. Any invalid ++ entry (other than directories that do not exist) will result in immediate ++ termination of the program. ++ ++ ++ The end result of all this is: ++ * When running python.exe, or any other .exe in the main Python directory ++ (either an installed version, or directly from the PCbuild directory), ++ the core path is deduced, and the core paths in the registry are ++ ignored. Other "application paths" in the registry are always read. ++ ++ * When Python is hosted in another exe (different directory, embedded via ++ COM, etc), the Python Home will not be deduced, so the core path from ++ the registry is used. Other "application paths" in the registry are ++ always read. ++ ++ * If Python can't find its home and there is no registry (eg, frozen ++ exe, some very strange installation setup) you get a path with ++ some default, but relative, paths. ++ ++ * An embedding application can use Py_SetPath() to override all of ++ these automatic path computations. ++ ++ * An install of Python can fully specify the contents of sys.path using ++ either a 'EXENAME._pth' or 'DLLNAME._pth' file, optionally including ++ "import site" to enable the site module. ++ ++ ---------------------------------------------------------------- */ ++ ++ ++#include "Python.h" ++#include "pycore_initconfig.h" // PyStatus ++#include "pycore_pathconfig.h" // _PyPathConfig ++#include "osdefs.h" // SEP, ALTSEP ++#include ++ ++#ifndef MS_WINDOWS ++#error getpathp.c should only be built on Windows ++#endif ++ ++#include ++#include ++ ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif /* HAVE_SYS_TYPES_H */ ++ ++#ifdef HAVE_SYS_STAT_H ++#include ++#endif /* HAVE_SYS_STAT_H */ ++ ++#include ++ ++/* Search in some common locations for the associated Python libraries. ++ * ++ * Py_GetPath() tries to return a sensible Python module search path. ++ * ++ * The approach is an adaptation for Windows of the strategy used in ++ * ../Modules/getpath.c; it uses the Windows Registry as one of its ++ * information sources. ++ * ++ * Py_SetPath() can be used to override this mechanism. Call Py_SetPath ++ * with a semicolon separated path prior to calling Py_Initialize. ++ */ ++ ++#ifndef LANDMARK ++# define LANDMARK L"lib\\os.py" ++#endif ++ ++#define INIT_ERR_BUFFER_OVERFLOW() _PyStatus_ERR("buffer overflow") ++ ++ ++typedef struct { ++ const wchar_t *path_env; /* PATH environment variable */ ++ const wchar_t *home; /* PYTHONHOME environment variable */ ++ ++ /* Registry key "Software\Python\PythonCore\X.Y\PythonPath" ++ where X.Y is the Python version (major.minor) */ ++ wchar_t *machine_path; /* from HKEY_LOCAL_MACHINE */ ++ wchar_t *user_path; /* from HKEY_CURRENT_USER */ ++ ++ const wchar_t *pythonpath_env; ++} PyCalculatePath; ++ ++ ++/* determine if "ch" is a separator character */ ++static int ++is_sep(wchar_t ch) ++{ ++#ifdef ALTSEP ++ return ch == SEP || ch == ALTSEP; ++#else ++ return ch == SEP; ++#endif ++} ++ ++ ++/* assumes 'dir' null terminated in bounds. Never writes ++ beyond existing terminator. */ ++static void ++reduce(wchar_t *dir) ++{ ++ size_t i = wcsnlen_s(dir, MAXPATHLEN+1); ++ if (i >= MAXPATHLEN+1) { ++ Py_FatalError("buffer overflow in getpathp.c's reduce()"); ++ } ++ ++ while (i > 0 && !is_sep(dir[i])) ++ --i; ++ dir[i] = '\0'; ++} ++ ++ ++static int ++change_ext(wchar_t *dest, const wchar_t *src, const wchar_t *ext) ++{ ++ if (src && src != dest) { ++ size_t src_len = wcsnlen_s(src, MAXPATHLEN+1); ++ size_t i = src_len; ++ if (i >= MAXPATHLEN+1) { ++ Py_FatalError("buffer overflow in getpathp.c's reduce()"); ++ } ++ ++ while (i > 0 && src[i] != '.' && !is_sep(src[i])) ++ --i; ++ ++ if (i == 0) { ++ dest[0] = '\0'; ++ return -1; ++ } ++ ++ if (is_sep(src[i])) { ++ i = src_len; ++ } ++ ++ if (wcsncpy_s(dest, MAXPATHLEN+1, src, i)) { ++ dest[0] = '\0'; ++ return -1; ++ } ++ } else { ++ wchar_t *s = wcsrchr(dest, L'.'); ++ if (s) { ++ s[0] = '\0'; ++ } ++ } ++ ++ if (wcscat_s(dest, MAXPATHLEN+1, ext)) { ++ dest[0] = '\0'; ++ return -1; ++ } ++ ++ return 0; ++} ++ ++ ++static int ++exists(const wchar_t *filename) ++{ ++ return GetFileAttributesW(filename) != 0xFFFFFFFF; ++} ++ ++ ++/* Is module -- check for .pyc too. ++ Assumes 'filename' MAXPATHLEN+1 bytes long - ++ may extend 'filename' by one character. */ ++static int ++ismodule(wchar_t *filename, int update_filename) ++{ ++ size_t n; ++ ++ if (exists(filename)) { ++ return 1; ++ } ++ ++ /* Check for the compiled version of prefix. */ ++ n = wcsnlen_s(filename, MAXPATHLEN+1); ++ if (n < MAXPATHLEN) { ++ int exist = 0; ++ filename[n] = L'c'; ++ filename[n + 1] = L'\0'; ++ exist = exists(filename); ++ if (!update_filename) { ++ filename[n] = L'\0'; ++ } ++ return exist; ++ } ++ return 0; ++} ++ ++ ++/* Add a path component, by appending stuff to buffer. ++ buffer must have at least MAXPATHLEN + 1 bytes allocated, and contain a ++ NUL-terminated string with no more than MAXPATHLEN characters (not counting ++ the trailing NUL). It's a fatal error if it contains a string longer than ++ that (callers must be careful!). If these requirements are met, it's ++ guaranteed that buffer will still be a NUL-terminated string with no more ++ than MAXPATHLEN characters at exit. If stuff is too long, only as much of ++ stuff as fits will be appended. ++*/ ++ ++static void ++join(wchar_t *buffer, const wchar_t *stuff) ++{ ++ if (FAILED(PathCchCombineEx(buffer, MAXPATHLEN+1, buffer, stuff, 0))) { ++ Py_FatalError("buffer overflow in getpathp.c's join()"); ++ } ++} ++ ++/* Call PathCchCanonicalizeEx(path): remove navigation elements such as "." ++ and ".." to produce a direct, well-formed path. */ ++static PyStatus ++canonicalize(wchar_t *buffer, const wchar_t *path) ++{ ++ if (buffer == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ ++ if (FAILED(PathCchCanonicalizeEx(buffer, MAXPATHLEN + 1, path, 0))) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ return _PyStatus_OK(); ++} ++ ++ ++/* gotlandmark only called by search_for_prefix, which ensures ++ 'prefix' is null terminated in bounds. join() ensures ++ 'landmark' can not overflow prefix if too long. */ ++static int ++gotlandmark(const wchar_t *prefix, const wchar_t *landmark) ++{ ++ wchar_t filename[MAXPATHLEN+1]; ++ memset(filename, 0, sizeof(filename)); ++ wcscpy_s(filename, Py_ARRAY_LENGTH(filename), prefix); ++ join(filename, landmark); ++ return ismodule(filename, FALSE); ++} ++ ++ ++/* assumes argv0_path is MAXPATHLEN+1 bytes long, already \0 term'd. ++ assumption provided by only caller, calculate_path() */ ++static int ++search_for_prefix(wchar_t *prefix, const wchar_t *argv0_path, const wchar_t *landmark) ++{ ++ /* Search from argv0_path, until landmark is found */ ++ wcscpy_s(prefix, MAXPATHLEN + 1, argv0_path); ++ do { ++ if (gotlandmark(prefix, landmark)) { ++ return 1; ++ } ++ reduce(prefix); ++ } while (prefix[0]); ++ return 0; ++} ++ ++ ++static int ++get_dllpath(wchar_t *dllpath) ++{ ++#ifdef Py_ENABLE_SHARED ++ extern HANDLE PyWin_DLLhModule; ++ if (PyWin_DLLhModule && GetModuleFileNameW(PyWin_DLLhModule, dllpath, MAXPATHLEN)) { ++ return 0; ++ } ++#endif ++ return -1; ++} ++ ++ ++#ifdef Py_ENABLE_SHARED ++ ++/* a string loaded from the DLL at startup.*/ ++extern const char *PyWin_DLLVersionString; ++ ++/* Load a PYTHONPATH value from the registry. ++ Load from either HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER. ++ ++ Works in both Unicode and 8bit environments. Only uses the ++ Ex family of functions so it also works with Windows CE. ++ ++ Returns NULL, or a pointer that should be freed. ++ ++ XXX - this code is pretty strange, as it used to also ++ work on Win16, where the buffer sizes were not available ++ in advance. It could be simplied now Win16/Win32s is dead! ++*/ ++static wchar_t * ++getpythonregpath(HKEY keyBase, int skipcore) ++{ ++ HKEY newKey = 0; ++ DWORD dataSize = 0; ++ DWORD numKeys = 0; ++ LONG rc; ++ wchar_t *retval = NULL; ++ WCHAR *dataBuf = NULL; ++ static const WCHAR keyPrefix[] = L"Software\\Python\\PythonCore\\"; ++ static const WCHAR keySuffix[] = L"\\PythonPath"; ++ size_t versionLen, keyBufLen; ++ DWORD index; ++ WCHAR *keyBuf = NULL; ++ WCHAR *keyBufPtr; ++ WCHAR **ppPaths = NULL; ++ ++ /* Tried to use sysget("winver") but here is too early :-( */ ++ versionLen = strlen(PyWin_DLLVersionString); ++ /* Space for all the chars, plus one \0 */ ++ keyBufLen = sizeof(keyPrefix) + ++ sizeof(WCHAR)*(versionLen-1) + ++ sizeof(keySuffix); ++ keyBuf = keyBufPtr = PyMem_RawMalloc(keyBufLen); ++ if (keyBuf==NULL) { ++ goto done; ++ } ++ ++ memcpy_s(keyBufPtr, keyBufLen, keyPrefix, sizeof(keyPrefix)-sizeof(WCHAR)); ++ keyBufPtr += Py_ARRAY_LENGTH(keyPrefix) - 1; ++ mbstowcs(keyBufPtr, PyWin_DLLVersionString, versionLen); ++ keyBufPtr += versionLen; ++ /* NULL comes with this one! */ ++ memcpy(keyBufPtr, keySuffix, sizeof(keySuffix)); ++ /* Open the root Python key */ ++ rc=RegOpenKeyExW(keyBase, ++ keyBuf, /* subkey */ ++ 0, /* reserved */ ++ KEY_READ, ++ &newKey); ++ if (rc!=ERROR_SUCCESS) { ++ goto done; ++ } ++ /* Find out how big our core buffer is, and how many subkeys we have */ ++ rc = RegQueryInfoKeyW(newKey, NULL, NULL, NULL, &numKeys, NULL, NULL, ++ NULL, NULL, &dataSize, NULL, NULL); ++ if (rc!=ERROR_SUCCESS) { ++ goto done; ++ } ++ if (skipcore) { ++ dataSize = 0; /* Only count core ones if we want them! */ ++ } ++ /* Allocate a temp array of char buffers, so we only need to loop ++ reading the registry once ++ */ ++ ppPaths = PyMem_RawCalloc(numKeys, sizeof(WCHAR *)); ++ if (ppPaths==NULL) { ++ goto done; ++ } ++ /* Loop over all subkeys, allocating a temp sub-buffer. */ ++ for(index=0;index 0) { ++ *(szCur++) = L';'; ++ dataSize--; ++ } ++ if (ppPaths[index]) { ++ Py_ssize_t len = wcslen(ppPaths[index]); ++ wcsncpy(szCur, ppPaths[index], len); ++ szCur += len; ++ assert(dataSize > (DWORD)len); ++ dataSize -= (DWORD)len; ++ } ++ } ++ if (skipcore) { ++ *szCur = '\0'; ++ } ++ else { ++ /* If we have no values, we don't need a ';' */ ++ if (numKeys) { ++ *(szCur++) = L';'; ++ dataSize--; ++ } ++ /* Now append the core path entries - ++ this will include the NULL ++ */ ++ rc = RegQueryValueExW(newKey, NULL, 0, NULL, ++ (LPBYTE)szCur, &dataSize); ++ if (rc != ERROR_SUCCESS) { ++ PyMem_RawFree(dataBuf); ++ goto done; ++ } ++ } ++ /* And set the result - caller must free */ ++ retval = dataBuf; ++ } ++done: ++ /* Loop freeing my temp buffers */ ++ if (ppPaths) { ++ for(index=0; indexbase_executable == NULL) { ++ pathconfig->base_executable = PyMem_RawMalloc( ++ sizeof(wchar_t) * (MAXPATHLEN + 1)); ++ if (pathconfig->base_executable == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ ++ status = canonicalize(pathconfig->base_executable, ++ program_full_path); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ } ++ ++ wcscpy_s(program_full_path, MAXPATHLEN+1, pyvenv_launcher); ++ /* bpo-35873: Clear the environment variable to avoid it being ++ * inherited by child processes. */ ++ _wputenv_s(L"__PYVENV_LAUNCHER__", L""); ++ } ++ ++ if (pathconfig->program_full_path == NULL) { ++ pathconfig->program_full_path = PyMem_RawMalloc( ++ sizeof(wchar_t) * (MAXPATHLEN + 1)); ++ if (pathconfig->program_full_path == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ ++ status = canonicalize(pathconfig->program_full_path, ++ program_full_path); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ } ++ return _PyStatus_OK(); ++} ++ ++ ++static PyStatus ++read_pth_file(_PyPathConfig *pathconfig, wchar_t *prefix, const wchar_t *path, ++ int *found) ++{ ++ PyStatus status; ++ wchar_t *buf = NULL; ++ wchar_t *wline = NULL; ++ FILE *sp_file; ++ ++ sp_file = _Py_wfopen(path, L"r"); ++ if (sp_file == NULL) { ++ return _PyStatus_OK(); ++ } ++ ++ wcscpy_s(prefix, MAXPATHLEN+1, path); ++ reduce(prefix); ++ pathconfig->isolated = 1; ++ pathconfig->site_import = 0; ++ ++ size_t bufsiz = MAXPATHLEN; ++ size_t prefixlen = wcslen(prefix); ++ ++ buf = (wchar_t*)PyMem_RawMalloc(bufsiz * sizeof(wchar_t)); ++ if (buf == NULL) { ++ status = _PyStatus_NO_MEMORY(); ++ goto done; ++ } ++ buf[0] = '\0'; ++ ++ while (!feof(sp_file)) { ++ char line[MAXPATHLEN + 1]; ++ char *p = fgets(line, Py_ARRAY_LENGTH(line), sp_file); ++ if (!p) { ++ break; ++ } ++ if (*p == '\0' || *p == '\r' || *p == '\n' || *p == '#') { ++ continue; ++ } ++ while (*++p) { ++ if (*p == '\r' || *p == '\n') { ++ *p = '\0'; ++ break; ++ } ++ } ++ ++ if (strcmp(line, "import site") == 0) { ++ pathconfig->site_import = 1; ++ continue; ++ } ++ else if (strncmp(line, "import ", 7) == 0) { ++ status = _PyStatus_ERR("only 'import site' is supported " ++ "in ._pth file"); ++ goto done; ++ } ++ ++ DWORD wn = MultiByteToWideChar(CP_UTF8, 0, line, -1, NULL, 0); ++ wchar_t *wline = (wchar_t*)PyMem_RawMalloc((wn + 1) * sizeof(wchar_t)); ++ if (wline == NULL) { ++ status = _PyStatus_NO_MEMORY(); ++ goto done; ++ } ++ wn = MultiByteToWideChar(CP_UTF8, 0, line, -1, wline, wn + 1); ++ wline[wn] = '\0'; ++ ++ size_t usedsiz = wcslen(buf); ++ while (usedsiz + wn + prefixlen + 4 > bufsiz) { ++ bufsiz += MAXPATHLEN; ++ wchar_t *tmp = (wchar_t*)PyMem_RawRealloc(buf, (bufsiz + 1) * ++ sizeof(wchar_t)); ++ if (tmp == NULL) { ++ status = _PyStatus_NO_MEMORY(); ++ goto done; ++ } ++ buf = tmp; ++ } ++ ++ if (usedsiz) { ++ wcscat_s(buf, bufsiz, L";"); ++ usedsiz += 1; ++ } ++ ++ errno_t result; ++ _Py_BEGIN_SUPPRESS_IPH ++ result = wcscat_s(buf, bufsiz, prefix); ++ _Py_END_SUPPRESS_IPH ++ ++ if (result == EINVAL) { ++ status = _PyStatus_ERR("invalid argument during ._pth processing"); ++ goto done; ++ } else if (result == ERANGE) { ++ status = _PyStatus_ERR("buffer overflow during ._pth processing"); ++ goto done; ++ } ++ ++ wchar_t *b = &buf[usedsiz]; ++ join(b, wline); ++ ++ PyMem_RawFree(wline); ++ wline = NULL; ++ } ++ ++ if (pathconfig->module_search_path == NULL) { ++ pathconfig->module_search_path = _PyMem_RawWcsdup(buf); ++ if (pathconfig->module_search_path == NULL) { ++ status = _PyStatus_NO_MEMORY(); ++ goto done; ++ } ++ } ++ ++ *found = 1; ++ status = _PyStatus_OK(); ++ goto done; ++ ++done: ++ PyMem_RawFree(buf); ++ PyMem_RawFree(wline); ++ fclose(sp_file); ++ return status; ++} ++ ++ ++static int ++get_pth_filename(PyCalculatePath *calculate, wchar_t *filename, ++ const _PyPathConfig *pathconfig) ++{ ++ if (!get_dllpath(filename) && ++ !change_ext(filename, filename, L"._pth") && ++ exists(filename)) ++ { ++ return 1; ++ } ++ if (pathconfig->program_full_path[0] && ++ !change_ext(filename, pathconfig->program_full_path, L"._pth") && ++ exists(filename)) ++ { ++ return 1; ++ } ++ return 0; ++} ++ ++ ++static PyStatus ++calculate_pth_file(PyCalculatePath *calculate, _PyPathConfig *pathconfig, ++ wchar_t *prefix, int *found) ++{ ++ wchar_t filename[MAXPATHLEN+1]; ++ ++ if (!get_pth_filename(calculate, filename, pathconfig)) { ++ return _PyStatus_OK(); ++ } ++ ++ return read_pth_file(pathconfig, prefix, filename, found); ++} ++ ++ ++/* Search for an environment configuration file, first in the ++ executable's directory and then in the parent directory. ++ If found, open it for use when searching for prefixes. ++*/ ++static PyStatus ++calculate_pyvenv_file(PyCalculatePath *calculate, ++ wchar_t *argv0_path, size_t argv0_path_len) ++{ ++ wchar_t filename[MAXPATHLEN+1]; ++ const wchar_t *env_cfg = L"pyvenv.cfg"; ++ ++ /* Filename: / "pyvenv.cfg" */ ++ wcscpy_s(filename, MAXPATHLEN+1, argv0_path); ++ join(filename, env_cfg); ++ ++ FILE *env_file = _Py_wfopen(filename, L"r"); ++ if (env_file == NULL) { ++ errno = 0; ++ ++ /* Filename: / "pyvenv.cfg" */ ++ reduce(filename); ++ reduce(filename); ++ join(filename, env_cfg); ++ ++ env_file = _Py_wfopen(filename, L"r"); ++ if (env_file == NULL) { ++ errno = 0; ++ return _PyStatus_OK(); ++ } ++ } ++ ++ /* Look for a 'home' variable and set argv0_path to it, if found */ ++ wchar_t *home = NULL; ++ PyStatus status = _Py_FindEnvConfigValue(env_file, L"home", &home); ++ if (_PyStatus_EXCEPTION(status)) { ++ fclose(env_file); ++ return status; ++ } ++ if (home) { ++ wcscpy_s(argv0_path, argv0_path_len, home); ++ PyMem_RawFree(home); ++ } ++ fclose(env_file); ++ return _PyStatus_OK(); ++} ++ ++ ++static void ++calculate_home_prefix(PyCalculatePath *calculate, ++ const wchar_t *argv0_path, ++ const wchar_t *zip_path, ++ wchar_t *prefix) ++{ ++ if (calculate->home == NULL || *calculate->home == '\0') { ++ if (zip_path[0] && exists(zip_path)) { ++ wcscpy_s(prefix, MAXPATHLEN+1, zip_path); ++ reduce(prefix); ++ calculate->home = prefix; ++ } ++ else if (search_for_prefix(prefix, argv0_path, LANDMARK)) { ++ calculate->home = prefix; ++ } ++ else { ++ calculate->home = NULL; ++ } ++ } ++ else { ++ wcscpy_s(prefix, MAXPATHLEN+1, calculate->home); ++ } ++} ++ ++ ++static PyStatus ++calculate_module_search_path(PyCalculatePath *calculate, ++ _PyPathConfig *pathconfig, ++ const wchar_t *argv0_path, ++ wchar_t *prefix, ++ const wchar_t *zip_path) ++{ ++ int skiphome = calculate->home==NULL ? 0 : 1; ++ char * allow_registry_paths = getenv("CONDA_PY_ALLOW_REG_PATHS"); ++ if (!Py_IgnoreEnvironmentFlag && allow_registry_paths && allow_registry_paths[0] != '0') ++ { ++ calculate->machine_path = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome); ++ calculate->user_path = getpythonregpath(HKEY_CURRENT_USER, skiphome); ++ } ++ else ++ { ++ calculate->machine_path = NULL; ++ calculate->user_path = NULL; ++ } ++ ++ /* We only use the default relative PYTHONPATH if we haven't ++ anything better to use! */ ++ int skipdefault = (calculate->pythonpath_env != NULL || ++ calculate->home != NULL || ++ calculate->machine_path != NULL || ++ calculate->user_path != NULL); ++ ++ /* We need to construct a path from the following parts. ++ (1) the PYTHONPATH environment variable, if set; ++ (2) for Win32, the zip archive file path; ++ (3) for Win32, the machine_path and user_path, if set; ++ (4) the PYTHONPATH config macro, with the leading "." ++ of each component replaced with home, if set; ++ (5) the directory containing the executable (argv0_path). ++ The length calculation calculates #4 first. ++ Extra rules: ++ - If PYTHONHOME is set (in any way) item (3) is ignored. ++ - If registry values are used, (4) and (5) are ignored. ++ */ ++ ++ /* Calculate size of return buffer */ ++ size_t bufsz = 0; ++ if (calculate->home != NULL) { ++ const wchar_t *p; ++ bufsz = 1; ++ for (p = PYTHONPATH; *p; p++) { ++ if (*p == DELIM) { ++ bufsz++; /* number of DELIM plus one */ ++ } ++ } ++ bufsz *= wcslen(calculate->home); ++ } ++ bufsz += wcslen(PYTHONPATH) + 1; ++ bufsz += wcslen(argv0_path) + 1; ++ if (calculate->user_path) { ++ bufsz += wcslen(calculate->user_path) + 1; ++ } ++ if (calculate->machine_path) { ++ bufsz += wcslen(calculate->machine_path) + 1; ++ } ++ bufsz += wcslen(zip_path) + 1; ++ if (calculate->pythonpath_env != NULL) { ++ bufsz += wcslen(calculate->pythonpath_env) + 1; ++ } ++ ++ wchar_t *buf, *start_buf; ++ buf = PyMem_RawMalloc(bufsz * sizeof(wchar_t)); ++ if (buf == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ start_buf = buf; ++ ++ if (calculate->pythonpath_env) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), ++ calculate->pythonpath_env)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ if (zip_path[0]) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), zip_path)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ if (calculate->user_path) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), calculate->user_path)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ if (calculate->machine_path) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), calculate->machine_path)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ if (calculate->home == NULL) { ++ if (!skipdefault) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), PYTHONPATH)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ } else { ++ const wchar_t *p = PYTHONPATH; ++ const wchar_t *q; ++ size_t n; ++ for (;;) { ++ q = wcschr(p, DELIM); ++ if (q == NULL) { ++ n = wcslen(p); ++ } ++ else { ++ n = q-p; ++ } ++ if (p[0] == '.' && is_sep(p[1])) { ++ if (wcscpy_s(buf, bufsz - (buf - start_buf), calculate->home)) { ++ return INIT_ERR_BUFFER_OVERFLOW(); ++ } ++ buf = wcschr(buf, L'\0'); ++ p++; ++ n--; ++ } ++ wcsncpy(buf, p, n); ++ buf += n; ++ *buf++ = DELIM; ++ if (q == NULL) { ++ break; ++ } ++ p = q+1; ++ } ++ } ++ if (argv0_path) { ++ wcscpy(buf, argv0_path); ++ buf = wcschr(buf, L'\0'); ++ *buf++ = DELIM; ++ } ++ *(buf - 1) = L'\0'; ++ ++ /* Now to pull one last hack/trick. If sys.prefix is ++ empty, then try and find it somewhere on the paths ++ we calculated. We scan backwards, as our general policy ++ is that Python core directories are at the *end* of ++ sys.path. We assume that our "lib" directory is ++ on the path, and that our 'prefix' directory is ++ the parent of that. ++ */ ++ if (prefix[0] == L'\0') { ++ wchar_t lookBuf[MAXPATHLEN+1]; ++ const wchar_t *look = buf - 1; /* 'buf' is at the end of the buffer */ ++ while (1) { ++ Py_ssize_t nchars; ++ const wchar_t *lookEnd = look; ++ /* 'look' will end up one character before the ++ start of the path in question - even if this ++ is one character before the start of the buffer ++ */ ++ while (look >= start_buf && *look != DELIM) ++ look--; ++ nchars = lookEnd-look; ++ wcsncpy(lookBuf, look+1, nchars); ++ lookBuf[nchars] = L'\0'; ++ /* Up one level to the parent */ ++ reduce(lookBuf); ++ if (search_for_prefix(prefix, lookBuf, LANDMARK)) { ++ break; ++ } ++ /* If we are out of paths to search - give up */ ++ if (look < start_buf) { ++ break; ++ } ++ look--; ++ } ++ } ++ ++ pathconfig->module_search_path = start_buf; ++ return _PyStatus_OK(); ++} ++ ++ ++static PyStatus ++calculate_path(PyCalculatePath *calculate, _PyPathConfig *pathconfig) ++{ ++ PyStatus status; ++ ++ status = get_program_full_path(pathconfig); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ ++ /* program_full_path guaranteed \0 terminated in MAXPATH+1 bytes. */ ++ wchar_t argv0_path[MAXPATHLEN+1]; ++ memset(argv0_path, 0, sizeof(argv0_path)); ++ ++ wcscpy_s(argv0_path, MAXPATHLEN+1, pathconfig->program_full_path); ++ reduce(argv0_path); ++ ++ wchar_t prefix[MAXPATHLEN+1]; ++ memset(prefix, 0, sizeof(prefix)); ++ ++ /* Search for a sys.path file */ ++ int pth_found = 0; ++ status = calculate_pth_file(calculate, pathconfig, prefix, &pth_found); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ if (pth_found) { ++ goto done; ++ } ++ ++ status = calculate_pyvenv_file(calculate, ++ argv0_path, Py_ARRAY_LENGTH(argv0_path)); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ ++ /* Calculate zip archive path from DLL or exe path */ ++ wchar_t zip_path[MAXPATHLEN+1]; ++ memset(zip_path, 0, sizeof(zip_path)); ++ ++ if (get_dllpath(zip_path) || change_ext(zip_path, zip_path, L".zip")) ++ { ++ if (change_ext(zip_path, pathconfig->program_full_path, L".zip")) { ++ zip_path[0] = L'\0'; ++ } ++ } ++ ++ calculate_home_prefix(calculate, argv0_path, zip_path, prefix); ++ ++ if (pathconfig->module_search_path == NULL) { ++ status = calculate_module_search_path(calculate, pathconfig, ++ argv0_path, prefix, zip_path); ++ if (_PyStatus_EXCEPTION(status)) { ++ return status; ++ } ++ } ++ ++done: ++ if (pathconfig->prefix == NULL) { ++ pathconfig->prefix = _PyMem_RawWcsdup(prefix); ++ if (pathconfig->prefix == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ } ++ if (pathconfig->exec_prefix == NULL) { ++ pathconfig->exec_prefix = _PyMem_RawWcsdup(prefix); ++ if (pathconfig->exec_prefix == NULL) { ++ return _PyStatus_NO_MEMORY(); ++ } ++ } ++ ++ return _PyStatus_OK(); ++} ++ ++ ++static PyStatus ++calculate_init(PyCalculatePath *calculate, _PyPathConfig *pathconfig, ++ const PyConfig *config) ++{ ++ calculate->home = pathconfig->home; ++ calculate->path_env = _wgetenv(L"PATH"); ++ ++ calculate->pythonpath_env = config->pythonpath_env; ++ ++ return _PyStatus_OK(); ++} ++ ++ ++static void ++calculate_free(PyCalculatePath *calculate) ++{ ++ PyMem_RawFree(calculate->machine_path); ++ PyMem_RawFree(calculate->user_path); ++} ++ ++ ++/* Calculate the Python path configuration. ++ ++ Inputs: ++ ++ - PyConfig.pythonpath_env: PYTHONPATH environment variable ++ - _PyPathConfig.home: Py_SetPythonHome() or PYTHONHOME environment variable ++ - PATH environment variable ++ - __PYVENV_LAUNCHER__ environment variable ++ - GetModuleFileNameW(NULL): fully qualified path of the executable file of ++ the current process ++ - ._pth configuration file ++ - pyvenv.cfg configuration file ++ - Registry key "Software\Python\PythonCore\X.Y\PythonPath" ++ of HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE where X.Y is the Python ++ version. ++ ++ Outputs, 'pathconfig' fields: ++ ++ - base_executable ++ - program_full_path ++ - module_search_path ++ - prefix ++ - exec_prefix ++ - isolated ++ - site_import ++ ++ If a field is already set (non NULL), it is left unchanged. */ ++PyStatus ++_PyPathConfig_Calculate(_PyPathConfig *pathconfig, const PyConfig *config) ++{ ++ PyStatus status; ++ PyCalculatePath calculate; ++ memset(&calculate, 0, sizeof(calculate)); ++ ++ status = calculate_init(&calculate, pathconfig, config); ++ if (_PyStatus_EXCEPTION(status)) { ++ goto done; ++ } ++ ++ status = calculate_path(&calculate, pathconfig); ++ ++done: ++ calculate_free(&calculate); ++ return status; ++} ++ ++ ++/* Load python3.dll before loading any extension module that might refer ++ to it. That way, we can be sure that always the python3.dll corresponding ++ to this python DLL is loaded, not a python3.dll that might be on the path ++ by chance. ++ Return whether the DLL was found. ++*/ ++static int python3_checked = 0; ++static HANDLE hPython3; ++int ++_Py_CheckPython3(void) ++{ ++ wchar_t py3path[MAXPATHLEN+1]; ++ if (python3_checked) { ++ return hPython3 != NULL; ++ } ++ python3_checked = 1; ++ ++ /* If there is a python3.dll next to the python3y.dll, ++ use that DLL */ ++ if (!get_dllpath(py3path)) { ++ reduce(py3path); ++ join(py3path, PY3_DLLNAME); ++ hPython3 = LoadLibraryExW(py3path, NULL, LOAD_LIBRARY_SEARCH_DEFAULT_DIRS); ++ if (hPython3 != NULL) { ++ return 1; ++ } ++ } ++ ++ /* If we can locate python3.dll in our application dir, ++ use that DLL */ ++ hPython3 = LoadLibraryExW(PY3_DLLNAME, NULL, LOAD_LIBRARY_SEARCH_APPLICATION_DIR); ++ if (hPython3 != NULL) { ++ return 1; ++ } ++ ++ /* For back-compat, also search {sys.prefix}\DLLs, though ++ that has not been a normal install layout for a while */ ++ wcscpy(py3path, Py_GetPrefix()); ++ if (py3path[0]) { ++ join(py3path, L"DLLs\\" PY3_DLLNAME); ++ hPython3 = LoadLibraryExW(py3path, NULL, LOAD_LIBRARY_SEARCH_DEFAULT_DIRS); ++ } ++ return hPython3 != NULL; ++} +-- +2.30.2 + diff --git a/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch deleted file mode 100644 index 65f439769..000000000 --- a/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d1922666b391c2a1d9821ef2295b12531aca1585 Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Sat, 27 Oct 2018 18:48:30 +0100 -Subject: [PATCH 09/25] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS - is not 0 - ---- - PC/getpathp.c | 15 ++++++++++----- - 1 file changed, 10 insertions(+), 5 deletions(-) - -diff --git a/PC/getpathp.c b/PC/getpathp.c -index 53da3a6d05..3fc90067c5 100644 ---- a/PC/getpathp.c 2022-03-21 13:51:40.882555057 +0300 -+++ b/PC/getpathp.c 2022-03-21 13:51:47.614671860 +0300 -@@ -778,13 +778,18 @@ - const wchar_t *zip_path) - { - int skiphome = calculate->home==NULL ? 0 : 1; --#ifdef Py_ENABLE_SHARED -- if (!Py_IgnoreEnvironmentFlag) { -- calculate->machine_path = getpythonregpath(HKEY_LOCAL_MACHINE, -- skiphome); -+ char * allow_registry_paths = getenv("CONDA_PY_ALLOW_REG_PATHS"); -+ if (!Py_IgnoreEnvironmentFlag && allow_registry_paths && allow_registry_paths[0] != '0') -+ { -+ calculate->machine_path = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome); - calculate->user_path = getpythonregpath(HKEY_CURRENT_USER, skiphome); - } --#endif -+ else -+ { -+ calculate->machine_path = NULL; -+ calculate->user_path = NULL; -+ } -+ - /* We only use the default relative PYTHONPATH if we haven't - anything better to use! */ - int skipdefault = (calculate->pythonpath_env != NULL || diff --git a/recipe/patches/0010-Unvendor-openssl.patch b/recipe/patches/0009-Unvendor-openssl.patch similarity index 100% rename from recipe/patches/0010-Unvendor-openssl.patch rename to recipe/patches/0009-Unvendor-openssl.patch diff --git a/recipe/patches/0011-Unvendor-sqlite3.patch b/recipe/patches/0010-Unvendor-sqlite3.patch similarity index 78% rename from recipe/patches/0011-Unvendor-sqlite3.patch rename to recipe/patches/0010-Unvendor-sqlite3.patch index 63ee3877c..7660e9ae8 100644 --- a/recipe/patches/0011-Unvendor-sqlite3.patch +++ b/recipe/patches/0010-Unvendor-sqlite3.patch @@ -25,17 +25,7 @@ index 3507b97279..2b4ac3258c 100644 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" diff --git a/PCbuild/python.props b/PCbuild/python.props index 4c5c18a81d..7b99766d21 100644 ---- a/PCbuild/python.props 2022-03-21 13:54:57.241901275 +0300 -+++ b/PCbuild/python.props 2022-03-21 13:59:01.837935601 +0300 -@@ -57,7 +57,7 @@ - $(EXTERNALS_DIR) - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ -- $(ExternalsDir)sqlite-3.37.2.0\ -+ $(SQLITE3_DIR)\ - $(ExternalsDir)bzip2-1.0.8\ - $(ExternalsDir)xz-5.2.2\ - $(ExternalsDir)libffi-3.3.0\ + diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj index 5eb8559d29..fcdee1be60 100644 --- a/PCbuild/_sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 @@ -45,14 +35,15 @@ index 5eb8559d29..fcdee1be60 100644 - $(sqlite3Dir);%(AdditionalIncludeDirectories) -+ $(sqlite3Dir)\include;%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + -+ $(sqlite3Dir)\lib\sqlite3.lib;%(AdditionalDependencies) ++ $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) + - + @@ -126,10 +129,6 @@ {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} false @@ -63,7 +54,11 @@ index 5eb8559d29..fcdee1be60 100644 - - + + +- +\ No newline at end of file ++ diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj index e39e2d9c22..63d1c27fbc 100644 --- a/PCbuild/sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 diff --git a/recipe/patches/0012-venv-Revert-a-change-from-https-github.com-python-cp.patch b/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch similarity index 100% rename from recipe/patches/0012-venv-Revert-a-change-from-https-github.com-python-cp.patch rename to recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch diff --git a/recipe/patches/0013-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch similarity index 100% rename from recipe/patches/0013-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch rename to recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch diff --git a/recipe/patches/0014-Use-ranlib-from-env-if-env-variable-is-set.patch b/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch similarity index 100% rename from recipe/patches/0014-Use-ranlib-from-env-if-env-variable-is-set.patch rename to recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch diff --git a/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch new file mode 100644 index 000000000..6b57b5f97 --- /dev/null +++ b/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch @@ -0,0 +1,158 @@ +From d906e29bacb60724b1862ecef527ad623bddee3f Mon Sep 17 00:00:00 2001 +From: Ray Donnelly +Date: Tue, 24 Dec 2019 18:37:17 +0100 +Subject: [PATCH 12/24] Add CondaEcosystemModifyDllSearchPath() + + The python interpreter is modifed so that it works as if the python interpreter + was called with the following conda directories. + + os.add_dll_directory(join(sys.prefix, 'bin')) + os.add_dll_directory(join(sys.prefix, 'Scripts')) + os.add_dll_directory(join(sys.prefix, 'Library', 'bin')) + os.add_dll_directory(join(sys.prefix, 'Library', 'usr', 'bin')) + os.add_dll_directory(join(sys.prefix, 'Library', 'mingw-w64', 'bin')) + + Search order + - The directory that contains the DLL (if looking for a dependency) + - Application (python.exe) directory + - Directories added with os.add_dll_directory + - The 5 conda directories + - C:\Windows\System32 + + Note that the default behaviour changed in conda python 3.10 to + make os.add_dll_directory work in user code. + + Note that in conda python <3.11, there was an option + CONDA_DLL_SEARCH_MODIFICATION=1 to add directories in PATH to the search + order, but this was deprecated in 3.10 and removed in 3.11 in favour of using + AddDllDirectory + +Co-authored-by: Isuru Fernando +--- + Python/pylifecycle.c | 96 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 96 insertions(+) + +diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c +index 960a38aebe..a05002b904 100644 +--- a/Python/pylifecycle.c ++++ b/Python/pylifecycle.c +@@ -53,6 +53,10 @@ extern void _PyIO_Fini(void); + #ifdef MS_WINDOWS + # undef BYTE + # include "windows.h" ++# include ++# include ++# include ++# include + + extern PyTypeObject PyWindowsConsoleIO_Type; + # define PyWindowsConsoleIO_Check(op) \ +@@ -105,6 +109,94 @@ __attribute__ ((section (".PyRuntime"))) + = _PyRuntimeState_INIT; + _Py_COMP_DIAG_POP + ++#ifdef MS_WINDOWS ++/* ++ This function will modify the DLL search path so that /Library\bin ++ and other conda PATHS are added to the front of the DLL search path. ++*/ ++ ++#if !defined(LOAD_LIBRARY_SEARCH_DEFAULT_DIRS) ++#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000 ++#endif ++ ++typedef void (WINAPI *ADD)(PCWSTR NewDirectory); ++static ADD pAddDllDirectory = NULL; ++typedef struct ++{ ++ wchar_t *p_relative; ++ wchar_t *p_name; ++} CONDA_PATH; ++ ++#define NUM_CONDA_PATHS 5 ++ ++static CONDA_PATH condaPaths[NUM_CONDA_PATHS] = ++{ ++ {L"Library\\mingw-w64\\bin", NULL}, ++ {L"Library\\usr\\bin", NULL}, ++ {L"Library\\bin", NULL}, ++ {L"Scripts", NULL}, ++ {L"bin", NULL} ++}; ++static wchar_t sv_dll_dirname[1024]; ++ ++int CondaEcosystemModifyDllSearchPath_Init() ++{ ++ int debug_it = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_DEBUG") ? 1 : 0; ++ wchar_t* enable = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_ENABLE"); ++ int res = 0; ++ long long j; ++ CONDA_PATH *p_conda_path; ++ HMODULE dll_handle = NULL; ++ ++ if (pAddDllDirectory == NULL) ++ { ++ pAddDllDirectory = (ADD)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "AddDllDirectory"); ++ ++ /* Determine sv_dll_dirname */ ++ if (GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, ++ (LPCSTR) &CondaEcosystemModifyDllSearchPath_Init, &dll_handle) == 0) ++ { ++ // Getting the pythonxx.dll path failed. Fall back to relative path of python.exe ++ // assuming that the executable that is running this code is python.exe ++ dll_handle = NULL; ++ } ++ GetModuleFileNameW(dll_handle, &sv_dll_dirname[0], sizeof(sv_dll_dirname)/sizeof(sv_dll_dirname[0])-1); ++ sv_dll_dirname[sizeof(sv_dll_dirname)/sizeof(sv_dll_dirname[0])-1] = L'\0'; ++ if (wcsrchr(sv_dll_dirname, L'\\')) ++ *wcsrchr(sv_dll_dirname, L'\\') = L'\0'; ++ ++ for (p_conda_path = &condaPaths[0]; p_conda_path < &condaPaths[NUM_CONDA_PATHS]; ++p_conda_path) ++ { ++ size_t n_chars_dll_dirname = wcslen(sv_dll_dirname); ++ size_t n_chars_p_relative = wcslen(p_conda_path->p_relative); ++ p_conda_path->p_name = malloc(sizeof(wchar_t) * (n_chars_dll_dirname + n_chars_p_relative + 2)); ++ wcsncpy(p_conda_path->p_name, sv_dll_dirname, n_chars_dll_dirname+1); ++ wcsncat(p_conda_path->p_name, L"\\", 2); ++ wcsncat(p_conda_path->p_name, p_conda_path->p_relative, n_chars_p_relative+1); ++ } ++ ++ } ++ ++ if (pAddDllDirectory == NULL) ++ { ++ if (debug_it) ++ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: WARNING :: Please install KB2533623 from http://go.microsoft.com/fwlink/p/?linkid=217865\n"\ ++ L"CondaEcosystemModifyDllSearchPath() :: WARNING :: to improve conda ecosystem DLL isolation"); ++ res = 2; ++ } ++ else { ++ for (j = NUM_CONDA_PATHS-1, p_conda_path = &condaPaths[NUM_CONDA_PATHS-1]; j > -1; --j, --p_conda_path) ++ { ++ if (debug_it) ++ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls - ExePrefix)\n", p_conda_path->p_name); ++ pAddDllDirectory(p_conda_path->p_name); ++ } ++ } ++ return res; ++} ++ ++#endif ++ + static int runtime_initialized = 0; + + PyStatus +@@ -121,6 +213,10 @@ _PyRuntime_Initialize(void) + } + runtime_initialized = 1; + ++#ifdef MS_WINDOWS ++ extern int CondaEcosystemModifyDllSearchPath_Init(); ++ CondaEcosystemModifyDllSearchPath_Init(); ++#endif + return _PyRuntimeState_Init(&_PyRuntime); + } + +-- +2.30.2 + diff --git a/recipe/patches/0015-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0015-Add-CondaEcosystemModifyDllSearchPath.patch deleted file mode 100644 index 38cd4b216..000000000 --- a/recipe/patches/0015-Add-CondaEcosystemModifyDllSearchPath.patch +++ /dev/null @@ -1,481 +0,0 @@ -From 5bb1915898462b89ea9ed9791e26a2e7e3c63fd2 Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Tue, 24 Dec 2019 18:37:17 +0100 -Subject: [PATCH] Add CondaEcosystemModifyDllSearchPath() - -There are 2 modes depending on CONDA_DLL_SEARCH_MODIFICATION env variable - -- unset CONDA_DLL_SEARCH_MODIFICATION (Default) - - In this mode, the python interpreter works as if the python interpreter - was called with the following conda directories. - - os.add_dll_directory(join(sys.prefix, 'bin')) - os.add_dll_directory(join(sys.prefix, 'Scripts')) - os.add_dll_directory(join(sys.prefix, 'Library', 'bin')) - os.add_dll_directory(join(sys.prefix, 'Library', 'usr', 'bin')) - os.add_dll_directory(join(sys.prefix, 'Library', 'mingw-w64', 'bin')) - - Search order - - The directory that contains the DLL (if looking for a dependency) - - Application (python.exe) directory - - Directories added with os.add_dll_directory - - The 5 conda directories - - C:\Windows\System32 - - Note that the default behaviour changed in conda python 3.10 to - make os.add_dll_directory work in user code. - -- CONDA_DLL_SEARCH_MODIFICATION=1 - - Search order is roughly, - - - The directory that contains the DLL (if looking for a dependency) - - Application (python.exe) directory - - C:\Windows - - Current working directory - - The 5 conda directories - - PATH - - Directories added with os.add_dll_directory - - Old PATH entries (Deficiency in current patch) - - Old working directories (Deficiency in current patch) - - C:\Windows\System32 - -This changes the DLL search order so that C:\Windows\System32 does not -get searched in before entries in PATH. - -Reviewed by Kai Tietz 7.2.2019 - -Updated a bit to include other directories. - -Made fwprintfs breakpointable - -From Shaun Walbridge: -Fix CondaEcosystemModifyDllSearchPath for users of the Python DLL - -Co-authored-by: Isuru Fernando ---- - Modules/main.c | 362 +++++++++++++++++++++++++++++++++++++++++++ - Python/dynload_win.c | 4 + - Python/pylifecycle.c | 5 +- - 3 files changed, 370 insertions(+), 1 deletion(-) - -diff --git a/Modules/main.c b/Modules/main.c -index 2684d23067..04362ea168 100644 ---- a/Modules/main.c -+++ b/Modules/main.c -@@ -17,6 +17,10 @@ - #endif - #ifdef MS_WINDOWS - # include // STATUS_CONTROL_C_EXIT -+# include -+# include -+# include -+# include - #endif - /* End of includes for exit_sigint() */ - -@@ -680,10 +684,369 @@ Py_RunMain(void) - return exitcode; - } - -+#ifdef MS_WINDOWS -+/* Please do not remove this function. It is needed for testing -+ CondaEcosystemModifyDllSearchPath(). */ -+ -+/* -+void LoadAndUnloadTestDLL(wchar_t* test_dll) -+{ -+ wchar_t test_path[MAX_PATH + 1]; -+ HMODULE hDLL = LoadLibraryExW(&test_dll[0], NULL, 0); -+ if (hDLL == NULL) -+ { -+ wchar_t err_msg[256]; -+ DWORD err_code = GetLastError(); -+ FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, -+ NULL, err_code, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), -+ err_msg, (sizeof(err_msg) / sizeof(wchar_t)), NULL); -+ fwprintf(stderr, L"LoadAndUnloadTestDLL() :: ERROR :: Failed to load %ls, error is: %ls\n", &test_dll[0], &err_msg[0]); -+ } -+ GetModuleFileNameW(hDLL, &test_path[0], MAX_PATH); -+ fwprintf(stderr, L"LoadAndUnloadTestDLL() :: %ls loaded from %ls\n", &test_dll[0], &test_path[0]); -+ if (FreeLibrary(hDLL) == 0) -+ { -+ wchar_t err_msg[256]; -+ DWORD err_code = GetLastError(); -+ FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, -+ NULL, err_code, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), -+ err_msg, (sizeof(err_msg) / sizeof(wchar_t)), NULL); -+ fwprintf(stderr, L"LoadAndUnloadTestDLL() :: ERROR :: Failed to free %ls, error is: %ls\n", &test_dll[0], &err_msg[0]); -+ } -+} -+*/ -+ -+/* -+ Provided CONDA_DLL_SEARCH_MODIFICATION_ENABLE is set (to anything at all!) -+ this function will modify the DLL search path so that C:\Windows\System32 -+ does not appear before entries in PATH. If it does appear in PATH then it -+ gets added at the position it was in in PATH. -+ -+ This is achieved via a call to SetDefaultDllDirectories() then calls to -+ AddDllDirectory() for each entry in PATH. We also take the opportunity to -+ clean-up these PATH entries such that any '/' are replaced with '\', no -+ double quotes occour and no PATH entry ends with '\'. -+ -+ Caution: Microsoft's documentation says that the search order of entries -+ passed to AddDllDirectory is not respected and arbitrary. I do not think -+ this will be the case but it is worth bearing in mind. -+*/ -+ -+#if !defined(LOAD_LIBRARY_SEARCH_DEFAULT_DIRS) -+#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000 -+#endif -+ -+/* Caching of prior processed PATH environment */ -+static wchar_t *sv_path_env = NULL; -+typedef void (WINAPI *SDDD)(DWORD DirectoryFlags); -+typedef void (WINAPI *SDD)(PCWSTR SetDir); -+typedef void (WINAPI *ADD)(PCWSTR NewDirectory); -+static SDDD pSetDefaultDllDirectories = NULL; -+static SDD pSetDllDirectory = NULL; -+static ADD pAddDllDirectory = NULL; -+static int sv_failed_to_find_dll_fns = 0; -+/* sv_executable_dirname is gotten but not used ATM. */ -+static wchar_t sv_executable_dirname[1024]; -+/* Have hidden this behind a define because it is clearly not code that -+ could be considered for upstreaming so clearly delimiting it makes it -+ easier to remove. */ -+#define HARDCODE_CONDA_PATHS -+#if defined(HARDCODE_CONDA_PATHS) -+typedef struct -+{ -+ wchar_t *p_relative; -+ wchar_t *p_name; -+} CONDA_PATH; -+ -+#define NUM_CONDA_PATHS 5 -+ -+static CONDA_PATH condaPaths[NUM_CONDA_PATHS] = -+{ -+ {L"Library\\mingw-w64\\bin", NULL}, -+ {L"Library\\usr\\bin", NULL}, -+ {L"Library\\bin", NULL}, -+ {L"Scripts", NULL}, -+ {L"bin", NULL} -+}; -+#endif /* HARDCODE_CONDA_PATHS */ -+static wchar_t sv_executable_dirname[1024]; -+static wchar_t sv_windows_directory[1024]; -+static wchar_t *sv_added_windows_directory = NULL; -+static wchar_t *sv_added_cwd = NULL; -+ -+int CondaEcosystemModifyDllSearchPath_Init() -+{ -+ int debug_it = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_DEBUG") ? 1 : 0; -+ wchar_t* enable = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_ENABLE"); -+ int res = 0; -+#if defined(HARDCODE_CONDA_PATHS) -+ long long j; -+ CONDA_PATH *p_conda_path; -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ -+ if (pSetDefaultDllDirectories == NULL) -+ { -+ wchar_t *conda_prefix = _wgetenv(L"CONDA_PREFIX"); -+ wchar_t *build_prefix = _wgetenv(L"BUILD_PREFIX"); -+ wchar_t *prefix = _wgetenv(L"PREFIX"); -+ pSetDefaultDllDirectories = (SDDD)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "SetDefaultDllDirectories"); -+ pSetDllDirectory = (SDD)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "SetDllDirectoryW"); -+ pAddDllDirectory = (ADD)GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "AddDllDirectory"); -+ -+ /* Determine sv_executable_dirname */ -+ GetModuleFileNameW(NULL, &sv_executable_dirname[0], sizeof(sv_executable_dirname)/sizeof(sv_executable_dirname[0])-1); -+ sv_executable_dirname[sizeof(sv_executable_dirname)/sizeof(sv_executable_dirname[0])-1] = L'\0'; -+ if (wcsrchr(sv_executable_dirname, L'\\')) -+ *wcsrchr(sv_executable_dirname, L'\\') = L'\0'; -+#if defined(HARDCODE_CONDA_PATHS) -+ for (p_conda_path = &condaPaths[0]; p_conda_path < &condaPaths[NUM_CONDA_PATHS]; ++p_conda_path) -+ { -+ size_t n_chars_executable_dirname = wcslen(sv_executable_dirname); -+ size_t n_chars_p_relative = wcslen(p_conda_path->p_relative); -+ p_conda_path->p_name = malloc(sizeof(wchar_t) * (n_chars_executable_dirname + n_chars_p_relative + 2)); -+ wcsncpy(p_conda_path->p_name, sv_executable_dirname, n_chars_executable_dirname+1); -+ wcsncat(p_conda_path->p_name, L"\\", 2); -+ wcsncat(p_conda_path->p_name, p_conda_path->p_relative, n_chars_p_relative+1); -+ } -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ -+ /* Determine sv_windows_directory */ -+ { -+ char tmp_ascii[1024]; -+ size_t convertedChars = 0; -+ GetWindowsDirectory(&tmp_ascii[0], sizeof(tmp_ascii) / sizeof(tmp_ascii[0]) - 1); -+ tmp_ascii[sizeof(tmp_ascii) / sizeof(tmp_ascii[0]) - 1] = L'\0'; -+ mbstowcs_s(&convertedChars, sv_windows_directory, strlen(tmp_ascii)+1, tmp_ascii, _TRUNCATE); -+ sv_windows_directory[sizeof(sv_windows_directory) / sizeof(sv_windows_directory[0]) - 1] = L'\0'; -+ } -+ } -+ -+ if (pSetDefaultDllDirectories == NULL || pSetDllDirectory == NULL || pAddDllDirectory == NULL) -+ { -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: WARNING :: Please install KB2533623 from http://go.microsoft.com/fwlink/p/?linkid=217865\n"\ -+ L"CondaEcosystemModifyDllSearchPath() :: WARNING :: to improve conda ecosystem DLL isolation"); -+ sv_failed_to_find_dll_fns = 1; -+ res = 2; -+ } -+#if defined(HARDCODE_CONDA_PATHS) -+ else if (enable == NULL || !wcscmp(enable, L"0")) { -+ for (j = NUM_CONDA_PATHS-1, p_conda_path = &condaPaths[NUM_CONDA_PATHS-1]; j > -1; --j, --p_conda_path) -+ { -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls - ExePrefix)\n", p_conda_path->p_name); -+ pAddDllDirectory(p_conda_path->p_name); -+ } -+ } -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ return res; -+} -+ -+int CondaEcosystemModifyDllSearchPath(int add_windows_directory, int add_cwd) { -+ int debug_it = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_DEBUG") ? 1 : 0; -+ const wchar_t *path_env = _wgetenv(L"PATH"); -+ wchar_t current_working_directory[1024]; -+ const wchar_t *p_cwd = NULL; -+ long long entry_num = 0; -+ long long i; -+ wchar_t **path_entries; -+ wchar_t *path_end; -+ long long num_entries = 1; -+#if defined(HARDCODE_CONDA_PATHS) -+ long long j; -+ CONDA_PATH *p_conda_path; -+ int foundCondaPath[NUM_CONDA_PATHS] = {0, 0, 0, 0, 0}; -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ wchar_t *enable; -+ -+ int SetDllDirectoryValue = LOAD_LIBRARY_SEARCH_DEFAULT_DIRS; -+ if (sv_failed_to_find_dll_fns) -+ return 1; -+ -+ /* Fix for embedding the Python DLL. Courtesy of Shaun Walbridge -+ * if the CondaEcosystemModifyDllSearchPath_Init(argc, argv) code hasn't been run -+ * or failed to bind to the required functions in kernel32.dll, fail early to avoid -+ * an access violation. */ -+ if (pSetDefaultDllDirectories == NULL || pSetDllDirectory == NULL || pAddDllDirectory == NULL) -+ return 1; -+ -+ enable = _wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_ENABLE"); -+ if (enable == NULL || !wcscmp(enable, L"0")) -+ return 0; -+ if (_wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_NEVER_ADD_WINDOWS_DIRECTORY")) -+ add_windows_directory = 0; -+ if (_wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_NEVER_ADD_CWD")) -+ add_cwd = 0; -+ -+ if (add_cwd) -+ { -+ _wgetcwd(¤t_working_directory[0], (sizeof(current_working_directory)/sizeof(current_working_directory[0])) - 1); -+ current_working_directory[sizeof(current_working_directory)/sizeof(current_working_directory[0]) - 1] = L'\0'; -+ p_cwd = ¤t_working_directory[0]; -+ } -+ -+ /* cache path to avoid multiple adds */ -+ if (sv_path_env != NULL && path_env != NULL && !wcscmp(path_env, sv_path_env)) -+ { -+ if ((add_windows_directory && sv_added_windows_directory != NULL) || -+ (!add_windows_directory && sv_added_windows_directory == NULL) ) -+ { -+ if ((p_cwd == NULL && sv_added_cwd == NULL) || -+ p_cwd != NULL && sv_added_cwd != NULL && !wcscmp(p_cwd, sv_added_cwd)) -+ { -+ if (_wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_NEVER_CACHE") == NULL) -+ { -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: INFO :: Values unchanged\n"); -+ return 0; -+ } -+ } -+ } -+ } -+ /* Something has changed. -+ Reset to default search order */ -+ pSetDllDirectory(NULL); -+ -+ if (sv_path_env != NULL) -+ { -+ free(sv_path_env); -+ } -+ sv_path_env = (path_env == NULL) ? NULL : _wcsdup(path_env); -+ -+ if (path_env != NULL) -+ { -+ size_t len = wcslen(path_env); -+ wchar_t *path = (wchar_t *)alloca((len + 1) * sizeof(wchar_t)); -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: PATH=%ls\n\b", path_env); -+ memcpy(path, path_env, (len + 1) * sizeof(wchar_t)); -+ /* Convert any / to \ */ -+ /* Replace slash with backslash */ -+ while ((path_end = wcschr(path, L'/'))) -+ *path_end = L'\\'; -+ /* Remove all double quotes */ -+ while ((path_end = wcschr(path, L'"'))) -+ memmove(path_end, path_end + 1, sizeof(wchar_t) * (len-- - (path_end - path))); -+ /* Remove all leading and double ';' */ -+ while (*path == L';') -+ memmove(path, path + 1, sizeof(wchar_t) * len--); -+ while ((path_end = wcsstr(path, L";;"))) -+ memmove(path_end, path_end + 1, sizeof(wchar_t) * (len-- - (path_end - path))); -+ /* Remove trailing ;'s */ -+ while(path[len-1] == L';') -+ path[len-- - 1] = L'\0'; -+ -+ if (len == 0) -+ return 2; -+ -+ /* Count the number of path entries */ -+ path_end = path; -+ while ((path_end = wcschr(path_end, L';'))) -+ { -+ ++num_entries; -+ ++path_end; -+ } -+ -+ path_entries = (wchar_t **)alloca((num_entries) * sizeof(wchar_t *)); -+ path_end = wcschr(path, L';'); -+ -+ if (getenv("CONDA_DLL_SET_DLL_DIRECTORY_VALUE") != NULL) -+ SetDllDirectoryValue = atoi(getenv("CONDA_DLL_SET_DLL_DIRECTORY_VALUE")); -+ pSetDefaultDllDirectories(SetDllDirectoryValue); -+ while (path != NULL) -+ { -+ if (path_end != NULL) -+ { -+ *path_end = L'\0'; -+ /* Hygiene, no \ at the end */ -+ while (path_end > path && path_end[-1] == L'\\') -+ { -+ --path_end; -+ *path_end = L'\0'; -+ } -+ } -+ if (wcslen(path) != 0) -+ path_entries[entry_num++] = path; -+ path = path_end; -+ if (path != NULL) -+ { -+ while (*path == L'\0') -+ ++path; -+ path_end = wcschr(path, L';'); -+ } -+ } -+ for (i = num_entries - 1; i > -1; --i) -+ { -+#if defined(HARDCODE_CONDA_PATHS) -+ for (j = 0, p_conda_path = &condaPaths[0]; p_conda_path < &condaPaths[NUM_CONDA_PATHS]; ++j, ++p_conda_path) -+ { -+ if (!foundCondaPath[j] && !wcscmp(path_entries[i], p_conda_path->p_name)) -+ { -+ foundCondaPath[j] = 1; -+ break; -+ } -+ } -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls)\n", path_entries[i]); -+ pAddDllDirectory(path_entries[i]); -+ } -+ } -+ -+#if defined(HARDCODE_CONDA_PATHS) -+ if (_wgetenv(L"CONDA_DLL_SEARCH_MODIFICATION_DO_NOT_ADD_EXEPREFIX") == NULL) -+ { -+ for (j = NUM_CONDA_PATHS-1, p_conda_path = &condaPaths[NUM_CONDA_PATHS-1]; j > -1; --j, --p_conda_path) -+ { -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: p_conda_path->p_name = %ls, foundCondaPath[%zd] = %d\n", p_conda_path->p_name, j, foundCondaPath[j]); -+ if (!foundCondaPath[j]) -+ { -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls - ExePrefix)\n", p_conda_path->p_name); -+ pAddDllDirectory(p_conda_path->p_name); -+ } -+ } -+ } -+#endif /* defined(HARDCODE_CONDA_PATHS) */ -+ -+ if (p_cwd) -+ { -+ if (sv_added_cwd != NULL && wcscmp(p_cwd, sv_added_cwd)) -+ { -+ free(sv_added_cwd); -+ } -+ sv_added_cwd = _wcsdup(p_cwd); -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls - CWD)\n", sv_added_cwd); -+ pAddDllDirectory(sv_added_cwd); -+ } -+ -+ if (add_windows_directory) -+ { -+ sv_added_windows_directory = &sv_windows_directory[0]; -+ if (debug_it) -+ fwprintf(stderr, L"CondaEcosystemModifyDllSearchPath() :: AddDllDirectory(%ls - WinDir)\n", sv_windows_directory); -+ pAddDllDirectory(sv_windows_directory); -+ } -+ else -+ { -+ sv_added_windows_directory = NULL; -+ } -+ -+ return 0; -+} -+#endif -+ - - static int - pymain_main(_PyArgv *args) - { -+#ifdef MS_WINDOWS -+ /* LoadAndUnloadTestDLL(L"libiomp5md.dll"); */ -+ CondaEcosystemModifyDllSearchPath_Init(args->argc, args->wchar_argv); -+ /* LoadAndUnloadTestDLL(L"libiomp5md.dll"); */ -+#endif - PyStatus status = pymain_init(args); - if (_PyStatus_IS_EXIT(status)) { - pymain_free(); -diff --git a/Python/dynload_win.c b/Python/dynload_win.c -index 5702ab2cd7..e2efd4c8ea 100644 ---- a/Python/dynload_win.c -+++ b/Python/dynload_win.c -@@ -190,6 +190,10 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, - to avoid DLL preloading attacks and enable use of the - AddDllDirectory function. We add SEARCH_DLL_LOAD_DIR to - ensure DLLs adjacent to the PYD are preferred. */ -+ /* This resyncs values in PATH to AddDllDirectory() */ -+ extern int CondaEcosystemModifyDllSearchPath(int, int); -+ CondaEcosystemModifyDllSearchPath(1, 1); -+ - Py_BEGIN_ALLOW_THREADS - hDLL = LoadLibraryExW(wpathname, NULL, - LOAD_LIBRARY_SEARCH_DEFAULT_DIRS | -diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c -index eeaf20b461..a32aa666e4 100644 ---- a/Python/pylifecycle.c -+++ b/Python/pylifecycle.c -@@ -101,7 +101,10 @@ _PyRuntime_Initialize(void) - return _PyStatus_OK(); - } - runtime_initialized = 1; -- -+#ifdef MS_WINDOWS -+ extern int CondaEcosystemModifyDllSearchPath_Init(); -+ CondaEcosystemModifyDllSearchPath_Init(); -+#endif - return _PyRuntimeState_Init(&_PyRuntime); - } - --- -2.30.2 - diff --git a/recipe/patches/0016-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch b/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch similarity index 100% rename from recipe/patches/0016-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch rename to recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch diff --git a/recipe/patches/0017-Doing-d1trimfile.patch b/recipe/patches/0016-Doing-d1trimfile.patch similarity index 93% rename from recipe/patches/0017-Doing-d1trimfile.patch rename to recipe/patches/0016-Doing-d1trimfile.patch index 2719b68ce..782e2f374 100644 --- a/recipe/patches/0017-Doing-d1trimfile.patch +++ b/recipe/patches/0016-Doing-d1trimfile.patch @@ -1,7 +1,7 @@ -From f84b26b6207064643e313320346ec9f41a43e958 Mon Sep 17 00:00:00 2001 +From 38c7deb367f0ac42ac2091e21bc4f08f6ecc3513 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 21:47:47 +0100 -Subject: [PATCH 17/25] Doing d1trimfile +Subject: [PATCH 14/24] Doing d1trimfile --- PCbuild/_asyncio.vcxproj | 20 ++++++++++++++++++++ @@ -9,8 +9,8 @@ Subject: [PATCH 17/25] Doing d1trimfile PCbuild/_ctypes.vcxproj | 4 ++++ PCbuild/_ctypes_test.vcxproj | 20 ++++++++++++++++++++ PCbuild/_decimal.vcxproj | 4 ++++ - PCbuild/_elementtree.vcxproj | 4 ++++ - PCbuild/_freeze_importlib.vcxproj | 4 ++++ + PCbuild/_elementtree.vcxproj | 6 +++++- + PCbuild/_freeze_module.vcxproj | 4 ++++ PCbuild/_hashlib.vcxproj | 12 ++++++++++++ PCbuild/_lzma.vcxproj | 4 ++++ PCbuild/_msi.vcxproj | 12 ++++++++++++ @@ -46,7 +46,7 @@ Subject: [PATCH 17/25] Doing d1trimfile PCbuild/winsound.vcxproj | 12 ++++++++++++ PCbuild/xxlimited.vcxproj | 6 ++++++ PCbuild/xxlimited_35.vcxproj | 6 ++++++ - 42 files changed, 363 insertions(+), 3 deletions(-) + 42 files changed, 364 insertions(+), 4 deletions(-) diff --git a/PCbuild/_asyncio.vcxproj b/PCbuild/_asyncio.vcxproj index ed1e1bc0a4..47d322be5f 100644 @@ -95,13 +95,13 @@ index 3fe95fbf83..0402f7a9aa 100644 diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj -index 69e4271a9b..f28002d190 100644 +index 6ac26f1916..07a58154f7 100644 --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -95,6 +95,10 @@ - FFI_BUILDING;%(PreprocessorDefinitions) + USING_MALLOC_CLOSURE_DOT_C=1;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% @@ -156,13 +156,15 @@ index 0916f1a2d3..17a4cbfcd7 100644 diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj -index 4a125b243b..20cc09d63f 100644 +index 8da5244bac..20cc09d63f 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj -@@ -95,6 +95,10 @@ +@@ -94,7 +94,11 @@ + ..\Modules\expat;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) +- _CRT_SECURE_NO_WARNINGS;XML_STATIC;%(PreprocessorDefinitions) ++ _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% @@ -170,14 +172,14 @@ index 4a125b243b..20cc09d63f 100644 -diff --git a/PCbuild/_freeze_importlib.vcxproj b/PCbuild/_freeze_importlib.vcxproj -index e437412a16..c4d5886b9f 100644 ---- a/PCbuild/_freeze_importlib.vcxproj -+++ b/PCbuild/_freeze_importlib.vcxproj -@@ -89,6 +89,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) +diff --git a/PCbuild/_freeze_module.vcxproj b/PCbuild/_freeze_module.vcxproj +index 0a74f5850a..b23ab1ba6a 100644 +--- a/PCbuild/_freeze_module.vcxproj ++++ b/PCbuild/_freeze_module.vcxproj +@@ -91,6 +91,10 @@ + Py_NO_ENABLE_SHARED;Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) + Disabled + false + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% @@ -347,20 +349,20 @@ index 8fd75f90e7..b403828291 100644 diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index fcdee1be60..ec2680955f 100644 +index 4735477f00..c7c377e217 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj -@@ -94,6 +94,10 @@ - +@@ -95,6 +95,10 @@ - $(sqlite3Dir)\include;%(AdditionalIncludeDirectories) + $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% - $(sqlite3Dir)\lib\sqlite3.lib;%(AdditionalDependencies) + $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj index b2c23d5e8c..ebe4e88848 100644 --- a/PCbuild/_ssl.vcxproj @@ -569,12 +571,12 @@ index af813b77c1..9ff2acde0a 100644 $(tcltkLib);%(AdditionalDependencies) diff --git a/PCbuild/liblzma.vcxproj b/PCbuild/liblzma.vcxproj -index a6bd59ec0b..e5d2c4a674 100644 +index 4dd42ab98a..7c2dbc7e70 100644 --- a/PCbuild/liblzma.vcxproj +++ b/PCbuild/liblzma.vcxproj @@ -94,6 +94,10 @@ WIN32;HAVE_CONFIG_H;_LIB;%(PreprocessorDefinitions) - $(lzmaDir)windows;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) + $(lzmaDir)windows/vs2019;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) 4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% @@ -584,13 +586,13 @@ index a6bd59ec0b..e5d2c4a674 100644 diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj -index b2d9f5d57d..26ac82980c 100644 +index 001f8afd89..3be4ac06dd 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -92,6 +92,10 @@ $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;HAVE_EXPAT_H;XML_STATIC;%(PreprocessorDefinitions) + _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;XML_STATIC;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% @@ -599,7 +601,7 @@ index b2d9f5d57d..26ac82980c 100644 diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj -index 550e084230..0ea871bddb 100644 +index 35f2f7e505..02d7961c5d 100644 --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -93,6 +93,10 @@ @@ -612,7 +614,7 @@ index 550e084230..0ea871bddb 100644 + /d1trimfile:%SRC_DIR% - version.lib;%(AdditionalDependencies) + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/pyshellext.vcxproj b/PCbuild/pyshellext.vcxproj index ea432d6bc9..13bc692103 100644 --- a/PCbuild/pyshellext.vcxproj @@ -629,7 +631,7 @@ index ea432d6bc9..13bc692103 100644 version.lib;shlwapi.lib;%(AdditionalDependencies) diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 4c47b979c3..3a8ea1db8a 100644 +index 5f2356cb36..0fd20d010e 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -91,6 +91,10 @@ @@ -672,7 +674,7 @@ index fb27e9e712..f8dc841ef1 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index 0382977d6c..8da161b446 100644 +index a38040159e..c4cb39c821 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -99,7 +99,7 @@ @@ -685,7 +687,7 @@ index 0382977d6c..8da161b446 100644 $(zlibDir);%(AdditionalIncludeDirectories) _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index ab572d2020..1115e75445 100644 +index 247ea10d5c..5bd4bbbc3a 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -91,6 +91,18 @@ @@ -721,7 +723,7 @@ index e21e46a1b7..ff7dc6635d 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj -index 44e3fc2927..1105c99807 100644 +index e50b69aefe..3aa738bb7f 100644 --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -93,6 +93,10 @@ @@ -734,7 +736,7 @@ index 44e3fc2927..1105c99807 100644 + /d1trimfile:%SRC_DIR% - version.lib;%(AdditionalDependencies) + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj index 750a713949..1da66eaddc 100644 --- a/PCbuild/select.vcxproj diff --git a/recipe/patches/0018-cross-compile-darwin.patch b/recipe/patches/0017-cross-compile-darwin.patch similarity index 74% rename from recipe/patches/0018-cross-compile-darwin.patch rename to recipe/patches/0017-cross-compile-darwin.patch index 471edde5d..8d05bcfe2 100644 --- a/recipe/patches/0018-cross-compile-darwin.patch +++ b/recipe/patches/0017-cross-compile-darwin.patch @@ -1,7 +1,7 @@ -From 2d33a359ac5308ebf6dbf4dcab94bcc954004265 Mon Sep 17 00:00:00 2001 +From 0264f5cfd14e95977ef764e59a45733d28e9bf8c Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Fri, 2 Oct 2020 00:03:12 +0200 -Subject: [PATCH 18/25] cross compile darwin +Subject: [PATCH 15/24] cross compile darwin By Isuru Fernando. --- @@ -11,11 +11,29 @@ By Isuru Fernando. setup.py | 6 +++--- 4 files changed, 17 insertions(+), 6 deletions(-) +diff --git a/Lib/platform.py b/Lib/platform.py +index c272c407c7..c05b9b8ea9 100755 +--- a/Lib/platform.py ++++ b/Lib/platform.py +@@ -413,7 +413,12 @@ def win32_ver(release='', version='', csd='', ptype=''): + def _mac_ver_xml(): + fn = '/System/Library/CoreServices/SystemVersion.plist' + if not os.path.exists(fn): +- return None ++ if 'SDKROOT' in os.environ: ++ fn = os.environ['SDKROOT'] + fn ++ if not os.path.exists(fn): ++ return None ++ else: ++ return None + + try: + import plistlib diff --git a/configure b/configure -index f227dd88c0..2e2a4a6628 100755 ---- a/configure 2022-03-21 14:06:54.541526845 +0300 -+++ b/configure 2022-03-21 14:07:04.705697427 +0300 -@@ -3393,6 +3393,9 @@ +index 91227f00be..b89d1a380a 100755 +--- a/configure ++++ b/configure +@@ -3873,6 +3873,9 @@ if test "$cross_compiling" = yes; then _host_cpu=$host_cpu esac ;; @@ -25,7 +43,7 @@ index f227dd88c0..2e2a4a6628 100755 *-*-cygwin*) _host_cpu= ;; -@@ -6250,7 +6253,7 @@ +@@ -7051,7 +7054,7 @@ esac fi fi @@ -35,10 +53,10 @@ index f227dd88c0..2e2a4a6628 100755 readelf|:) as_fn_error $? "readelf for the host is required for cross builds" "$LINENO" 5 diff --git a/configure.ac b/configure.ac -index f70a69b2f9..f58eb5c607 100644 ---- a/configure.ac 2022-03-21 14:06:54.545526912 +0300 -+++ b/configure.ac 2022-03-21 14:07:04.705697427 +0300 -@@ -448,6 +448,9 @@ +index 77fb609b74..1d9fa9e4ef 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -597,6 +597,9 @@ if test "$cross_compiling" = yes; then _host_cpu=$host_cpu esac ;; @@ -48,7 +66,7 @@ index f70a69b2f9..f58eb5c607 100644 *-*-cygwin*) _host_cpu= ;; -@@ -1211,7 +1214,7 @@ +@@ -1590,7 +1593,7 @@ then fi AC_CHECK_TOOLS([READELF], [readelf], [:]) @@ -57,29 +75,11 @@ index f70a69b2f9..f58eb5c607 100644 case "$READELF" in readelf|:) AC_MSG_ERROR([readelf for the host is required for cross builds]) -diff --git a/Lib/platform.py b/Lib/platform.py -index 134fbae6b1..fbf27ac7d3 100755 ---- a/Lib/platform.py 2022-03-21 14:06:54.541526845 +0300 -+++ b/Lib/platform.py 2022-03-21 14:07:04.701697360 +0300 -@@ -411,7 +411,12 @@ - def _mac_ver_xml(): - fn = '/System/Library/CoreServices/SystemVersion.plist' - if not os.path.exists(fn): -- return None -+ if 'SDKROOT' in os.environ: -+ fn = os.environ['SDKROOT'] + fn -+ if not os.path.exists(fn): -+ return None -+ else: -+ return None - - try: - import plistlib diff --git a/setup.py b/setup.py -index 783d20bdcd..36119d3ba9 100644 ---- a/setup.py 2022-03-21 14:06:54.545526912 +0300 -+++ b/setup.py 2022-03-21 14:07:04.705697427 +0300 -@@ -83,7 +83,7 @@ +index 25fc167722..1a354d5bd4 100644 +--- a/setup.py ++++ b/setup.py +@@ -81,7 +81,7 @@ def get_platform(): HOST_PLATFORM = get_platform() MS_WINDOWS = (HOST_PLATFORM == 'win32') CYGWIN = (HOST_PLATFORM == 'cygwin') @@ -87,8 +87,8 @@ index 783d20bdcd..36119d3ba9 100644 +MACOS = (HOST_PLATFORM.startswith('darwin')) AIX = (HOST_PLATFORM.startswith('aix')) VXWORKS = ('vxworks' in HOST_PLATFORM) - CC = os.environ.get("CC") -@@ -1078,11 +1078,11 @@ + EMSCRIPTEN = HOST_PLATFORM == 'emscripten-wasm32' +@@ -1067,11 +1067,11 @@ def detect_readline_curses(self): readline_lib = 'readline' do_readline = self.compiler.find_library_file(self.lib_dirs, readline_lib) @@ -102,3 +102,6 @@ index 783d20bdcd..36119d3ba9 100644 ret = run_command("ldd %s > %s" % (do_readline, tmpfile)) else: ret = 1 +-- +2.30.2 + diff --git a/recipe/patches/0019-Fix-TZPATH-on-windows.patch b/recipe/patches/0018-Fix-TZPATH-on-windows.patch similarity index 63% rename from recipe/patches/0019-Fix-TZPATH-on-windows.patch rename to recipe/patches/0018-Fix-TZPATH-on-windows.patch index e703ef0b3..c6b4b3b24 100644 --- a/recipe/patches/0019-Fix-TZPATH-on-windows.patch +++ b/recipe/patches/0018-Fix-TZPATH-on-windows.patch @@ -1,24 +1,24 @@ -From d40f7ce97c2791ec5fee7c7dbb6b8cea6d2dceb5 Mon Sep 17 00:00:00 2001 +From cedc51e9b9484cd0db7c07722d1c480107216c0d Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 7 Oct 2020 10:08:30 -0500 -Subject: [PATCH 19/25] Fix TZPATH on windows +Subject: [PATCH 16/24] Fix TZPATH on windows --- Lib/sysconfig.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py -index 95b48f6429..ce1bb8177b 100644 +index ebe3711827..d51ba78d51 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py -@@ -611,6 +611,7 @@ def get_config_vars(*args): - +@@ -666,6 +666,7 @@ def get_config_vars(*args): if os.name == 'nt': _init_non_posix(_CONFIG_VARS) + _CONFIG_VARS['VPATH'] = sys._vpath + _CONFIG_VARS['TZPATH'] = os.path.join(_PREFIX, "share", "zoneinfo") if os.name == 'posix': _init_posix(_CONFIG_VARS) - # For backward compatibility, see issue19555 + if _HAS_USER_BASE: -- 2.30.2 diff --git a/recipe/patches/0020-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch b/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch similarity index 100% rename from recipe/patches/0020-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch rename to recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch diff --git a/recipe/patches/0021-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch b/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch similarity index 100% rename from recipe/patches/0021-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch rename to recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch diff --git a/recipe/patches/0022-Unvendor-bzip2.patch b/recipe/patches/0021-Unvendor-bzip2.patch similarity index 100% rename from recipe/patches/0022-Unvendor-bzip2.patch rename to recipe/patches/0021-Unvendor-bzip2.patch diff --git a/recipe/patches/0023-Unvendor-libffi.patch b/recipe/patches/0022-Unvendor-libffi.patch similarity index 82% rename from recipe/patches/0023-Unvendor-libffi.patch rename to recipe/patches/0022-Unvendor-libffi.patch index 83354f0c6..49b1ba481 100644 --- a/recipe/patches/0023-Unvendor-libffi.patch +++ b/recipe/patches/0022-Unvendor-libffi.patch @@ -1,14 +1,14 @@ -From 8c03857a90d2bd457c84976d7e94aaaebc384578 Mon Sep 17 00:00:00 2001 +From 42878cbda85eb54cc8c7ce5db987cd37b8cea4cc Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 03:07:40 -0700 -Subject: [PATCH 23/26] Unvendor libffi +Subject: [PATCH 20/24] Unvendor libffi --- PCbuild/libffi.props | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props -index 975c4a0d35..40ddb08d2b 100644 +index 22c9550e2c..40ddb08d2b 100644 --- a/PCbuild/libffi.props +++ b/PCbuild/libffi.props @@ -2,20 +2,11 @@ @@ -20,13 +20,13 @@ index 975c4a0d35..40ddb08d2b 100644 - $(libffiOutDir);%(AdditionalLibraryDirectories) -- libffi-7.lib;%(AdditionalDependencies) +- libffi-8.lib;%(AdditionalDependencies) + $(condaDir)\lib;%(AdditionalLibraryDirectories) + ffi.lib;%(AdditionalDependencies) - -- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-7.dll" /> +- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-8.dll" /> - - - @@ -34,6 +34,9 @@ index 975c4a0d35..40ddb08d2b 100644 - - - - -\ No newline at end of file --- +- +\ No newline at end of file ++ +-- +2.30.2 + diff --git a/recipe/patches/0024-Unvendor-tcltk.patch b/recipe/patches/0023-Unvendor-tcltk.patch similarity index 65% rename from recipe/patches/0024-Unvendor-tcltk.patch rename to recipe/patches/0023-Unvendor-tcltk.patch index 2682c5a45..c6e2caa8d 100644 --- a/recipe/patches/0024-Unvendor-tcltk.patch +++ b/recipe/patches/0023-Unvendor-tcltk.patch @@ -1,17 +1,17 @@ -From fad421ae01f53e2e207e3b695e8a469a6b5d1949 Mon Sep 17 00:00:00 2001 +From 601a2843ef2afef6b9d747d5a7d2079d967c2f20 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Fri, 20 Aug 2021 10:23:51 -0700 -Subject: [PATCH 24/25] Unvendor tcltk +Subject: [PATCH 21/24] Unvendor tcltk --- - PCbuild/tcltk.props | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) + PCbuild/tcltk.props | 12 +++++------- + 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props -index 1101796bb3..3906f356e1 100644 +index 7fd43e8279..5d7f07567d 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props -@@ -14,10 +14,10 @@ +@@ -14,13 +14,11 @@ 4 3 6 @@ -19,10 +19,14 @@ index 1101796bb3..3906f356e1 100644 - $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ - $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ - $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\ +- $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- + $(condaDir) + $(condaDir) + $(condaDir) + $(condaDir) ++ $(condaDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib diff --git a/recipe/patches/0025-unvendor-xz.patch b/recipe/patches/0024-unvendor-xz.patch similarity index 100% rename from recipe/patches/0025-unvendor-xz.patch rename to recipe/patches/0024-unvendor-xz.patch diff --git a/recipe/patches/0026-unvendor-zlib.patch b/recipe/patches/0025-unvendor-zlib.patch similarity index 83% rename from recipe/patches/0026-unvendor-zlib.patch rename to recipe/patches/0025-unvendor-zlib.patch index bcfd6a942..ee6d23a22 100644 --- a/recipe/patches/0026-unvendor-zlib.patch +++ b/recipe/patches/0025-unvendor-zlib.patch @@ -1,17 +1,17 @@ -From 34194a2ba0acd80fca11d878c8287c7e5da5e2e8 Mon Sep 17 00:00:00 2001 +From 6e3cba5e8119a2b5d3cc5d6459fb793374e55b42 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Sep 2021 15:21:55 -0700 -Subject: [PATCH] unvendor zlib +Subject: [PATCH 23/24] unvendor zlib --- - PCbuild/pythoncore.vcxproj | 31 ++------------ + PCbuild/pythoncore.vcxproj | 33 ++------------- PCbuild/pythoncore.vcxproj.filters | 66 ------------------------------ - 2 files changed, 4 insertions(+), 93 deletions(-) + 2 files changed, 4 insertions(+), 95 deletions(-) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index 8da161b446..8f9852511a 100644 ---- a/PCbuild/pythoncore.vcxproj 2022-03-21 14:10:57.381547240 +0300 -+++ b/PCbuild/pythoncore.vcxproj 2022-03-21 14:12:14.642806567 +0300 +index c4cb39c821..c1b60bd45b 100644 +--- a/PCbuild/pythoncore.vcxproj ++++ b/PCbuild/pythoncore.vcxproj @@ -82,7 +82,7 @@ true @@ -31,15 +31,15 @@ index 8da161b446..8f9852511a 100644 _Py_HAVE_ZLIB;%(PreprocessorDefinitions) -- version.lib;ws2_32.lib;pathcch.lib;%(AdditionalDependencies) -+ version.lib;shlwapi.lib;ws2_32.lib;pathcch.lib;zlib.lib;%(AdditionalDependencies) +- version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies) ++ version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;zlib.lib;%(AdditionalDependencies) + $(condaDir)\lib;%(AdditionalLibraryDirectories) -@@ -301,19 +302,6 @@ +@@ -330,19 +331,6 @@ + - - - @@ -57,14 +57,16 @@ index 8da161b446..8f9852511a 100644 -@@ -496,17 +484,6 @@ +@@ -542,19 +530,6 @@ - - - -- +- +- 4244 +- - - - @@ -76,10 +78,10 @@ index 8da161b446..8f9852511a 100644 diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters -index 55b57ef29d..2fc1a57161 100644 ---- a/PCbuild/pythoncore.vcxproj.filters 2022-03-21 14:10:57.381547240 +0300 -+++ b/PCbuild/pythoncore.vcxproj.filters 2022-03-21 14:11:06.061689122 +0300 -@@ -606,39 +606,6 @@ +index e3fe9271dd..334cb226e2 100644 +--- a/PCbuild/pythoncore.vcxproj.filters ++++ b/PCbuild/pythoncore.vcxproj.filters +@@ -651,39 +651,6 @@ Include\internal @@ -116,10 +118,10 @@ index 55b57ef29d..2fc1a57161 100644 - - Modules\zlib - - - - -@@ -1151,39 +1118,6 @@ + + Include\internal + +@@ -1208,39 +1175,6 @@ Modules @@ -159,3 +161,6 @@ index 55b57ef29d..2fc1a57161 100644 Python +-- +2.30.2 + From 1f1b1db67215992fdb4f42b36fdeb65a356815c4 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Mon, 5 Sep 2022 16:31:49 +0200 Subject: [PATCH 02/38] Fix build --- recipe/meta.yaml | 4 +- recipe/patches/0010-Unvendor-sqlite3.patch | 70 +++++++++++----------- recipe/run_test.py | 3 +- 3 files changed, 40 insertions(+), 37 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index d8a786df1..a09fd22a5 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -6,6 +6,8 @@ {% set ver3nd = ''.join(version.split('.')[0:3]) %} {% set build_number = 0 %} {% set channel_targets = ('abc', 'def') %} +# this is just for the initial build, to break dependencies with python -> pip -> libpython-static +{% set bootstrap = "true" %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} @@ -274,7 +276,7 @@ outputs: - test -d "$PREFIX/lib/python3.1/site-packages" # [unix] - python3.1 --version # [unix] -{% if target_platform != "linux-aarch64" %} +{% if bootstrap != "true" %} - name: libpython-static script: build_static.sh # [unix] script: build_static.bat # [win] diff --git a/recipe/patches/0010-Unvendor-sqlite3.patch b/recipe/patches/0010-Unvendor-sqlite3.patch index 7660e9ae8..3924bff61 100644 --- a/recipe/patches/0010-Unvendor-sqlite3.patch +++ b/recipe/patches/0010-Unvendor-sqlite3.patch @@ -1,20 +1,20 @@ -From dd315752acb1b108697f37ee0a8df50ffb200085 Mon Sep 17 00:00:00 2001 -From: Nehal J Wani -Date: Mon, 10 Dec 2018 12:22:37 -0600 -Subject: [PATCH 11/25] Unvendor sqlite3 - ---- - PCbuild/_sqlite3.vcxproj | 9 ++++----- - PCbuild/pcbuild.sln | 2 -- - PCbuild/python.props | 2 +- - PCbuild/sqlite3.vcxproj | 12 ++++++------ - 4 files changed, 11 insertions(+), 14 deletions(-) - -diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln -index 3507b97279..2b4ac3258c 100644 ---- a/PCbuild/pcbuild.sln 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/pcbuild.sln 2022-03-21 13:58:47.493702086 +0300 -@@ -55,8 +55,6 @@ +From dd315752acb1b108697f37ee0a8df50ffb200085 Mon Sep 17 00:00:00 2001 +From: Nehal J Wani +Date: Mon, 10 Dec 2018 12:22:37 -0600 +Subject: [PATCH 11/25] Unvendor sqlite3 + +--- + PCbuild/_sqlite3.vcxproj | 9 ++++----- + PCbuild/pcbuild.sln | 2 -- + PCbuild/python.props | 2 +- + PCbuild/sqlite3.vcxproj | 12 ++++++------ + 4 files changed, 11 insertions(+), 14 deletions(-) + +diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln +index 3507b97279..2b4ac3258c 100644 +--- a/PCbuild/pcbuild.sln 2022-03-21 13:56:25.291367619 +0300 ++++ b/PCbuild/pcbuild.sln 2022-03-21 13:58:47.493702086 +0300 +@@ -55,8 +55,6 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" EndProject @@ -23,20 +23,20 @@ index 3507b97279..2b4ac3258c 100644 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" -diff --git a/PCbuild/python.props b/PCbuild/python.props -index 4c5c18a81d..7b99766d21 100644 +diff --git a/PCbuild/python.props b/PCbuild/python.props +index 4c5c18a81d..7b99766d21 100644 -diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 5eb8559d29..fcdee1be60 100644 ---- a/PCbuild/_sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/_sqlite3.vcxproj 2022-03-21 13:58:47.493702086 +0300 -@@ -93,8 +93,11 @@ +diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj +index 5eb8559d29..fcdee1be60 100644 +--- a/PCbuild/_sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 ++++ b/PCbuild/_sqlite3.vcxproj 2022-03-21 13:58:47.493702086 +0300 +@@ -93,8 +93,11 @@ - $(sqlite3Dir);%(AdditionalIncludeDirectories) + $(condaDir)\include;%(AdditionalIncludeDirectories) - PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + + $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) @@ -44,7 +44,7 @@ index 5eb8559d29..fcdee1be60 100644 -@@ -126,10 +129,6 @@ +@@ -126,10 +129,6 @@ {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} false @@ -54,16 +54,16 @@ index 5eb8559d29..fcdee1be60 100644 - - - -- -\ No newline at end of file + + +- +\ No newline at end of file + -diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj -index e39e2d9c22..63d1c27fbc 100644 ---- a/PCbuild/sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/sqlite3.vcxproj 2022-03-21 13:58:47.497702152 +0300 -@@ -88,12 +88,12 @@ +diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj +index e39e2d9c22..63d1c27fbc 100644 +--- a/PCbuild/sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 ++++ b/PCbuild/sqlite3.vcxproj 2022-03-21 13:58:47.497702152 +0300 +@@ -88,12 +88,12 @@ <_ProjectFileVersion>10.0.30319.1 diff --git a/recipe/run_test.py b/recipe/run_test.py index 0c2c483ef..be46e2228 100644 --- a/recipe/run_test.py +++ b/recipe/run_test.py @@ -5,6 +5,7 @@ armv6l = bool(platform.machine() == 'armv6l') armv7l = bool(platform.machine() == 'armv7l') ppc64le = bool(platform.machine() == 'ppc64le') +arm64 = bool(platform.machine() == 'arm64') if sys.platform == 'darwin': osx105 = b'10.5.' in subprocess.check_output('sw_vers') else: @@ -86,7 +87,7 @@ import termios -if not (armv6l or armv7l or ppc64le or osx105): +if not (armv6l or armv7l or ppc64le or osx105 or arm64): import tkinter import turtle import _tkinter From d11f8cb52b658dc66cee39e7bc9dcbbbe9930ba0 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Tue, 6 Sep 2022 13:12:35 +0200 Subject: [PATCH 03/38] Fix system libraries not found error on linux-ppc64le --- recipe/meta.yaml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index a09fd22a5..39536cfdd 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -151,20 +151,20 @@ outputs: {% else %} - CONDA_FORGE=no {% endif %} - missing_dso_whitelist: # [win or linux64] + missing_dso_whitelist: # [win or linux] - '**/MSVCR71.dll' # [win] - '**/MSVCR80.dll' # [win] # I have no idea why this is not in C:\Windows\System32\downlevel - '**/api-ms-win-core-path-l1-1-0.dll' # [win] # -=- libs that come from the sysroot. - - '$RPATH/libc.so.6' # [linux64] - - '$RPATH/libcrypt.so.1' # [linux64] - - '$RPATH/libdl.so.2' # [linux64] - - '$RPATH/libm.so.6' # [linux64] - - '$RPATH/libnsl.so.1' # [linux64] - - '$RPATH/libpthread.so.0' # [linux64] - - '$RPATH/librt.so.1' # [linux64] - - '$RPATH/libutil.so.1' # [linux64] + - '$RPATH/libc.so.6' # [linux] + - '$RPATH/libcrypt.so.1' # [linux] + - '$RPATH/libdl.so.2' # [linux] + - '$RPATH/libm.so.6' # [linux] + - '$RPATH/libnsl.so.1' # [linux] + - '$RPATH/libpthread.so.0' # [linux] + - '$RPATH/librt.so.1' # [linux] + - '$RPATH/libutil.so.1' # [linux] requirements: build: From e8881e65c84386ff1eef2674ea79ebf29c3130f7 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 7 Sep 2022 15:16:07 +0200 Subject: [PATCH 04/38] Add TK to ignore_run_exports to suppress overdepending error --- recipe/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 39536cfdd..8ffbc6d5f 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -114,6 +114,8 @@ outputs: ignore_run_exports_from: # [unix] # C++ only installed so CXX is defined for distutils/sysconfig. - {{ compiler('cxx') }} # [unix] + ignore_run_exports: + - tk # Disabled until verified to work correctly detect_binary_files_with_prefix: true # detect_binary_files_with_prefix: False From 2ebc4a17ad2dcb476f0ee8fc3685127e429a8758 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 7 Sep 2022 18:32:35 +0200 Subject: [PATCH 05/38] disable ignore_run_exports again --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 8ffbc6d5f..2bf89f921 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -114,8 +114,8 @@ outputs: ignore_run_exports_from: # [unix] # C++ only installed so CXX is defined for distutils/sysconfig. - {{ compiler('cxx') }} # [unix] - ignore_run_exports: - - tk + # ignore_run_exports: + # - tk # Disabled until verified to work correctly detect_binary_files_with_prefix: true # detect_binary_files_with_prefix: False From d1d274550bd650aa715df9b59d69fd1ed269e6e0 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 7 Sep 2022 18:44:45 +0200 Subject: [PATCH 06/38] enable ignore_run_exports only for linux-ppc64le --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 2bf89f921..38b0da088 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -114,8 +114,8 @@ outputs: ignore_run_exports_from: # [unix] # C++ only installed so CXX is defined for distutils/sysconfig. - {{ compiler('cxx') }} # [unix] - # ignore_run_exports: - # - tk + ignore_run_exports: # [linux and ppc64le] + - tk # [linux and ppc64le] # Disabled until verified to work correctly detect_binary_files_with_prefix: true # detect_binary_files_with_prefix: False From bbfa76e3c766fdc45147c42c934e3bab981c2d54 Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Thu, 8 Sep 2022 10:40:29 +0200 Subject: [PATCH 07/38] adjust used SDK for osx --- recipe/conda_build_config.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 192b8843c..8d4a6f28f 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -6,5 +6,8 @@ libffi: # [win] - 3.4 # [win] numpy: - 1.16 -MACOSX_SDK_VERSION: # [osx and x86_64] - - 11.0 # [osx and x86_64] +MACOSX_SDK_VERSION: # [osx and x86_64] + - 10.14 # [osx and x86_64] +CONDA_BUILD_SYSROOT: # [osx and x86_64] + - /opt/MacOSX10.14.sdk # [osx and x86_64] + From 1f545f390b015f7fe5ab0c4ab7e35e84ef313725 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Thu, 8 Sep 2022 11:42:54 +0200 Subject: [PATCH 08/38] Add include paths for openssl and sqlite3 on win-64 --- recipe/build_base.bat | 2 ++ recipe/meta.yaml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/recipe/build_base.bat b/recipe/build_base.bat index 65959566c..c1a1280cb 100644 --- a/recipe/build_base.bat +++ b/recipe/build_base.bat @@ -25,6 +25,8 @@ for /F "tokens=1,2 delims=." %%i in ("%PKG_VERSION%") do ( if NOT "%PY_VER%"=="%%i.%%j" exit 1 ) +set "OPENSSL_DIR=%LIBRARY_PREFIX%" +set "SQLITE3_DIR=%LIBRARY_PREFIX%" for /f "usebackq delims=" %%i in (`conda list -p %PREFIX% sqlite --no-show-channel-urls --json ^| findstr "version"`) do set SQLITE3_VERSION_LINE=%%i for /f "tokens=2 delims==/ " %%i IN ('echo %SQLITE3_VERSION_LINE%') do (set SQLITE3_VERSION=%%~i) echo SQLITE3_VERSION detected as %SQLITE3_VERSION% diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 38b0da088..ed3f1ad81 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -148,6 +148,8 @@ outputs: # Putting these here means they get emitted to build_env_setup.{sh,bat} meaning we can launch IDEs # after sourcing or calling that script without examine the contents of conda_build.{sh,bat} for # important env. vars. + - OPENSSL_DIR=%PREFIX%\Library # [win] + - SQLITE3_DIR=%PREFIX%\Library # [win] {% if 'conda-forge' in channel_targets %} - CONDA_FORGE=yes {% else %} From d0c81dbe0575525a539e6ed42d159ebae2b4c029 Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Thu, 8 Sep 2022 11:57:35 +0200 Subject: [PATCH 09/38] adjust numpy version to be 1.21 --- recipe/conda_build_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index 8d4a6f28f..769054307 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -5,7 +5,7 @@ python_impl: libffi: # [win] - 3.4 # [win] numpy: - - 1.16 + - 1.21 MACOSX_SDK_VERSION: # [osx and x86_64] - 10.14 # [osx and x86_64] CONDA_BUILD_SYSROOT: # [osx and x86_64] From 45bced8f3f050b90c85c466f43872c1f725c4120 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 9 Sep 2022 15:21:21 +0200 Subject: [PATCH 10/38] Correct the patches --- ...2-Change-FD_SETSIZE-from-512-to-2048.patch | 8 +- ...Add-support-to-cygwinccompiler-for-V.patch | 4 +- ...-for-isysroot-in-addition-to-sysroot.patch | 15 +- ...dir_option-Use-1st-word-of-CC-as-com.patch | 15 +- ...0005-Win32-Do-not-download-externals.patch | 26 +- ...-so-that-it-looks-in-sys.prefix-lib-.patch | 8 +- ...compiling-on-debian-ubuntu-with-a-di.patch | 19 +- ...-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch | 6 +- recipe/patches/0009-Unvendor-openssl.patch | 165 +-- recipe/patches/0010-Unvendor-sqlite3.patch | 177 +-- ...ange-from-https-github.com-python-cp.patch | 17 +- ...-DLLSuffix-used-to-find-the-openssl-.patch | 39 +- ...nlib-from-env-if-env-variable-is-set.patch | 10 +- ...dd-CondaEcosystemModifyDllSearchPath.patch | 6 +- ...RC_DIR-to-make-pdbs-more-relocatable.patch | 6 +- recipe/patches/0016-Doing-d1trimfile.patch | 1256 ++++++++--------- .../patches/0017-cross-compile-darwin.patch | 10 +- .../patches/0018-Fix-TZPATH-on-windows.patch | 6 +- ...ch-work-with-SYSTEM_VERSION_COMPAT-1.patch | 10 +- ...ED-when-CC-is-overriden-on-Linux-too.patch | 10 +- recipe/patches/0021-Unvendor-bzip2.patch | 160 +-- recipe/patches/0022-Unvendor-libffi.patch | 58 +- recipe/patches/0023-Unvendor-tcltk.patch | 46 +- recipe/patches/0024-unvendor-xz.patch | 66 +- recipe/patches/0025-unvendor-zlib.patch | 290 ++-- 25 files changed, 1231 insertions(+), 1202 deletions(-) diff --git a/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch b/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch index 52399891f..6a6726689 100644 --- a/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch +++ b/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch @@ -1,4 +1,4 @@ -From 268c5547f45711354150ab828ad9f96671ba9501 Mon Sep 17 00:00:00 2001 +From eea5d6141bd04ecee4c69e1c824832eaaaa868e7 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:53:55 +0100 Subject: [PATCH 01/25] Win32: Change FD_SETSIZE from 512 to 2048 @@ -9,10 +9,10 @@ https://github.com/ContinuumIO/anaconda-issues/issues/1241 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c -index 3ecd0c32b3..000d1d8bb2 100644 +index 4eea928a26..e3c5d82722 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c -@@ -33,7 +33,7 @@ +@@ -38,7 +38,7 @@ FD_SETSIZE higher before this; e.g., via compiler /D switch. */ #if defined(MS_WINDOWS) && !defined(FD_SETSIZE) @@ -22,5 +22,5 @@ index 3ecd0c32b3..000d1d8bb2 100644 #if defined(HAVE_POLL_H) -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch b/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch index 486825412..8a4de0a93 100644 --- a/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch +++ b/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch @@ -1,4 +1,4 @@ -From 9fc9cc667ecd9806853817a661f67c6e5b829fd1 Mon Sep 17 00:00:00 2001 +From d8bf2f38eaca64e43db278f35a108a911705df5a Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:59:00 +0100 Subject: [PATCH 02/25] Win32: distutils: Add support to cygwinccompiler for @@ -24,5 +24,5 @@ index 66c12dd358..e6c790118b 100644 raise ValueError("Unknown MS Compiler version %s " % msc_ver) -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch b/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch index 961c8f87e..4d27c02e2 100644 --- a/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch +++ b/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch @@ -1,7 +1,7 @@ -From 2e82116ef229f3d1cd47198bc2736d3d2a9254b1 Mon Sep 17 00:00:00 2001 +From ee8295653f5fe6b1bb8556e8e8fa33b73c2f633b Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Tue, 21 Sep 2021 13:05:20 -0500 -Subject: [PATCH 04/25] bpo-45258: search for -isysroot in addition to +Subject: [PATCH 03/25] bpo-45258: search for -isysroot in addition to --sysroot -isysroot is for macOS, while --sysroot is for gcc/linux @@ -10,10 +10,10 @@ Subject: [PATCH 04/25] bpo-45258: search for -isysroot in addition to 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index 3d250e7249..8fb8ea5c47 100644 ---- a/setup.py 2022-03-21 13:44:31.258634134 +0300 -+++ b/setup.py 2022-03-21 13:44:42.022847390 +0300 -@@ -163,7 +163,7 @@ +index 15d0d4576a..a15a7a46e0 100644 +--- a/setup.py ++++ b/setup.py +@@ -166,7 +166,7 @@ def sysroot_paths(make_vars, subdirs): for var_name in make_vars: var = sysconfig.get_config_var(var_name) if var is not None: @@ -22,3 +22,6 @@ index 3d250e7249..8fb8ea5c47 100644 if m is not None: sysroot = m.group(1).strip('"') for subdir in subdirs: +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch b/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch index 989591c29..1f20278f5 100644 --- a/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch +++ b/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch @@ -1,7 +1,7 @@ -From 42072f2e4394dec81dcaf273987caa0ceabb7d26 Mon Sep 17 00:00:00 2001 +From 5e8e82052a141f24c89acc56c275ade16ce21a4c Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Thu, 5 Oct 2017 02:00:41 +0100 -Subject: [PATCH 05/25] runtime_library_dir_option: Use 1st word of CC as +Subject: [PATCH 04/25] runtime_library_dir_option: Use 1st word of CC as compiler Previous, 'CC' got passed to os.path.basename, so any paths in it after @@ -12,10 +12,10 @@ not get detected as gcc (or whatever it actually is). 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py -index f0792de74a..2445a5f348 100644 ---- a/Lib/distutils/unixccompiler.py 2022-03-21 13:45:29.831783012 +0300 -+++ b/Lib/distutils/unixccompiler.py 2022-03-21 13:45:42.608030015 +0300 -@@ -232,7 +232,8 @@ +index d00c48981e..54dd556fe5 100644 +--- a/Lib/distutils/unixccompiler.py ++++ b/Lib/distutils/unixccompiler.py +@@ -232,7 +232,8 @@ def runtime_library_dir_option(self, dir): # this time, there's no way to determine this information from # the configuration data stored in the Python installation, so # we use this hack. @@ -25,3 +25,6 @@ index f0792de74a..2445a5f348 100644 if sys.platform[:6] == "darwin": # MacOSX's linker doesn't understand the -R flag at all return "-L" + dir +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0005-Win32-Do-not-download-externals.patch b/recipe/patches/0005-Win32-Do-not-download-externals.patch index 958225ac2..96930be38 100644 --- a/recipe/patches/0005-Win32-Do-not-download-externals.patch +++ b/recipe/patches/0005-Win32-Do-not-download-externals.patch @@ -1,7 +1,7 @@ -From ec0859b2ac402c192daa18f52e9b3ae23c3e9fad Mon Sep 17 00:00:00 2001 +From 3aa0eec087878034251f770c7bab51823c8bdcfa Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Thu, 7 Sep 2017 11:35:47 +0100 -Subject: [PATCH 06/25] Win32: Do not download externals +Subject: [PATCH 05/25] Win32: Do not download externals --- PCbuild/build.bat | 2 +- @@ -12,14 +12,14 @@ index d333ceabd2..11e3d16a4f 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -97,7 +97,7 @@ if "%IncludeCTypes%"=="" set IncludeCTypes=true - if "%IncludeSSL%"=="" set IncludeSSL=true - if "%IncludeTkinter%"=="" set IncludeTkinter=true - --if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" -+rem if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" - - if "%do_pgo%" EQU "true" if "%platf%" EQU "x64" ( - if "%PROCESSOR_ARCHITEW6432%" NEQ "AMD64" if "%PROCESSOR_ARCHITECTURE%" NEQ "AMD64" ( --- -2.30.2 - + if "%IncludeSSL%"=="" set IncludeSSL=true + if "%IncludeTkinter%"=="" set IncludeTkinter=true + +-if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" ++rem if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" + + if "%do_pgo%" EQU "true" if "%platf%" EQU "x64" ( + if "%PROCESSOR_ARCHITEW6432%" NEQ "AMD64" if "%PROCESSOR_ARCHITECTURE%" NEQ "AMD64" ( +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch b/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch index d070d3907..cf135de47 100644 --- a/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch +++ b/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch @@ -1,7 +1,7 @@ -From df323eb5cfc835383293a30aecb24dc8566b7b6e Mon Sep 17 00:00:00 2001 +From 82f08c684edcdddad3842c81cb19e5504157e808 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 5 Dec 2017 22:47:59 +0000 -Subject: [PATCH 07/25] Fix find_library so that it looks in sys.prefix/lib +Subject: [PATCH 06/25] Fix find_library so that it looks in sys.prefix/lib first --- @@ -10,7 +10,7 @@ Subject: [PATCH 07/25] Fix find_library so that it looks in sys.prefix/lib 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/Lib/ctypes/macholib/dyld.py b/Lib/ctypes/macholib/dyld.py -index 1c3f8fd38b..82a4b4fd58 100644 +index 583c47daff..ab9b01c87e 100644 --- a/Lib/ctypes/macholib/dyld.py +++ b/Lib/ctypes/macholib/dyld.py @@ -93,6 +93,10 @@ def dyld_executable_path_search(name, executable_path=None): @@ -72,5 +72,5 @@ index 0c2510e161..72b46cc481 100644 ################################################################ # test code -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch b/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch index 3595b48f7..9d5227cb1 100644 --- a/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch +++ b/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch @@ -1,25 +1,26 @@ -From 328e92348765d2ccdebacb05b2b738a348fefc2c Mon Sep 17 00:00:00 2001 +From 35e5c744b2db5f1e87036d6e24758f5f99db535e Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Thu, 16 Sep 2021 15:46:09 -0500 -Subject: [PATCH 08/25] bpo-22699: Allow compiling on debian/ubuntu with a +Subject: [PATCH 07/25] bpo-22699: Allow compiling on debian/ubuntu with a different compiler This PR fixes one issue mentioned in the bpo https://bugs.python.org/issue22699#msg364685 with a slightly better patch than given --- - setup.py | 19 ++++++++++++++++++- - 1 file changed, 18 insertions(+), 1 deletion(-) + setup.py | 20 +++++++++++++++++++- + 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index 8fb8ea5c47..783d20bdcd 100644 +index a15a7a46e0..1bb48591c6 100644 --- a/setup.py +++ b/setup.py -@@ -663,9 +663,26 @@ def add_multiarch_paths(self): +@@ -687,9 +687,27 @@ def check_extension_import(self, ext): + def add_multiarch_paths(self): # Debian/Ubuntu multiarch support. # https://wiki.ubuntu.com/MultiarchSpec - cc = sysconfig.get_config_var('CC') - tmpfile = os.path.join(self.build_temp, 'multiarch') ++ cc = sysconfig.get_config_var('CC') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) + @@ -41,8 +42,8 @@ index 8fb8ea5c47..783d20bdcd 100644 + tmpfile = os.path.join(self.build_temp, 'multiarch') + ret = run_command( - '%s -print-multiarch > %s 2> /dev/null' % (cc, tmpfile)) + '%s -print-multiarch > %s 2> /dev/null' % (CC, tmpfile)) multiarch_path_component = '' -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch index d230db0b7..0232eae33 100644 --- a/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch +++ b/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch @@ -1,7 +1,7 @@ -From 8e033994de66ce822a007c44d833a27bb4818bfc Mon Sep 17 00:00:00 2001 +From ed5794ebec725f9c9c32bd8f4da80eb9b6eb9fea Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Sat, 27 Oct 2018 18:48:30 +0100 -Subject: [PATCH 08/24] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS +Subject: [PATCH 08/25] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS is not 0 Co-authored-by: Isuru Fernando @@ -1197,5 +1197,5 @@ index 0000000000..a73ea8a0e9 + return hPython3 != NULL; +} -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0009-Unvendor-openssl.patch b/recipe/patches/0009-Unvendor-openssl.patch index 2c99763b0..b9486fccc 100644 --- a/recipe/patches/0009-Unvendor-openssl.patch +++ b/recipe/patches/0009-Unvendor-openssl.patch @@ -1,7 +1,7 @@ -From 61c5bea8d1e95d68cde1e760973ede96ffde30ff Mon Sep 17 00:00:00 2001 +From 996da3cfe0061b9813d8bcde706c25172314fe6e Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Sat, 24 Nov 2018 20:38:02 -0600 -Subject: [PATCH 10/25] Unvendor openssl +Subject: [PATCH 09/25] Unvendor openssl --- PCbuild/_ssl.vcxproj | 3 --- @@ -12,89 +12,92 @@ Subject: [PATCH 10/25] Unvendor openssl PCbuild/pythonw.vcxproj | 3 +++ 6 files changed, 10 insertions(+), 10 deletions(-) +diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj +index 4907f49b66..b2c23d5e8c 100644 +--- a/PCbuild/_ssl.vcxproj ++++ b/PCbuild/_ssl.vcxproj +@@ -99,9 +99,6 @@ + + + +- +- _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) +- + + + +diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters +index 716a69a41a..8aef9e03fc 100644 +--- a/PCbuild/_ssl.vcxproj.filters ++++ b/PCbuild/_ssl.vcxproj.filters +@@ -12,9 +12,6 @@ + + Source Files + +- +- Source Files +- + + + diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index a7e16793c7..af1350cae7 100644 ---- a/PCbuild/openssl.props 2022-03-21 13:52:30.455411356 +0300 -+++ b/PCbuild/openssl.props 2022-03-21 13:52:37.999540925 +0300 +index 6081d3c8c6..1e43d7b9b7 100644 +--- a/PCbuild/openssl.props ++++ b/PCbuild/openssl.props @@ -5,7 +5,7 @@ - $(opensslIncludeDir);%(AdditionalIncludeDirectories) - - -- $(opensslOutDir);%(AdditionalLibraryDirectories) -+ $(opensslDir)\lib;%(AdditionalLibraryDirectories) - ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) - - + $(opensslIncludeDir);%(AdditionalIncludeDirectories) + + +- $(opensslOutDir);%(AdditionalLibraryDirectories) ++ $(opensslDir)\lib;%(AdditionalLibraryDirectories) + ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) + + diff --git a/PCbuild/python.props b/PCbuild/python.props -index 42c67de4af..4c5c18a81d 100644 ---- a/PCbuild/python.props 2022-03-16 14:27:11.000000000 +0300 -+++ b/PCbuild/python.props 2022-03-21 13:53:03.723981344 +0300 -@@ -63,9 +63,9 @@ - $(ExternalsDir)libffi-3.3.0\ - $(ExternalsDir)libffi-3.3.0\$(ArchName)\ - $(libffiOutDir)include -- $(ExternalsDir)openssl-1.1.1n\ -- $(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\ -- $(opensslOutDir)include -+ $(OPENSSL_DIR)\ -+ $(opensslDir)bin -+ $(opensslDir)include - $(ExternalsDir)\nasm-2.11.06\ - $(ExternalsDir)\zlib-1.2.11\ - +index 7f10e7c45e..40af96a349 100644 +--- a/PCbuild/python.props ++++ b/PCbuild/python.props +@@ -67,9 +67,9 @@ + $(ExternalsDir)libffi-3.4.2\ + $(ExternalsDir)libffi-3.4.2\$(ArchName)\ + $(libffiOutDir)include +- $(ExternalsDir)openssl-1.1.1n\ +- $(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\ +- $(opensslOutDir)include ++ $(OPENSSL_DIR)\ ++ $(opensslDir)bin ++ $(opensslDir)include + $(ExternalsDir)\nasm-2.11.06\ + $(ExternalsDir)\zlib-1.2.12\ + diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index b58945a4d1..4c47b979c3 100644 ---- a/PCbuild/python.vcxproj 2022-03-21 13:52:30.455411356 +0300 -+++ b/PCbuild/python.vcxproj 2022-03-21 13:52:37.999540925 +0300 -@@ -105,6 +105,9 @@ - - - -+ -+ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -+ - - - +index d07db3a681..2e5b6331fb 100644 +--- a/PCbuild/python.vcxproj ++++ b/PCbuild/python.vcxproj +@@ -106,6 +106,9 @@ + + + ++ ++ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) ++ + + + diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj index e7216dec3a..ab572d2020 100644 ---- a/PCbuild/pythonw.vcxproj 2022-03-21 13:52:30.455411356 +0300 -+++ b/PCbuild/pythonw.vcxproj 2022-03-21 13:52:37.999540925 +0300 +--- a/PCbuild/pythonw.vcxproj ++++ b/PCbuild/pythonw.vcxproj @@ -97,6 +97,9 @@ - - - -+ -+ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -+ - - - -diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj -index 4907f49b66..b2c23d5e8c 100644 ---- a/PCbuild/_ssl.vcxproj 2022-03-21 13:52:30.455411356 +0300 -+++ b/PCbuild/_ssl.vcxproj 2022-03-21 13:52:37.995540856 +0300 -@@ -99,9 +99,6 @@ - - - -- -- _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -- - - - -diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters -index 716a69a41a..8aef9e03fc 100644 ---- a/PCbuild/_ssl.vcxproj.filters 2022-03-21 13:52:30.455411356 +0300 -+++ b/PCbuild/_ssl.vcxproj.filters 2022-03-21 13:52:37.999540925 +0300 -@@ -12,9 +12,6 @@ - - Source Files - -- -- Source Files -- - - - + + + ++ ++ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) ++ + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0010-Unvendor-sqlite3.patch b/recipe/patches/0010-Unvendor-sqlite3.patch index 3924bff61..4ff0aaa8b 100644 --- a/recipe/patches/0010-Unvendor-sqlite3.patch +++ b/recipe/patches/0010-Unvendor-sqlite3.patch @@ -1,84 +1,93 @@ -From dd315752acb1b108697f37ee0a8df50ffb200085 Mon Sep 17 00:00:00 2001 -From: Nehal J Wani -Date: Mon, 10 Dec 2018 12:22:37 -0600 -Subject: [PATCH 11/25] Unvendor sqlite3 - ---- - PCbuild/_sqlite3.vcxproj | 9 ++++----- - PCbuild/pcbuild.sln | 2 -- - PCbuild/python.props | 2 +- - PCbuild/sqlite3.vcxproj | 12 ++++++------ - 4 files changed, 11 insertions(+), 14 deletions(-) - -diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln -index 3507b97279..2b4ac3258c 100644 ---- a/PCbuild/pcbuild.sln 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/pcbuild.sln 2022-03-21 13:58:47.493702086 +0300 -@@ -55,8 +55,6 @@ - EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" - EndProject --Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" --EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" - EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" -diff --git a/PCbuild/python.props b/PCbuild/python.props -index 4c5c18a81d..7b99766d21 100644 - -diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 5eb8559d29..fcdee1be60 100644 ---- a/PCbuild/_sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/_sqlite3.vcxproj 2022-03-21 13:58:47.493702086 +0300 -@@ -93,8 +93,11 @@ - - - -- $(sqlite3Dir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) - -+ -+ $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) -+ - - - -@@ -126,10 +129,6 @@ - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - -- -- {a1a295e5-463c-437f-81ca-1f32367685da} -- false -- - - - - -- -\ No newline at end of file -+ -diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj -index e39e2d9c22..63d1c27fbc 100644 ---- a/PCbuild/sqlite3.vcxproj 2022-03-21 13:56:25.291367619 +0300 -+++ b/PCbuild/sqlite3.vcxproj 2022-03-21 13:58:47.497702152 +0300 -@@ -88,12 +88,12 @@ - - - <_ProjectFileVersion>10.0.30319.1 -- <_SqliteVersion>$([System.Text.RegularExpressions.Regex]::Match(`$(sqlite3Dir)`, `((\d+)\.(\d+)\.(\d+)\.(\d+))\\?$`).Groups) -- $(_SqliteVersion.Split(`;`)[1]) -- $(_SqliteVersion.Split(`;`)[2]) -- $(_SqliteVersion.Split(`;`)[3]) -- $(_SqliteVersion.Split(`;`)[4]) -- $(_SqliteVersion.Split(`;`)[5]) -+ <_SqliteVersion>$(SQLITE3_VERSION) -+ $(_SqliteVersion) -+ $(_SqliteVersion.Split(`.`)[1]) -+ $(_SqliteVersion.Split(`.`)[2]) -+ $(_SqliteVersion.Split(`.`)[3]) -+ $(_SqliteVersion.Split(`.`)[4]) - - - +From c40d0dc406b41dc06057e6b42b34d12a2d9a6825 Mon Sep 17 00:00:00 2001 +From: Nehal J Wani +Date: Mon, 10 Dec 2018 12:22:37 -0600 +Subject: [PATCH 10/25] Unvendor sqlite3 + +--- + PCbuild/_sqlite3.vcxproj | 9 ++++----- + PCbuild/pcbuild.sln | 2 -- + PCbuild/python.props | 2 +- + PCbuild/sqlite3.vcxproj | 12 ++++++------ + 4 files changed, 11 insertions(+), 14 deletions(-) + +diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj +index 57c7413671..282a65cf75 100644 +--- a/PCbuild/_sqlite3.vcxproj ++++ b/PCbuild/_sqlite3.vcxproj +@@ -93,9 +93,12 @@ + + + +- $(sqlite3Dir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + ++ ++ $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) ++ + + + +@@ -127,10 +130,6 @@ + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + +- +- {a1a295e5-463c-437f-81ca-1f32367685da} +- false +- + + + +diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln +index 3629a8508a..94148c9ee3 100644 +--- a/PCbuild/pcbuild.sln ++++ b/PCbuild/pcbuild.sln +@@ -58,8 +58,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" + EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" + EndProject +-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" +-EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" + EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" +diff --git a/PCbuild/python.props b/PCbuild/python.props +index 40af96a349..1d94c59915 100644 +--- a/PCbuild/python.props ++++ b/PCbuild/python.props +@@ -61,7 +61,7 @@ + $(EXTERNALS_DIR) + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) + $(ExternalsDir)\ +- $(ExternalsDir)sqlite-3.38.4.0\ ++ $(SQLITE3_DIR)\ + $(ExternalsDir)bzip2-1.0.8\ + $(ExternalsDir)xz-5.2.5\ + $(ExternalsDir)libffi-3.4.2\ +diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj +index c502d51833..c1ff0c9a08 100644 +--- a/PCbuild/sqlite3.vcxproj ++++ b/PCbuild/sqlite3.vcxproj +@@ -88,12 +88,12 @@ + + + <_ProjectFileVersion>10.0.30319.1 +- <_SqliteVersion>$([System.Text.RegularExpressions.Regex]::Match(`$(sqlite3Dir)`, `((\d+)\.(\d+)\.(\d+)\.(\d+))\\?$`).Groups) +- $(_SqliteVersion.Split(`;`)[1]) +- $(_SqliteVersion.Split(`;`)[2]) +- $(_SqliteVersion.Split(`;`)[3]) +- $(_SqliteVersion.Split(`;`)[4]) +- $(_SqliteVersion.Split(`;`)[5]) ++ <_SqliteVersion>$(SQLITE3_VERSION) ++ $(_SqliteVersion) ++ $(_SqliteVersion.Split(`.`)[1]) ++ $(_SqliteVersion.Split(`.`)[2]) ++ $(_SqliteVersion.Split(`.`)[3]) ++ $(_SqliteVersion.Split(`.`)[4]) + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch b/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch index 430e1c9a8..1c5f9a9c6 100644 --- a/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch +++ b/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch @@ -1,7 +1,7 @@ -From 321741f8a203529b5fc972d76b69f221926c00d6 Mon Sep 17 00:00:00 2001 +From a846dcfc747c4af4816969b6f84da2ad1e2887bc Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 2 Jan 2019 21:38:48 +0000 -Subject: [PATCH 12/25] venv: Revert a change from +Subject: [PATCH 11/25] venv: Revert a change from https://github.com/python/cpython/commit/1c3de541e64f75046b20cdd27bada1557e550bcd https://bugs.python.org/issue35644 @@ -13,10 +13,10 @@ Also, on Anaconda Distribution, python.exe lives in sys.prefix. 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py -index 8009deb3ea..e4fd6db818 100644 ---- a/Lib/venv/__init__.py 2022-03-21 14:00:41.567550701 +0300 -+++ b/Lib/venv/__init__.py 2022-03-21 14:00:47.923653171 +0300 -@@ -234,7 +234,12 @@ +index 6032f3648e..4aaacd639e 100644 +--- a/Lib/venv/__init__.py ++++ b/Lib/venv/__init__.py +@@ -264,7 +264,12 @@ def symlink_or_copy(self, src, dst, relative_symlinks_ok=False): basename = 'venvwlauncher' src = os.path.join(os.path.dirname(src), basename + ext) else: @@ -30,7 +30,7 @@ index 8009deb3ea..e4fd6db818 100644 if not os.path.exists(src): if not bad_src: logger.warning('Unable to copy %r', src) -@@ -252,9 +257,9 @@ +@@ -282,9 +287,9 @@ def setup_python(self, context): binpath = context.bin_path path = context.env_exe copier = self.symlink_or_copy @@ -41,3 +41,6 @@ index 8009deb3ea..e4fd6db818 100644 if not os.path.islink(path): os.chmod(path, 0o755) for suffix in ('python', 'python3', f'python3.{sys.version_info[1]}'): +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch index 111054b0b..dbfdbda26 100644 --- a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch +++ b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch @@ -1,25 +1,32 @@ -From 9f866cc8bfb2ef2372ad26c9c557749360d34fcd Mon Sep 17 00:00:00 2001 +From e496da226b9d8e6bcb3046c22226ae170a749900 Mon Sep 17 00:00:00 2001 From: Marius van Niekerk Date: Thu, 31 Oct 2019 16:46:21 -0400 -Subject: [PATCH 13/25] Win: Add back the DLLSuffix used to find the openssl +Subject: [PATCH 12/25] Win: Add back the DLLSuffix used to find the openssl dlls and debug files --- - PCbuild/openssl.props | 1 + - 1 file changed, 1 insertion(+) + PCbuild/openssl.props | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index af1350cae7..eeb8677517 100644 +index 1e43d7b9b7..bfccb57330 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props -@@ -11,6 +11,7 @@ - - - <_DLLSuffix>-1_1 -+ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 - <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm - <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 - --- -2.30.2 - +@@ -5,12 +5,13 @@ + $(opensslIncludeDir);%(AdditionalIncludeDirectories) + + +- $(opensslDir)\lib;%(AdditionalLibraryDirectories) ++ $(opensslOutDir);%(AdditionalLibraryDirectories) + ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) + + + + <_DLLSuffix>-1_1 ++ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 + <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm + <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 + $(_DLLSuffix) +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch b/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch index 4c8dd9986..8cf6a016e 100644 --- a/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch +++ b/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch @@ -1,17 +1,17 @@ -From c012dac05527ca7ce9b732b0d7406a56cf465159 Mon Sep 17 00:00:00 2001 +From 1ab561cd33086ec92b20513ba8c2384f97cc899a Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sun, 3 Nov 2019 15:09:45 -0600 -Subject: [PATCH 14/25] Use ranlib from env if env variable is set +Subject: [PATCH 13/25] Use ranlib from env if env variable is set --- Lib/distutils/sysconfig.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 3414a761e7..181f66708e 100644 +index 03b8558419..00133ded58 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -263,6 +263,9 @@ def customize_compiler(compiler): +@@ -258,6 +258,9 @@ def customize_compiler(compiler): linker_exe=cc, archiver=archiver) @@ -22,5 +22,5 @@ index 3414a761e7..181f66708e 100644 -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch index 6b57b5f97..552432db6 100644 --- a/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch +++ b/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch @@ -1,7 +1,7 @@ -From d906e29bacb60724b1862ecef527ad623bddee3f Mon Sep 17 00:00:00 2001 +From b2dd05cf1aede0820b2547fd3ec2805a111cbd67 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 24 Dec 2019 18:37:17 +0100 -Subject: [PATCH 12/24] Add CondaEcosystemModifyDllSearchPath() +Subject: [PATCH 14/25] Add CondaEcosystemModifyDllSearchPath() The python interpreter is modifed so that it works as if the python interpreter was called with the following conda directories. @@ -154,5 +154,5 @@ index 960a38aebe..a05002b904 100644 } -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch b/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch index bed6e3f71..cc489282f 100644 --- a/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch +++ b/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch @@ -1,7 +1,7 @@ -From 94639d64baa14400c6452fc8ef36c1ef32fadb2d Mon Sep 17 00:00:00 2001 +From 9590bacb1356b9218b21eedf24a52bb11d2f6eda Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 20:46:36 +0100 -Subject: [PATCH 16/25] Add /d1trimfile:%SRC_DIR% to make pdbs more relocatable +Subject: [PATCH 15/25] Add /d1trimfile:%SRC_DIR% to make pdbs more relocatable --- Lib/distutils/_msvccompiler.py | 9 ++++++++- @@ -35,5 +35,5 @@ index af8099a407..0b245adb30 100644 args.append('/EHsc') args.append(input_opt) -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0016-Doing-d1trimfile.patch b/recipe/patches/0016-Doing-d1trimfile.patch index 782e2f374..3231a6c82 100644 --- a/recipe/patches/0016-Doing-d1trimfile.patch +++ b/recipe/patches/0016-Doing-d1trimfile.patch @@ -1,7 +1,7 @@ -From 38c7deb367f0ac42ac2091e21bc4f08f6ecc3513 Mon Sep 17 00:00:00 2001 +From e8ed0e6d83c538ea1c00f1dd1f8a52af6a7e88ef Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 21:47:47 +0100 -Subject: [PATCH 14/24] Doing d1trimfile +Subject: [PATCH 16/25] Doing d1trimfile --- PCbuild/_asyncio.vcxproj | 20 ++++++++++++++++++++ @@ -53,831 +53,831 @@ index ed1e1bc0a4..47d322be5f 100644 --- a/PCbuild/_asyncio.vcxproj +++ b/PCbuild/_asyncio.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj index 3fe95fbf83..0402f7a9aa 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -97,6 +97,10 @@ - $(bz2Dir);%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - 4244;4267;%(DisableSpecificWarnings) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + 4244;4267;%(DisableSpecificWarnings) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj index 6ac26f1916..07a58154f7 100644 --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -95,6 +95,10 @@ - - - USING_MALLOC_CLOSURE_DOT_C=1;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + + + USING_MALLOC_CLOSURE_DOT_C=1;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj index 8a01e743a4..1ad658d5f9 100644 --- a/PCbuild/_ctypes_test.vcxproj +++ b/PCbuild/_ctypes_test.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj index 0916f1a2d3..17a4cbfcd7 100644 --- a/PCbuild/_decimal.vcxproj +++ b/PCbuild/_decimal.vcxproj @@ -99,6 +99,10 @@ - CONFIG_64;ANSI;%(PreprocessorDefinitions) - CONFIG_64;MASM;%(PreprocessorDefinitions) - ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + CONFIG_64;ANSI;%(PreprocessorDefinitions) + CONFIG_64;MASM;%(PreprocessorDefinitions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj index 8da5244bac..20cc09d63f 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -94,7 +94,11 @@ - - - ..\Modules\expat;%(AdditionalIncludeDirectories) -- _CRT_SECURE_NO_WARNINGS;XML_STATIC;%(PreprocessorDefinitions) -+ _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + + + ..\Modules\expat;%(AdditionalIncludeDirectories) +- _CRT_SECURE_NO_WARNINGS;XML_STATIC;%(PreprocessorDefinitions) ++ _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_freeze_module.vcxproj b/PCbuild/_freeze_module.vcxproj index 0a74f5850a..b23ab1ba6a 100644 --- a/PCbuild/_freeze_module.vcxproj +++ b/PCbuild/_freeze_module.vcxproj @@ -91,6 +91,10 @@ - Py_NO_ENABLE_SHARED;Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) - Disabled - false -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + Py_NO_ENABLE_SHARED;Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) + Disabled + false ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj index 6dad8183c5..6d3d37fdf9 100644 --- a/PCbuild/_hashlib.vcxproj +++ b/PCbuild/_hashlib.vcxproj @@ -96,6 +96,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj index fe076a6fc5..0565132363 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -95,6 +95,10 @@ - - $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) + + $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj index 720eb2931b..247ab0e915 100644 --- a/PCbuild/_msi.vcxproj +++ b/PCbuild/_msi.vcxproj @@ -96,6 +96,18 @@ - - cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj index 77b6bfc8e1..3c2b651549 100644 --- a/PCbuild/_multiprocessing.vcxproj +++ b/PCbuild/_multiprocessing.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_overlapped.vcxproj b/PCbuild/_overlapped.vcxproj index 9e60d3b5db..95b57290f8 100644 --- a/PCbuild/_overlapped.vcxproj +++ b/PCbuild/_overlapped.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_queue.vcxproj b/PCbuild/_queue.vcxproj index 8065b23585..e46ab5a83b 100644 --- a/PCbuild/_queue.vcxproj +++ b/PCbuild/_queue.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj index 8fd75f90e7..b403828291 100644 --- a/PCbuild/_socket.vcxproj +++ b/PCbuild/_socket.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 4735477f00..c7c377e217 100644 +index 282a65cf75..5eb8dc542e 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -95,6 +95,10 @@ - - $(condaDir)\include;%(AdditionalIncludeDirectories) - PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) + + $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj index b2c23d5e8c..ebe4e88848 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -96,6 +96,18 @@ - - ws2_32.lib;crypt32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;crypt32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_testbuffer.vcxproj b/PCbuild/_testbuffer.vcxproj index 917d7ae50f..8c7e141eea 100644 --- a/PCbuild/_testbuffer.vcxproj +++ b/PCbuild/_testbuffer.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.40219.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.40219.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj index c1a1943725..99ee2f4a41 100644 --- a/PCbuild/_testcapi.vcxproj +++ b/PCbuild/_testcapi.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testconsole.vcxproj b/PCbuild/_testconsole.vcxproj index 5d7e14eff1..695dcb3b91 100644 --- a/PCbuild/_testconsole.vcxproj +++ b/PCbuild/_testconsole.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_testembed.vcxproj b/PCbuild/_testembed.vcxproj index a7ea8787e0..eab72171e3 100644 --- a/PCbuild/_testembed.vcxproj +++ b/PCbuild/_testembed.vcxproj @@ -89,6 +89,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_testimportmultiple.vcxproj b/PCbuild/_testimportmultiple.vcxproj index 6d80d5779f..951bf40e7c 100644 --- a/PCbuild/_testimportmultiple.vcxproj +++ b/PCbuild/_testimportmultiple.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testinternalcapi.vcxproj b/PCbuild/_testinternalcapi.vcxproj index 6c5b12cd40..d25c774913 100644 --- a/PCbuild/_testinternalcapi.vcxproj +++ b/PCbuild/_testinternalcapi.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testmultiphase.vcxproj b/PCbuild/_testmultiphase.vcxproj index 430eb528cc..7a268d227b 100644 --- a/PCbuild/_testmultiphase.vcxproj +++ b/PCbuild/_testmultiphase.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj index af813b77c1..9ff2acde0a 100644 --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -96,6 +96,10 @@ - $(tcltkDir)include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - Py_TCLTK_DIR="$(tcltkDir.TrimEnd('\').Replace('\', '\\'))";%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(tcltkLib);%(AdditionalDependencies) + $(tcltkDir)include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + Py_TCLTK_DIR="$(tcltkDir.TrimEnd('\').Replace('\', '\\'))";%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(tcltkLib);%(AdditionalDependencies) diff --git a/PCbuild/liblzma.vcxproj b/PCbuild/liblzma.vcxproj index 4dd42ab98a..7c2dbc7e70 100644 --- a/PCbuild/liblzma.vcxproj +++ b/PCbuild/liblzma.vcxproj @@ -94,6 +94,10 @@ - WIN32;HAVE_CONFIG_H;_LIB;%(PreprocessorDefinitions) - $(lzmaDir)windows/vs2019;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) - 4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + WIN32;HAVE_CONFIG_H;_LIB;%(PreprocessorDefinitions) + $(lzmaDir)windows/vs2019;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) + 4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj index 001f8afd89..3be4ac06dd 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -92,6 +92,10 @@ - - $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;XML_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + + $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;XML_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj index 35f2f7e505..02d7961c5d 100644 --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -93,6 +93,10 @@ - - _CONSOLE;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - shell32.lib;pathcch.lib;%(AdditionalDependencies) + + _CONSOLE;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/pyshellext.vcxproj b/PCbuild/pyshellext.vcxproj index ea432d6bc9..13bc692103 100644 --- a/PCbuild/pyshellext.vcxproj +++ b/PCbuild/pyshellext.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - version.lib;shlwapi.lib;%(AdditionalDependencies) + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + version.lib;shlwapi.lib;%(AdditionalDependencies) diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 5f2356cb36..0fd20d010e 100644 +index 2e5b6331fb..cdfbf133ac 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -91,6 +91,10 @@ - - - Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/python3dll.vcxproj b/PCbuild/python3dll.vcxproj index ec22e6fc76..80dff0a3d9 100644 --- a/PCbuild/python3dll.vcxproj +++ b/PCbuild/python3dll.vcxproj @@ -93,6 +93,10 @@ - - PYTHON_DLL_NAME="$(PyDllName)";%(PreprocessorDefinitions) - false -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - true + + PYTHON_DLL_NAME="$(PyDllName)";%(PreprocessorDefinitions) + false ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + true diff --git a/PCbuild/python_uwp.vcxproj b/PCbuild/python_uwp.vcxproj index fb27e9e712..f8dc841ef1 100644 --- a/PCbuild/python_uwp.vcxproj +++ b/PCbuild/python_uwp.vcxproj @@ -90,7 +90,7 @@ - - - %(PreprocessorDefinitions) -- /EHsc /std:c++17 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - - - windowsapp.lib;%(AdditionalDependencies) + + + %(PreprocessorDefinitions) +- /EHsc /std:c++17 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + + + windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj index a38040159e..c4cb39c821 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -99,7 +99,7 @@ - - - -- /Zm200 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - $(PySourcePath)Python;%(AdditionalIncludeDirectories) - $(zlibDir);%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) + + + +- /Zm200 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + $(PySourcePath)Python;%(AdditionalIncludeDirectories) + $(zlibDir);%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index 247ea10d5c..5bd4bbbc3a 100644 +index ab572d2020..1115e75445 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -91,6 +91,18 @@ - - 2000000 - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + 2000000 + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/pythonw_uwp.vcxproj b/PCbuild/pythonw_uwp.vcxproj index e21e46a1b7..ff7dc6635d 100644 --- a/PCbuild/pythonw_uwp.vcxproj +++ b/PCbuild/pythonw_uwp.vcxproj @@ -90,7 +90,7 @@ - - - PYTHONW;%(PreprocessorDefinitions) -- /EHsc /std:c++17 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - - - windowsapp.lib;%(AdditionalDependencies) + + + PYTHONW;%(PreprocessorDefinitions) +- /EHsc /std:c++17 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + + + windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj index e50b69aefe..3aa738bb7f 100644 --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -93,6 +93,10 @@ - - _WINDOWS;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - shell32.lib;pathcch.lib;%(AdditionalDependencies) + + _WINDOWS;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj index 750a713949..1da66eaddc 100644 --- a/PCbuild/select.vcxproj +++ b/PCbuild/select.vcxproj @@ -94,6 +94,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj index addef75335..1a13f363e2 100644 --- a/PCbuild/unicodedata.vcxproj +++ b/PCbuild/unicodedata.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/venvlauncher.vcxproj b/PCbuild/venvlauncher.vcxproj index 123e84ec4e..6272f9f69d 100644 --- a/PCbuild/venvlauncher.vcxproj +++ b/PCbuild/venvlauncher.vcxproj @@ -93,6 +93,10 @@ - - _CONSOLE;VENV_REDIRECT;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - PY_ICON;%(PreprocessorDefinitions) + + _CONSOLE;VENV_REDIRECT;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + PY_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/venvwlauncher.vcxproj b/PCbuild/venvwlauncher.vcxproj index b8504d5d08..60d6308713 100644 --- a/PCbuild/venvwlauncher.vcxproj +++ b/PCbuild/venvwlauncher.vcxproj @@ -93,6 +93,10 @@ - - _WINDOWS;VENV_REDIRECT;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - PYW_ICON;%(PreprocessorDefinitions) + + _WINDOWS;VENV_REDIRECT;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + PYW_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj index 32cedc9b44..c9abee1d69 100644 --- a/PCbuild/winsound.vcxproj +++ b/PCbuild/winsound.vcxproj @@ -96,6 +96,18 @@ - - winmm.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + winmm.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/xxlimited.vcxproj b/PCbuild/xxlimited.vcxproj index 1c776fb0da..36dec23c20 100644 --- a/PCbuild/xxlimited.vcxproj +++ b/PCbuild/xxlimited.vcxproj @@ -93,6 +93,12 @@ - <_ProjectFileVersion>10.0.30319.1 - - -+ -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ - - wsock32.lib;%(AdditionalDependencies) - + <_ProjectFileVersion>10.0.30319.1 + + ++ ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ + + wsock32.lib;%(AdditionalDependencies) + diff --git a/PCbuild/xxlimited_35.vcxproj b/PCbuild/xxlimited_35.vcxproj index dd830b3b6a..fef2c5b9f4 100644 --- a/PCbuild/xxlimited_35.vcxproj +++ b/PCbuild/xxlimited_35.vcxproj @@ -93,6 +93,12 @@ - <_ProjectFileVersion>10.0.30319.1 - - -+ -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ - - wsock32.lib;%(AdditionalDependencies) - --- -2.30.2 - + <_ProjectFileVersion>10.0.30319.1 + + ++ ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ + + wsock32.lib;%(AdditionalDependencies) + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0017-cross-compile-darwin.patch b/recipe/patches/0017-cross-compile-darwin.patch index 8d05bcfe2..f105d6eb3 100644 --- a/recipe/patches/0017-cross-compile-darwin.patch +++ b/recipe/patches/0017-cross-compile-darwin.patch @@ -1,7 +1,7 @@ -From 0264f5cfd14e95977ef764e59a45733d28e9bf8c Mon Sep 17 00:00:00 2001 +From d08c785695c93adb486a76c3cd5e3bfe9d76ce20 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Fri, 2 Oct 2020 00:03:12 +0200 -Subject: [PATCH 15/24] cross compile darwin +Subject: [PATCH 17/25] cross compile darwin By Isuru Fernando. --- @@ -76,7 +76,7 @@ index 77fb609b74..1d9fa9e4ef 100644 readelf|:) AC_MSG_ERROR([readelf for the host is required for cross builds]) diff --git a/setup.py b/setup.py -index 25fc167722..1a354d5bd4 100644 +index 1bb48591c6..79dae21c6d 100644 --- a/setup.py +++ b/setup.py @@ -81,7 +81,7 @@ def get_platform(): @@ -88,7 +88,7 @@ index 25fc167722..1a354d5bd4 100644 AIX = (HOST_PLATFORM.startswith('aix')) VXWORKS = ('vxworks' in HOST_PLATFORM) EMSCRIPTEN = HOST_PLATFORM == 'emscripten-wasm32' -@@ -1067,11 +1067,11 @@ def detect_readline_curses(self): +@@ -1064,11 +1064,11 @@ def detect_readline_curses(self): readline_lib = 'readline' do_readline = self.compiler.find_library_file(self.lib_dirs, readline_lib) @@ -103,5 +103,5 @@ index 25fc167722..1a354d5bd4 100644 else: ret = 1 -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0018-Fix-TZPATH-on-windows.patch b/recipe/patches/0018-Fix-TZPATH-on-windows.patch index c6b4b3b24..8981cf1ea 100644 --- a/recipe/patches/0018-Fix-TZPATH-on-windows.patch +++ b/recipe/patches/0018-Fix-TZPATH-on-windows.patch @@ -1,7 +1,7 @@ -From cedc51e9b9484cd0db7c07722d1c480107216c0d Mon Sep 17 00:00:00 2001 +From e8a6dc5a388a6cc18d15ce3485d698ad0f0b187a Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 7 Oct 2020 10:08:30 -0500 -Subject: [PATCH 16/24] Fix TZPATH on windows +Subject: [PATCH 18/25] Fix TZPATH on windows --- Lib/sysconfig.py | 1 + @@ -20,5 +20,5 @@ index ebe3711827..d51ba78d51 100644 _init_posix(_CONFIG_VARS) if _HAS_USER_BASE: -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch b/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch index a05958424..534150924 100644 --- a/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch +++ b/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch @@ -1,7 +1,7 @@ -From e83c9ac55a18f80df0d6be9d0aa758810a3bddfb Mon Sep 17 00:00:00 2001 +From 030d8bdc15c1e9df6056c1491636c612bc82d0af Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 25 Jan 2021 03:28:08 -0600 -Subject: [PATCH 20/25] Make dyld search work with SYSTEM_VERSION_COMPAT=1 +Subject: [PATCH 19/25] Make dyld search work with SYSTEM_VERSION_COMPAT=1 In macOS Big Sur, if the executable was compiled with `MACOSX_DEPLOYMENT_TARGET=10.15` or below, then SYSTEM_VERSION_COMPAT=1 is the default which means that Big Sur @@ -15,10 +15,10 @@ as that part is compiled with `MACOSX_DEPLOYMENT_TARGET=11.0`) 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c -index f8f8efa4ee..5ec32375b2 100644 +index 3fab9ad0c1..66d52a1314 100644 --- a/Modules/_ctypes/callproc.c +++ b/Modules/_ctypes/callproc.c -@@ -1445,7 +1445,7 @@ copy_com_pointer(PyObject *self, PyObject *args) +@@ -1440,7 +1440,7 @@ copy_com_pointer(PyObject *self, PyObject *args) #ifdef __APPLE__ #ifdef HAVE_DYLD_SHARED_CACHE_CONTAINS_PATH #define HAVE_DYLD_SHARED_CACHE_CONTAINS_PATH_RUNTIME \ @@ -28,5 +28,5 @@ index f8f8efa4ee..5ec32375b2 100644 // Support the deprecated case of compiling on an older macOS version static void *libsystem_b_handle; -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch b/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch index 625fae486..c840baae6 100644 --- a/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch +++ b/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch @@ -1,17 +1,17 @@ -From 7717e8fe396de1b9fb061b503683060940e67060 Mon Sep 17 00:00:00 2001 +From 9de9149b56b05b424df62e49948daf315ea6c774 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 02:18:50 -0700 -Subject: [PATCH 21/25] Fix LDSHARED when CC is overriden on Linux too +Subject: [PATCH 20/25] Fix LDSHARED when CC is overriden on Linux too --- Lib/distutils/sysconfig.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 181f66708e..07bb42df04 100644 +index 00133ded58..43eef57419 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -222,10 +222,9 @@ def customize_compiler(compiler): +@@ -217,10 +217,9 @@ def customize_compiler(compiler): if 'CC' in os.environ: newcc = os.environ['CC'] @@ -25,5 +25,5 @@ index 181f66708e..07bb42df04 100644 ldshared = newcc + ldshared[len(cc):] cc = newcc -- -2.30.2 +2.32.1 (Apple Git-133) diff --git a/recipe/patches/0021-Unvendor-bzip2.patch b/recipe/patches/0021-Unvendor-bzip2.patch index 7376ae0b8..14480679a 100644 --- a/recipe/patches/0021-Unvendor-bzip2.patch +++ b/recipe/patches/0021-Unvendor-bzip2.patch @@ -1,7 +1,7 @@ -From 3901842711d3c9a36692bc356f3a090a26a1a4d9 Mon Sep 17 00:00:00 2001 +From 685f9c88958d31866a2f2896b245b4c304f3b77b Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 02:56:27 -0700 -Subject: [PATCH 22/25] Unvendor bzip2 +Subject: [PATCH 21/25] Unvendor bzip2 --- PCbuild/_bz2.vcxproj | 15 +++++---------- @@ -14,90 +14,90 @@ index 0402f7a9aa..569c7c5de9 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -94,7 +94,7 @@ - - - -- $(bz2Dir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - 4244;4267;%(DisableSpecificWarnings) - /d1trimfile:%SRC_DIR% + + + +- $(bz2Dir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + 4244;4267;%(DisableSpecificWarnings) + /d1trimfile:%SRC_DIR% @@ -102,20 +102,15 @@ - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - -+ -+ $(condaDir)\lib\bzip2.lib;%(AdditionalDependencies) -+ - - - -- -- -- -- -- -- -- - - -- -- -+ - - - + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + ++ ++ $(condaDir)\lib\bzip2.lib;%(AdditionalDependencies) ++ + + + +- +- +- +- +- +- +- + + +- +- ++ + + + diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters index 7c0b516253..c1f960608c 100644 --- a/PCbuild/_bz2.vcxproj.filters +++ b/PCbuild/_bz2.vcxproj.filters @@ -21,33 +21,9 @@ - - Source Files - -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- - - -- -- Header Files\bzip2 -- -- -+ - Header Files\bzip2 - - + + Source Files + +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- + + +- +- Header Files\bzip2 +- +- ++ + Header Files\bzip2 + + diff --git a/PCbuild/python.props b/PCbuild/python.props -index 7b99766d21..83d537e110 100644 +index 1d94c59915..3cd708d6d9 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props -@@ -55,6 +55,7 @@ - - - $(EXTERNALS_DIR) -+ $(LIBRARY_PREFIX)\ - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ - $(SQLITE3_DIR)\ --- -2.30.2 - +@@ -59,6 +59,7 @@ + + + $(EXTERNALS_DIR) ++ $(LIBRARY_PREFIX)\ + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) + $(ExternalsDir)\ + $(SQLITE3_DIR)\ +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0022-Unvendor-libffi.patch b/recipe/patches/0022-Unvendor-libffi.patch index 49b1ba481..1123b917c 100644 --- a/recipe/patches/0022-Unvendor-libffi.patch +++ b/recipe/patches/0022-Unvendor-libffi.patch @@ -1,7 +1,7 @@ -From 42878cbda85eb54cc8c7ce5db987cd37b8cea4cc Mon Sep 17 00:00:00 2001 +From c2ac66330fb026f75491907dfd725d74c6673e06 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 03:07:40 -0700 -Subject: [PATCH 20/24] Unvendor libffi +Subject: [PATCH 22/25] Unvendor libffi --- PCbuild/libffi.props | 17 ++++------------- @@ -12,31 +12,31 @@ index 22c9550e2c..40ddb08d2b 100644 --- a/PCbuild/libffi.props +++ b/PCbuild/libffi.props @@ -2,20 +2,11 @@ - - - -- $(libffiIncludeDir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - - -- $(libffiOutDir);%(AdditionalLibraryDirectories) -- libffi-8.lib;%(AdditionalDependencies) -+ $(condaDir)\lib;%(AdditionalLibraryDirectories) -+ ffi.lib;%(AdditionalDependencies) - - -- -- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-8.dll" /> -- -- -- -- -- -- -- + + + +- $(libffiIncludeDir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + + +- $(libffiOutDir);%(AdditionalLibraryDirectories) +- libffi-8.lib;%(AdditionalDependencies) ++ $(condaDir)\lib;%(AdditionalLibraryDirectories) ++ ffi.lib;%(AdditionalDependencies) + + +- +- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-8.dll" /> +- +- +- +- +- +- +- - -\ No newline at end of file -+ --- -2.30.2 - +\ No newline at end of file ++ +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0023-Unvendor-tcltk.patch b/recipe/patches/0023-Unvendor-tcltk.patch index c6e2caa8d..32ae28fc4 100644 --- a/recipe/patches/0023-Unvendor-tcltk.patch +++ b/recipe/patches/0023-Unvendor-tcltk.patch @@ -1,7 +1,7 @@ -From 601a2843ef2afef6b9d747d5a7d2079d967c2f20 Mon Sep 17 00:00:00 2001 +From a18bab6405f24e209fa6f75cd8f13aad455064f8 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Fri, 20 Aug 2021 10:23:51 -0700 -Subject: [PATCH 21/24] Unvendor tcltk +Subject: [PATCH 23/25] Unvendor tcltk --- PCbuild/tcltk.props | 12 +++++------- @@ -12,24 +12,24 @@ index 7fd43e8279..5d7f07567d 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -14,13 +14,11 @@ - 4 - 3 - 6 -- $(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\ -- $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ -- $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ -- $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\ -- $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe -- $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe -- -+ $(condaDir) -+ $(condaDir) -+ $(condaDir) -+ $(condaDir) -+ $(condaDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe - - tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll - tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib --- -2.30.2 - + 4 + 3 + 6 +- $(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\ +- $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ +- $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ +- $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\ +- $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- ++ $(condaDir) ++ $(condaDir) ++ $(condaDir) ++ $(condaDir) ++ $(condaDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe + + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0024-unvendor-xz.patch b/recipe/patches/0024-unvendor-xz.patch index 4b92c7d35..dcd5d8ece 100644 --- a/recipe/patches/0024-unvendor-xz.patch +++ b/recipe/patches/0024-unvendor-xz.patch @@ -1,7 +1,7 @@ -From f5b34a9a777f2e20dfb21591e524f6593339cb09 Mon Sep 17 00:00:00 2001 +From 75a7e26604a7fd9848694527d2239b5a8fe2f90d Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sat, 25 Sep 2021 10:07:05 -0700 -Subject: [PATCH 25/25] unvendor xz +Subject: [PATCH 24/25] unvendor xz --- PCbuild/_lzma.vcxproj | 10 +++------- @@ -12,35 +12,35 @@ index 0565132363..e8b2704cee 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -93,15 +93,15 @@ - - - -- $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) -- WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) -+ WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - - -- $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) -+ $(condaDir)\lib\liblzma.lib;%(AdditionalDependencies) - - - + + + +- $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) +- WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) ++ WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + + +- $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) ++ $(condaDir)\lib\liblzma.lib;%(AdditionalDependencies) + + + @@ -115,10 +115,6 @@ - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - -- -- {12728250-16eC-4dc6-94d7-e21dd88947f8} -- false -- - - - --- -2.30.2 - + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + +- +- {12728250-16eC-4dc6-94d7-e21dd88947f8} +- false +- + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0025-unvendor-zlib.patch b/recipe/patches/0025-unvendor-zlib.patch index ee6d23a22..431103e57 100644 --- a/recipe/patches/0025-unvendor-zlib.patch +++ b/recipe/patches/0025-unvendor-zlib.patch @@ -1,7 +1,7 @@ -From 6e3cba5e8119a2b5d3cc5d6459fb793374e55b42 Mon Sep 17 00:00:00 2001 +From 7752b6b98f2d8a9f88e8c32b032877654dadf28a Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Sep 2021 15:21:55 -0700 -Subject: [PATCH 23/24] unvendor zlib +Subject: [PATCH 25/25] unvendor zlib --- PCbuild/pythoncore.vcxproj | 33 ++------------- @@ -9,158 +9,158 @@ Subject: [PATCH 23/24] unvendor zlib 2 files changed, 4 insertions(+), 95 deletions(-) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index c4cb39c821..c1b60bd45b 100644 +index c4cb39c821..2161449eab 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -82,7 +82,7 @@ - - true - true -- true -+ true - false - - + + true + true +- true ++ true + false + + @@ -101,12 +101,13 @@ - - /d1trimfile:%SRC_DIR% - $(PySourcePath)Python;%(AdditionalIncludeDirectories) -- $(zlibDir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) - _Py_HAVE_ZLIB;%(PreprocessorDefinitions) - - -- version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies) -+ version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;zlib.lib;%(AdditionalDependencies) -+ $(condaDir)\lib;%(AdditionalLibraryDirectories) - - - + + /d1trimfile:%SRC_DIR% + $(PySourcePath)Python;%(AdditionalIncludeDirectories) +- $(zlibDir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) + _Py_HAVE_ZLIB;%(PreprocessorDefinitions) + + +- version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies) ++ version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;zlib.lib;%(AdditionalDependencies) ++ $(condaDir)\lib;%(AdditionalLibraryDirectories) + + + @@ -330,19 +331,6 @@ - - - -- -- -- -- -- -- -- -- -- -- -- -- -- - - - + + + +- +- +- +- +- +- +- +- +- +- +- +- +- + + + @@ -542,19 +530,6 @@ - - - -- -- -- -- -- 4244 -- -- -- -- -- -- -- -- - - - + + + +- +- +- +- +- 4244 +- +- +- +- +- +- +- +- + + + diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters index e3fe9271dd..334cb226e2 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -651,39 +651,6 @@ - - Include\internal - -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- - - Include\internal - + + Include\internal + +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- + + Include\internal + @@ -1208,39 +1175,6 @@ - - Modules - -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- - - Python - --- -2.30.2 - + + Modules + +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- + + Python + +-- +2.32.1 (Apple Git-133) + From a0a56de63dce6d7f48aa46ff2c64ef69c62797cf Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 9 Sep 2022 15:25:26 +0200 Subject: [PATCH 11/38] Make mixed CRLF patches --- ...0005-Win32-Do-not-download-externals.patch | 22 +- recipe/patches/0009-Unvendor-openssl.patch | 118 +- recipe/patches/0010-Unvendor-sqlite3.patch | 120 +- ...-DLLSuffix-used-to-find-the-openssl-.patch | 34 +- recipe/patches/0016-Doing-d1trimfile.patch | 1246 ++++++++--------- recipe/patches/0021-Unvendor-bzip2.patch | 152 +- recipe/patches/0022-Unvendor-libffi.patch | 56 +- recipe/patches/0023-Unvendor-tcltk.patch | 42 +- recipe/patches/0024-unvendor-xz.patch | 62 +- recipe/patches/0025-unvendor-zlib.patch | 284 ++-- 10 files changed, 1068 insertions(+), 1068 deletions(-) diff --git a/recipe/patches/0005-Win32-Do-not-download-externals.patch b/recipe/patches/0005-Win32-Do-not-download-externals.patch index 96930be38..4a9283d17 100644 --- a/recipe/patches/0005-Win32-Do-not-download-externals.patch +++ b/recipe/patches/0005-Win32-Do-not-download-externals.patch @@ -12,14 +12,14 @@ index d333ceabd2..11e3d16a4f 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -97,7 +97,7 @@ if "%IncludeCTypes%"=="" set IncludeCTypes=true - if "%IncludeSSL%"=="" set IncludeSSL=true - if "%IncludeTkinter%"=="" set IncludeTkinter=true - --if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" -+rem if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" - - if "%do_pgo%" EQU "true" if "%platf%" EQU "x64" ( - if "%PROCESSOR_ARCHITEW6432%" NEQ "AMD64" if "%PROCESSOR_ARCHITECTURE%" NEQ "AMD64" ( --- -2.32.1 (Apple Git-133) - + if "%IncludeSSL%"=="" set IncludeSSL=true + if "%IncludeTkinter%"=="" set IncludeTkinter=true + +-if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" ++rem if "%IncludeExternals%"=="true" call "%dir%get_externals.bat" + + if "%do_pgo%" EQU "true" if "%platf%" EQU "x64" ( + if "%PROCESSOR_ARCHITEW6432%" NEQ "AMD64" if "%PROCESSOR_ARCHITECTURE%" NEQ "AMD64" ( +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0009-Unvendor-openssl.patch b/recipe/patches/0009-Unvendor-openssl.patch index b9486fccc..56d9a4557 100644 --- a/recipe/patches/0009-Unvendor-openssl.patch +++ b/recipe/patches/0009-Unvendor-openssl.patch @@ -17,87 +17,87 @@ index 4907f49b66..b2c23d5e8c 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -99,9 +99,6 @@ - - - -- -- _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -- - - - + + + +- +- _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) +- + + + diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters index 716a69a41a..8aef9e03fc 100644 --- a/PCbuild/_ssl.vcxproj.filters +++ b/PCbuild/_ssl.vcxproj.filters @@ -12,9 +12,6 @@ - - Source Files - -- -- Source Files -- - - - + + Source Files + +- +- Source Files +- + + + diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props index 6081d3c8c6..1e43d7b9b7 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props @@ -5,7 +5,7 @@ - $(opensslIncludeDir);%(AdditionalIncludeDirectories) - - -- $(opensslOutDir);%(AdditionalLibraryDirectories) -+ $(opensslDir)\lib;%(AdditionalLibraryDirectories) - ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) - - + $(opensslIncludeDir);%(AdditionalIncludeDirectories) + + +- $(opensslOutDir);%(AdditionalLibraryDirectories) ++ $(opensslDir)\lib;%(AdditionalLibraryDirectories) + ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) + + diff --git a/PCbuild/python.props b/PCbuild/python.props index 7f10e7c45e..40af96a349 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -67,9 +67,9 @@ - $(ExternalsDir)libffi-3.4.2\ - $(ExternalsDir)libffi-3.4.2\$(ArchName)\ - $(libffiOutDir)include -- $(ExternalsDir)openssl-1.1.1n\ -- $(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\ -- $(opensslOutDir)include -+ $(OPENSSL_DIR)\ -+ $(opensslDir)bin -+ $(opensslDir)include - $(ExternalsDir)\nasm-2.11.06\ - $(ExternalsDir)\zlib-1.2.12\ - + $(ExternalsDir)libffi-3.4.2\ + $(ExternalsDir)libffi-3.4.2\$(ArchName)\ + $(libffiOutDir)include +- $(ExternalsDir)openssl-1.1.1n\ +- $(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\ +- $(opensslOutDir)include ++ $(OPENSSL_DIR)\ ++ $(opensslDir)bin ++ $(opensslDir)include + $(ExternalsDir)\nasm-2.11.06\ + $(ExternalsDir)\zlib-1.2.12\ + diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj index d07db3a681..2e5b6331fb 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -106,6 +106,9 @@ - - - -+ -+ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -+ - - - + + + ++ ++ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) ++ + + + diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj index e7216dec3a..ab572d2020 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -97,6 +97,9 @@ - - - -+ -+ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) -+ - - - --- -2.32.1 (Apple Git-133) - + + + ++ ++ _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) ++ + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0010-Unvendor-sqlite3.patch b/recipe/patches/0010-Unvendor-sqlite3.patch index 4ff0aaa8b..52d1d5976 100644 --- a/recipe/patches/0010-Unvendor-sqlite3.patch +++ b/recipe/patches/0010-Unvendor-sqlite3.patch @@ -15,79 +15,79 @@ index 57c7413671..282a65cf75 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -93,9 +93,12 @@ - - - -- $(sqlite3Dir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) - -+ -+ $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) -+ - - - + + + +- $(sqlite3Dir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) + ++ ++ $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) ++ + + + @@ -127,10 +130,6 @@ - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - -- -- {a1a295e5-463c-437f-81ca-1f32367685da} -- false -- - - - + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + +- +- {a1a295e5-463c-437f-81ca-1f32367685da} +- false +- + + + diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln index 3629a8508a..94148c9ee3 100644 --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -58,8 +58,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" - EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" - EndProject --Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" --EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" - EndProject - Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" + EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" + EndProject +-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcxproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" +-EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" + EndProject + Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" diff --git a/PCbuild/python.props b/PCbuild/python.props index 40af96a349..1d94c59915 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -61,7 +61,7 @@ - $(EXTERNALS_DIR) - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ -- $(ExternalsDir)sqlite-3.38.4.0\ -+ $(SQLITE3_DIR)\ - $(ExternalsDir)bzip2-1.0.8\ - $(ExternalsDir)xz-5.2.5\ - $(ExternalsDir)libffi-3.4.2\ + $(EXTERNALS_DIR) + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) + $(ExternalsDir)\ +- $(ExternalsDir)sqlite-3.38.4.0\ ++ $(SQLITE3_DIR)\ + $(ExternalsDir)bzip2-1.0.8\ + $(ExternalsDir)xz-5.2.5\ + $(ExternalsDir)libffi-3.4.2\ diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj index c502d51833..c1ff0c9a08 100644 --- a/PCbuild/sqlite3.vcxproj +++ b/PCbuild/sqlite3.vcxproj @@ -88,12 +88,12 @@ - - - <_ProjectFileVersion>10.0.30319.1 -- <_SqliteVersion>$([System.Text.RegularExpressions.Regex]::Match(`$(sqlite3Dir)`, `((\d+)\.(\d+)\.(\d+)\.(\d+))\\?$`).Groups) -- $(_SqliteVersion.Split(`;`)[1]) -- $(_SqliteVersion.Split(`;`)[2]) -- $(_SqliteVersion.Split(`;`)[3]) -- $(_SqliteVersion.Split(`;`)[4]) -- $(_SqliteVersion.Split(`;`)[5]) -+ <_SqliteVersion>$(SQLITE3_VERSION) -+ $(_SqliteVersion) -+ $(_SqliteVersion.Split(`.`)[1]) -+ $(_SqliteVersion.Split(`.`)[2]) -+ $(_SqliteVersion.Split(`.`)[3]) -+ $(_SqliteVersion.Split(`.`)[4]) - - - --- -2.32.1 (Apple Git-133) - + + + <_ProjectFileVersion>10.0.30319.1 +- <_SqliteVersion>$([System.Text.RegularExpressions.Regex]::Match(`$(sqlite3Dir)`, `((\d+)\.(\d+)\.(\d+)\.(\d+))\\?$`).Groups) +- $(_SqliteVersion.Split(`;`)[1]) +- $(_SqliteVersion.Split(`;`)[2]) +- $(_SqliteVersion.Split(`;`)[3]) +- $(_SqliteVersion.Split(`;`)[4]) +- $(_SqliteVersion.Split(`;`)[5]) ++ <_SqliteVersion>$(SQLITE3_VERSION) ++ $(_SqliteVersion) ++ $(_SqliteVersion.Split(`.`)[1]) ++ $(_SqliteVersion.Split(`.`)[2]) ++ $(_SqliteVersion.Split(`.`)[3]) ++ $(_SqliteVersion.Split(`.`)[4]) + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch index dbfdbda26..2892b2b79 100644 --- a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch +++ b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch @@ -13,20 +13,20 @@ index 1e43d7b9b7..bfccb57330 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props @@ -5,12 +5,13 @@ - $(opensslIncludeDir);%(AdditionalIncludeDirectories) - - -- $(opensslDir)\lib;%(AdditionalLibraryDirectories) -+ $(opensslOutDir);%(AdditionalLibraryDirectories) - ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) - - - - <_DLLSuffix>-1_1 -+ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 - <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm - <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 - $(_DLLSuffix) --- -2.32.1 (Apple Git-133) - + $(opensslIncludeDir);%(AdditionalIncludeDirectories) + + +- $(opensslDir)\lib;%(AdditionalLibraryDirectories) ++ $(opensslOutDir);%(AdditionalLibraryDirectories) + ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) + + + + <_DLLSuffix>-1_1 ++ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 + <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm + <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 + $(_DLLSuffix) +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0016-Doing-d1trimfile.patch b/recipe/patches/0016-Doing-d1trimfile.patch index 3231a6c82..7d8d7e8d6 100644 --- a/recipe/patches/0016-Doing-d1trimfile.patch +++ b/recipe/patches/0016-Doing-d1trimfile.patch @@ -53,831 +53,831 @@ index ed1e1bc0a4..47d322be5f 100644 --- a/PCbuild/_asyncio.vcxproj +++ b/PCbuild/_asyncio.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj index 3fe95fbf83..0402f7a9aa 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -97,6 +97,10 @@ - $(bz2Dir);%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - 4244;4267;%(DisableSpecificWarnings) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + $(bz2Dir);%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + 4244;4267;%(DisableSpecificWarnings) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj index 6ac26f1916..07a58154f7 100644 --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -95,6 +95,10 @@ - - - USING_MALLOC_CLOSURE_DOT_C=1;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) + + + USING_MALLOC_CLOSURE_DOT_C=1;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj index 8a01e743a4..1ad658d5f9 100644 --- a/PCbuild/_ctypes_test.vcxproj +++ b/PCbuild/_ctypes_test.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj index 0916f1a2d3..17a4cbfcd7 100644 --- a/PCbuild/_decimal.vcxproj +++ b/PCbuild/_decimal.vcxproj @@ -99,6 +99,10 @@ - CONFIG_64;ANSI;%(PreprocessorDefinitions) - CONFIG_64;MASM;%(PreprocessorDefinitions) - ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + CONFIG_64;ANSI;%(PreprocessorDefinitions) + CONFIG_64;MASM;%(PreprocessorDefinitions) + ..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj index 8da5244bac..20cc09d63f 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -94,7 +94,11 @@ - - - ..\Modules\expat;%(AdditionalIncludeDirectories) -- _CRT_SECURE_NO_WARNINGS;XML_STATIC;%(PreprocessorDefinitions) -+ _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + + + ..\Modules\expat;%(AdditionalIncludeDirectories) +- _CRT_SECURE_NO_WARNINGS;XML_STATIC;%(PreprocessorDefinitions) ++ _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/_freeze_module.vcxproj b/PCbuild/_freeze_module.vcxproj index 0a74f5850a..b23ab1ba6a 100644 --- a/PCbuild/_freeze_module.vcxproj +++ b/PCbuild/_freeze_module.vcxproj @@ -91,6 +91,10 @@ - Py_NO_ENABLE_SHARED;Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) - Disabled - false -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + Py_NO_ENABLE_SHARED;Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) + Disabled + false ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj index 6dad8183c5..6d3d37fdf9 100644 --- a/PCbuild/_hashlib.vcxproj +++ b/PCbuild/_hashlib.vcxproj @@ -96,6 +96,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj index fe076a6fc5..0565132363 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -95,6 +95,10 @@ - - $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) + + $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj index 720eb2931b..247ab0e915 100644 --- a/PCbuild/_msi.vcxproj +++ b/PCbuild/_msi.vcxproj @@ -96,6 +96,18 @@ - - cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + cabinet.lib;msi.lib;rpcrt4.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj index 77b6bfc8e1..3c2b651549 100644 --- a/PCbuild/_multiprocessing.vcxproj +++ b/PCbuild/_multiprocessing.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_overlapped.vcxproj b/PCbuild/_overlapped.vcxproj index 9e60d3b5db..95b57290f8 100644 --- a/PCbuild/_overlapped.vcxproj +++ b/PCbuild/_overlapped.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_queue.vcxproj b/PCbuild/_queue.vcxproj index 8065b23585..e46ab5a83b 100644 --- a/PCbuild/_queue.vcxproj +++ b/PCbuild/_queue.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj index 8fd75f90e7..b403828291 100644 --- a/PCbuild/_socket.vcxproj +++ b/PCbuild/_socket.vcxproj @@ -95,6 +95,18 @@ - - ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj index 282a65cf75..5eb8dc542e 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -95,6 +95,10 @@ - - $(condaDir)\include;%(AdditionalIncludeDirectories) - PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) + + $(condaDir)\include;%(AdditionalIncludeDirectories) + PY_SQLITE_HAVE_SERIALIZE;PY_SQLITE_ENABLE_LOAD_EXTENSION;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj index b2c23d5e8c..ebe4e88848 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -96,6 +96,18 @@ - - ws2_32.lib;crypt32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;crypt32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/_testbuffer.vcxproj b/PCbuild/_testbuffer.vcxproj index 917d7ae50f..8c7e141eea 100644 --- a/PCbuild/_testbuffer.vcxproj +++ b/PCbuild/_testbuffer.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.40219.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.40219.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj index c1a1943725..99ee2f4a41 100644 --- a/PCbuild/_testcapi.vcxproj +++ b/PCbuild/_testcapi.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testconsole.vcxproj b/PCbuild/_testconsole.vcxproj index 5d7e14eff1..695dcb3b91 100644 --- a/PCbuild/_testconsole.vcxproj +++ b/PCbuild/_testconsole.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_testembed.vcxproj b/PCbuild/_testembed.vcxproj index a7ea8787e0..eab72171e3 100644 --- a/PCbuild/_testembed.vcxproj +++ b/PCbuild/_testembed.vcxproj @@ -89,6 +89,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_testimportmultiple.vcxproj b/PCbuild/_testimportmultiple.vcxproj index 6d80d5779f..951bf40e7c 100644 --- a/PCbuild/_testimportmultiple.vcxproj +++ b/PCbuild/_testimportmultiple.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testinternalcapi.vcxproj b/PCbuild/_testinternalcapi.vcxproj index 6c5b12cd40..d25c774913 100644 --- a/PCbuild/_testinternalcapi.vcxproj +++ b/PCbuild/_testinternalcapi.vcxproj @@ -92,6 +92,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/_testmultiphase.vcxproj b/PCbuild/_testmultiphase.vcxproj index 430eb528cc..7a268d227b 100644 --- a/PCbuild/_testmultiphase.vcxproj +++ b/PCbuild/_testmultiphase.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj index af813b77c1..9ff2acde0a 100644 --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -96,6 +96,10 @@ - $(tcltkDir)include;%(AdditionalIncludeDirectories) - WITH_APPINIT;%(PreprocessorDefinitions) - Py_TCLTK_DIR="$(tcltkDir.TrimEnd('\').Replace('\', '\\'))";%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - $(tcltkLib);%(AdditionalDependencies) + $(tcltkDir)include;%(AdditionalIncludeDirectories) + WITH_APPINIT;%(PreprocessorDefinitions) + Py_TCLTK_DIR="$(tcltkDir.TrimEnd('\').Replace('\', '\\'))";%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + $(tcltkLib);%(AdditionalDependencies) diff --git a/PCbuild/liblzma.vcxproj b/PCbuild/liblzma.vcxproj index 4dd42ab98a..7c2dbc7e70 100644 --- a/PCbuild/liblzma.vcxproj +++ b/PCbuild/liblzma.vcxproj @@ -94,6 +94,10 @@ - WIN32;HAVE_CONFIG_H;_LIB;%(PreprocessorDefinitions) - $(lzmaDir)windows/vs2019;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) - 4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + WIN32;HAVE_CONFIG_H;_LIB;%(PreprocessorDefinitions) + $(lzmaDir)windows/vs2019;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple;%(AdditionalIncludeDirectories) + 4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj index 001f8afd89..3be4ac06dd 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -92,6 +92,10 @@ - - $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;XML_STATIC;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - + + $(PySourcePath)Modules\expat;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_WARNINGS;PYEXPAT_EXPORTS;XML_STATIC;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj index 35f2f7e505..02d7961c5d 100644 --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -93,6 +93,10 @@ - - _CONSOLE;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - shell32.lib;pathcch.lib;%(AdditionalDependencies) + + _CONSOLE;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/pyshellext.vcxproj b/PCbuild/pyshellext.vcxproj index ea432d6bc9..13bc692103 100644 --- a/PCbuild/pyshellext.vcxproj +++ b/PCbuild/pyshellext.vcxproj @@ -92,6 +92,10 @@ - - - _CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - version.lib;shlwapi.lib;%(AdditionalDependencies) + + + _CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + version.lib;shlwapi.lib;%(AdditionalDependencies) diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj index 2e5b6331fb..cdfbf133ac 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -91,6 +91,10 @@ - - - Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - Console + + + Py_BUILD_CORE;_CONSOLE;%(PreprocessorDefinitions) ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + Console diff --git a/PCbuild/python3dll.vcxproj b/PCbuild/python3dll.vcxproj index ec22e6fc76..80dff0a3d9 100644 --- a/PCbuild/python3dll.vcxproj +++ b/PCbuild/python3dll.vcxproj @@ -93,6 +93,10 @@ - - PYTHON_DLL_NAME="$(PyDllName)";%(PreprocessorDefinitions) - false -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - true + + PYTHON_DLL_NAME="$(PyDllName)";%(PreprocessorDefinitions) + false ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + true diff --git a/PCbuild/python_uwp.vcxproj b/PCbuild/python_uwp.vcxproj index fb27e9e712..f8dc841ef1 100644 --- a/PCbuild/python_uwp.vcxproj +++ b/PCbuild/python_uwp.vcxproj @@ -90,7 +90,7 @@ - - - %(PreprocessorDefinitions) -- /EHsc /std:c++17 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - - - windowsapp.lib;%(AdditionalDependencies) + + + %(PreprocessorDefinitions) +- /EHsc /std:c++17 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + + + windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj index a38040159e..c4cb39c821 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -99,7 +99,7 @@ - - - -- /Zm200 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - $(PySourcePath)Python;%(AdditionalIncludeDirectories) - $(zlibDir);%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) + + + +- /Zm200 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + $(PySourcePath)Python;%(AdditionalIncludeDirectories) + $(zlibDir);%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj index ab572d2020..1115e75445 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -91,6 +91,18 @@ - - 2000000 - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + 2000000 + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/pythonw_uwp.vcxproj b/PCbuild/pythonw_uwp.vcxproj index e21e46a1b7..ff7dc6635d 100644 --- a/PCbuild/pythonw_uwp.vcxproj +++ b/PCbuild/pythonw_uwp.vcxproj @@ -90,7 +90,7 @@ - - - PYTHONW;%(PreprocessorDefinitions) -- /EHsc /std:c++17 %(AdditionalOptions) -+ /d1trimfile:%SRC_DIR% - - - windowsapp.lib;%(AdditionalDependencies) + + + PYTHONW;%(PreprocessorDefinitions) +- /EHsc /std:c++17 %(AdditionalOptions) ++ /d1trimfile:%SRC_DIR% + + + windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj index e50b69aefe..3aa738bb7f 100644 --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -93,6 +93,10 @@ - - _WINDOWS;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - shell32.lib;pathcch.lib;%(AdditionalDependencies) + + _WINDOWS;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj index 750a713949..1da66eaddc 100644 --- a/PCbuild/select.vcxproj +++ b/PCbuild/select.vcxproj @@ -94,6 +94,18 @@ - - ws2_32.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + ws2_32.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj index addef75335..1a13f363e2 100644 --- a/PCbuild/unicodedata.vcxproj +++ b/PCbuild/unicodedata.vcxproj @@ -91,6 +91,26 @@ - - <_ProjectFileVersion>10.0.30319.1 - -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ - - - + + <_ProjectFileVersion>10.0.30319.1 + ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ + + + diff --git a/PCbuild/venvlauncher.vcxproj b/PCbuild/venvlauncher.vcxproj index 123e84ec4e..6272f9f69d 100644 --- a/PCbuild/venvlauncher.vcxproj +++ b/PCbuild/venvlauncher.vcxproj @@ -93,6 +93,10 @@ - - _CONSOLE;VENV_REDIRECT;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - PY_ICON;%(PreprocessorDefinitions) + + _CONSOLE;VENV_REDIRECT;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + PY_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/venvwlauncher.vcxproj b/PCbuild/venvwlauncher.vcxproj index b8504d5d08..60d6308713 100644 --- a/PCbuild/venvwlauncher.vcxproj +++ b/PCbuild/venvwlauncher.vcxproj @@ -93,6 +93,10 @@ - - _WINDOWS;VENV_REDIRECT;%(PreprocessorDefinitions) - MultiThreaded -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% - - - PYW_ICON;%(PreprocessorDefinitions) + + _WINDOWS;VENV_REDIRECT;%(PreprocessorDefinitions) + MultiThreaded ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% + + + PYW_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj index 32cedc9b44..c9abee1d69 100644 --- a/PCbuild/winsound.vcxproj +++ b/PCbuild/winsound.vcxproj @@ -96,6 +96,18 @@ - - winmm.lib;%(AdditionalDependencies) - -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ -+ -+ /d1trimfile:%SRC_DIR% -+ - - - + + winmm.lib;%(AdditionalDependencies) + ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ ++ ++ /d1trimfile:%SRC_DIR% ++ + + + diff --git a/PCbuild/xxlimited.vcxproj b/PCbuild/xxlimited.vcxproj index 1c776fb0da..36dec23c20 100644 --- a/PCbuild/xxlimited.vcxproj +++ b/PCbuild/xxlimited.vcxproj @@ -93,6 +93,12 @@ - <_ProjectFileVersion>10.0.30319.1 - - -+ -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ - - wsock32.lib;%(AdditionalDependencies) - + <_ProjectFileVersion>10.0.30319.1 + + ++ ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ + + wsock32.lib;%(AdditionalDependencies) + diff --git a/PCbuild/xxlimited_35.vcxproj b/PCbuild/xxlimited_35.vcxproj index dd830b3b6a..fef2c5b9f4 100644 --- a/PCbuild/xxlimited_35.vcxproj +++ b/PCbuild/xxlimited_35.vcxproj @@ -93,6 +93,12 @@ - <_ProjectFileVersion>10.0.30319.1 - - -+ -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ /d1trimfile:%SRC_DIR% -+ - - wsock32.lib;%(AdditionalDependencies) - --- -2.32.1 (Apple Git-133) - + <_ProjectFileVersion>10.0.30319.1 + + ++ ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ /d1trimfile:%SRC_DIR% ++ + + wsock32.lib;%(AdditionalDependencies) + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0021-Unvendor-bzip2.patch b/recipe/patches/0021-Unvendor-bzip2.patch index 14480679a..eb78c2d36 100644 --- a/recipe/patches/0021-Unvendor-bzip2.patch +++ b/recipe/patches/0021-Unvendor-bzip2.patch @@ -14,90 +14,90 @@ index 0402f7a9aa..569c7c5de9 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -94,7 +94,7 @@ - - - -- $(bz2Dir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - 4244;4267;%(DisableSpecificWarnings) - /d1trimfile:%SRC_DIR% + + + +- $(bz2Dir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + 4244;4267;%(DisableSpecificWarnings) + /d1trimfile:%SRC_DIR% @@ -102,20 +102,15 @@ - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - -+ -+ $(condaDir)\lib\bzip2.lib;%(AdditionalDependencies) -+ - - - -- -- -- -- -- -- -- - - -- -- -+ - - - + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + ++ ++ $(condaDir)\lib\bzip2.lib;%(AdditionalDependencies) ++ + + + +- +- +- +- +- +- +- + + +- +- ++ + + + diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters index 7c0b516253..c1f960608c 100644 --- a/PCbuild/_bz2.vcxproj.filters +++ b/PCbuild/_bz2.vcxproj.filters @@ -21,33 +21,9 @@ - - Source Files - -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- -- -- Source Files\bzip2 -- - - -- -- Header Files\bzip2 -- -- -+ - Header Files\bzip2 - - + + Source Files + +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- +- +- Source Files\bzip2 +- + + +- +- Header Files\bzip2 +- +- ++ + Header Files\bzip2 + + diff --git a/PCbuild/python.props b/PCbuild/python.props index 1d94c59915..3cd708d6d9 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -59,6 +59,7 @@ - - - $(EXTERNALS_DIR) -+ $(LIBRARY_PREFIX)\ - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ - $(SQLITE3_DIR)\ --- -2.32.1 (Apple Git-133) - + + + $(EXTERNALS_DIR) ++ $(LIBRARY_PREFIX)\ + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) + $(ExternalsDir)\ + $(SQLITE3_DIR)\ +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0022-Unvendor-libffi.patch b/recipe/patches/0022-Unvendor-libffi.patch index 1123b917c..74ca66d3e 100644 --- a/recipe/patches/0022-Unvendor-libffi.patch +++ b/recipe/patches/0022-Unvendor-libffi.patch @@ -12,31 +12,31 @@ index 22c9550e2c..40ddb08d2b 100644 --- a/PCbuild/libffi.props +++ b/PCbuild/libffi.props @@ -2,20 +2,11 @@ - - - -- $(libffiIncludeDir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - - -- $(libffiOutDir);%(AdditionalLibraryDirectories) -- libffi-8.lib;%(AdditionalDependencies) -+ $(condaDir)\lib;%(AdditionalLibraryDirectories) -+ ffi.lib;%(AdditionalDependencies) - - -- -- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-8.dll" /> -- -- -- -- -- -- -- -- -\ No newline at end of file -+ --- -2.32.1 (Apple Git-133) - + + + +- $(libffiIncludeDir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + + +- $(libffiOutDir);%(AdditionalLibraryDirectories) +- libffi-8.lib;%(AdditionalDependencies) ++ $(condaDir)\lib;%(AdditionalLibraryDirectories) ++ ffi.lib;%(AdditionalDependencies) + + +- +- <_LIBFFIDLL Include="$(libffiOutDir)\libffi-8.dll" /> +- +- +- +- +- +- +- +- +\ No newline at end of file ++ +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0023-Unvendor-tcltk.patch b/recipe/patches/0023-Unvendor-tcltk.patch index 32ae28fc4..98b65951a 100644 --- a/recipe/patches/0023-Unvendor-tcltk.patch +++ b/recipe/patches/0023-Unvendor-tcltk.patch @@ -12,24 +12,24 @@ index 7fd43e8279..5d7f07567d 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -14,13 +14,11 @@ - 4 - 3 - 6 -- $(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\ -- $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ -- $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ -- $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\ -- $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe -- $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe -- -+ $(condaDir) -+ $(condaDir) -+ $(condaDir) -+ $(condaDir) -+ $(condaDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe - - tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll - tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib --- -2.32.1 (Apple Git-133) - + 4 + 3 + 6 +- $(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\ +- $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\ +- $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\ +- $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\ +- $(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- $(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe +- ++ $(condaDir) ++ $(condaDir) ++ $(condaDir) ++ $(condaDir) ++ $(condaDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe + + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll + tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0024-unvendor-xz.patch b/recipe/patches/0024-unvendor-xz.patch index dcd5d8ece..5d13de869 100644 --- a/recipe/patches/0024-unvendor-xz.patch +++ b/recipe/patches/0024-unvendor-xz.patch @@ -12,35 +12,35 @@ index 0565132363..e8b2704cee 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -93,15 +93,15 @@ - - - -- $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) -- WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) -+ WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - /d1trimfile:%SRC_DIR% - - -- $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) -+ $(condaDir)\lib\liblzma.lib;%(AdditionalDependencies) - - - + + + +- $(lzmaDir)src/liblzma/api;%(AdditionalIncludeDirectories) +- WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;LZMA_API_STATIC;%(PreprocessorDefinitions) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) ++ WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + /d1trimfile:%SRC_DIR% + + +- $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) ++ $(condaDir)\lib\liblzma.lib;%(AdditionalDependencies) + + + @@ -115,10 +115,6 @@ - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - -- -- {12728250-16eC-4dc6-94d7-e21dd88947f8} -- false -- - - - --- -2.32.1 (Apple Git-133) - + {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} + false + +- +- {12728250-16eC-4dc6-94d7-e21dd88947f8} +- false +- + + + +-- +2.32.1 (Apple Git-133) + diff --git a/recipe/patches/0025-unvendor-zlib.patch b/recipe/patches/0025-unvendor-zlib.patch index 431103e57..a1bd1a49b 100644 --- a/recipe/patches/0025-unvendor-zlib.patch +++ b/recipe/patches/0025-unvendor-zlib.patch @@ -13,154 +13,154 @@ index c4cb39c821..2161449eab 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -82,7 +82,7 @@ - - true - true -- true -+ true - false - - + + true + true +- true ++ true + false + + @@ -101,12 +101,13 @@ - - /d1trimfile:%SRC_DIR% - $(PySourcePath)Python;%(AdditionalIncludeDirectories) -- $(zlibDir);%(AdditionalIncludeDirectories) -+ $(condaDir)\include;%(AdditionalIncludeDirectories) - _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) - _Py_HAVE_ZLIB;%(PreprocessorDefinitions) - - -- version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies) -+ version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;zlib.lib;%(AdditionalDependencies) -+ $(condaDir)\lib;%(AdditionalLibraryDirectories) - - - + + /d1trimfile:%SRC_DIR% + $(PySourcePath)Python;%(AdditionalIncludeDirectories) +- $(zlibDir);%(AdditionalIncludeDirectories) ++ $(condaDir)\include;%(AdditionalIncludeDirectories) + _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) + _Py_HAVE_ZLIB;%(PreprocessorDefinitions) + + +- version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies) ++ version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;zlib.lib;%(AdditionalDependencies) ++ $(condaDir)\lib;%(AdditionalLibraryDirectories) + + + @@ -330,19 +331,6 @@ - - - -- -- -- -- -- -- -- -- -- -- -- -- -- - - - + + + +- +- +- +- +- +- +- +- +- +- +- +- +- + + + @@ -542,19 +530,6 @@ - - - -- -- -- -- -- 4244 -- -- -- -- -- -- -- -- - - - + + + +- +- +- +- +- 4244 +- +- +- +- +- +- +- +- + + + diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters index e3fe9271dd..334cb226e2 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -651,39 +651,6 @@ - - Include\internal - -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- - - Include\internal - + + Include\internal + +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- + + Include\internal + @@ -1208,39 +1175,6 @@ - - Modules - -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- -- -- Modules\zlib -- - - Python - --- -2.32.1 (Apple Git-133) - + + Modules + +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- +- +- Modules\zlib +- + + Python + +-- +2.32.1 (Apple Git-133) + From 43f275637f29d494217e270dd90f45eb02dd9484 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 9 Sep 2022 16:06:29 +0200 Subject: [PATCH 12/38] couple more patchfile fixes --- .../patches/0017-cross-compile-darwin.patch | 2 +- recipe/patches/0022-Unvendor-libffi.patch | 32 +++++++++---------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/recipe/patches/0017-cross-compile-darwin.patch b/recipe/patches/0017-cross-compile-darwin.patch index f105d6eb3..22e72dae3 100644 --- a/recipe/patches/0017-cross-compile-darwin.patch +++ b/recipe/patches/0017-cross-compile-darwin.patch @@ -88,7 +88,7 @@ index 1bb48591c6..79dae21c6d 100644 AIX = (HOST_PLATFORM.startswith('aix')) VXWORKS = ('vxworks' in HOST_PLATFORM) EMSCRIPTEN = HOST_PLATFORM == 'emscripten-wasm32' -@@ -1064,11 +1064,11 @@ def detect_readline_curses(self): +@@ -1046,11 +1046,11 @@ def detect_readline_curses(self): readline_lib = 'readline' do_readline = self.compiler.find_library_file(self.lib_dirs, readline_lib) diff --git a/recipe/patches/0022-Unvendor-libffi.patch b/recipe/patches/0022-Unvendor-libffi.patch index 74ca66d3e..b25c74515 100644 --- a/recipe/patches/0022-Unvendor-libffi.patch +++ b/recipe/patches/0022-Unvendor-libffi.patch @@ -1,17 +1,17 @@ -From c2ac66330fb026f75491907dfd725d74c6673e06 Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 16 Aug 2021 03:07:40 -0700 -Subject: [PATCH 22/25] Unvendor libffi - ---- - PCbuild/libffi.props | 17 ++++------------- - 1 file changed, 4 insertions(+), 13 deletions(-) - -diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props -index 22c9550e2c..40ddb08d2b 100644 ---- a/PCbuild/libffi.props -+++ b/PCbuild/libffi.props -@@ -2,20 +2,11 @@ +From c2ac66330fb026f75491907dfd725d74c6673e06 Mon Sep 17 00:00:00 2001 +From: Isuru Fernando +Date: Mon, 16 Aug 2021 03:07:40 -0700 +Subject: [PATCH 22/25] Unvendor libffi + +--- + PCbuild/libffi.props | 15 +++------------ + 1 file changed, 3 insertions(+), 12 deletions(-) + +diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props +index 22c9550e2c..40ddb08d2b 100644 +--- a/PCbuild/libffi.props ++++ b/PCbuild/libffi.props +@@ -2,20 +2,11 @@ @@ -34,9 +34,7 @@ index 22c9550e2c..40ddb08d2b 100644 - - - -- -\ No newline at end of file -+ + -- 2.32.1 (Apple Git-133) From dac2209e8742eda6c5dc4ee9ff836f58fff0f5e8 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 9 Sep 2022 17:07:13 +0200 Subject: [PATCH 13/38] correct libffi patch line endings --- recipe/patches/0022-Unvendor-libffi.patch | 32 ++++++++++++----------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/recipe/patches/0022-Unvendor-libffi.patch b/recipe/patches/0022-Unvendor-libffi.patch index b25c74515..1c3a52f46 100644 --- a/recipe/patches/0022-Unvendor-libffi.patch +++ b/recipe/patches/0022-Unvendor-libffi.patch @@ -1,17 +1,17 @@ -From c2ac66330fb026f75491907dfd725d74c6673e06 Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 16 Aug 2021 03:07:40 -0700 -Subject: [PATCH 22/25] Unvendor libffi - ---- - PCbuild/libffi.props | 15 +++------------ - 1 file changed, 3 insertions(+), 12 deletions(-) - -diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props -index 22c9550e2c..40ddb08d2b 100644 ---- a/PCbuild/libffi.props -+++ b/PCbuild/libffi.props -@@ -2,20 +2,11 @@ +From c2ac66330fb026f75491907dfd725d74c6673e06 Mon Sep 17 00:00:00 2001 +From: Isuru Fernando +Date: Mon, 16 Aug 2021 03:07:40 -0700 +Subject: [PATCH 22/25] Unvendor libffi + +--- + PCbuild/libffi.props | 15 +++------------ + 1 file changed, 3 insertions(+), 12 deletions(-) + +diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props +index 22c9550e2c..40ddb08d2b 100644 +--- a/PCbuild/libffi.props ++++ b/PCbuild/libffi.props +@@ -2,20 +2,11 @@ @@ -34,7 +34,9 @@ index 22c9550e2c..40ddb08d2b 100644 - - - - +- +\ No newline at end of file ++ -- 2.32.1 (Apple Git-133) From b8c162ab5cfc03bdfe2f9b1ec8c79fd80bac3de2 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Mon, 12 Sep 2022 11:51:14 +0200 Subject: [PATCH 14/38] Revert part of patch to hopefully find libcrypto better. Not sure where this patch came from anyway. --- ...ck-the-DLLSuffix-used-to-find-the-openssl-.patch | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch index 2892b2b79..b64e7e4a9 100644 --- a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch +++ b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch @@ -5,21 +5,14 @@ Subject: [PATCH 12/25] Win: Add back the DLLSuffix used to find the openssl dlls and debug files --- - PCbuild/openssl.props | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) + PCbuild/openssl.props | 1 + + 1 file changed, 1 insertion(+) diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props index 1e43d7b9b7..bfccb57330 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props -@@ -5,12 +5,13 @@ - $(opensslIncludeDir);%(AdditionalIncludeDirectories) - - -- $(opensslDir)\lib;%(AdditionalLibraryDirectories) -+ $(opensslOutDir);%(AdditionalLibraryDirectories) - ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) - +@@ -11,6 +11,7 @@ <_DLLSuffix>-1_1 From dc6cf90f20cb9941db4d9e255736c8fc6828d279 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Mon, 12 Sep 2022 15:31:16 +0200 Subject: [PATCH 15/38] Add abs.yaml to build out to private channel --- abs.yaml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 abs.yaml diff --git a/abs.yaml b/abs.yaml new file mode 100644 index 000000000..dc8395227 --- /dev/null +++ b/abs.yaml @@ -0,0 +1,2 @@ +channels: + - py311_bs From bdf3c50824848bc7e7499b2c8b78cdc37a81b408 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Tue, 13 Sep 2022 10:52:34 +0200 Subject: [PATCH 16/38] Build out libpython-static --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index ed3f1ad81..d4abac6a5 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -4,10 +4,10 @@ {% 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 %} {% set channel_targets = ('abc', 'def') %} # this is just for the initial build, to break dependencies with python -> pip -> libpython-static -{% set bootstrap = "true" %} +{% set bootstrap = "false" %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} From fc41698b0d602e06f03e0576821cdba45ed21bc4 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Tue, 13 Sep 2022 15:09:52 +0200 Subject: [PATCH 17/38] Add required test dependency; add windows test for existence of static library --- recipe/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index d4abac6a5..fbb33a858 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -312,6 +312,7 @@ outputs: - {{ compiler('c') }} # Tried to use enable_language(C) to avoid needing this. It does not work. - {{ compiler('cxx') }} + - ripgrep commands: - pushd tests # [unix] @@ -322,6 +323,8 @@ outputs: - bash build-and-test.sh # [unix] - popd # [unix] - popd # [unix] + # windows tests + - if not exist %LIBRARY_LIB%\\python%PKG_VERSION%.lib exit 1 # [win] {% endif %} about: From f6994e9eaea2698b4181e6f9e7fecddbcc631732 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Tue, 13 Sep 2022 15:38:05 +0200 Subject: [PATCH 18/38] Disable skip-existing --- abs.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/abs.yaml b/abs.yaml index dc8395227..dc14a2b77 100644 --- a/abs.yaml +++ b/abs.yaml @@ -1,2 +1,5 @@ channels: - py311_bs +# the conda-build parameters to use for disabling --skip-existing +build_parameters: + - "" From dd070a3eae1a81a66ff2ea4a0f59f015b5e33251 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Tue, 13 Sep 2022 16:52:09 +0200 Subject: [PATCH 19/38] Add some debug print for windows --- recipe/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index fbb33a858..084f8da60 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -324,6 +324,9 @@ outputs: - popd # [unix] - popd # [unix] # windows tests + - echo %PREFIX% # [win] + - echo %LIBRARY_LIB% # [win] + - echo %PKG_VERSION% # [win] - if not exist %LIBRARY_LIB%\\python%PKG_VERSION%.lib exit 1 # [win] {% endif %} From d94b14e54046979bb68dcd3399418cc97ae03bdf Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 14 Sep 2022 15:10:07 +0200 Subject: [PATCH 20/38] Move python[ver].lib test to the python output area --- recipe/meta.yaml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 084f8da60..3fddd66b7 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -261,6 +261,7 @@ outputs: - if not exist %PREFIX%\\Scripts\\idle.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\2to3.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\pydoc.exe exit 1 # [win] + - if not exist %LIBRARY_LIB%\\python%PKG_VERSION%.lib exit 1 # [win] - pushd tests - pushd distutils - python setup.py install -v -v @@ -323,11 +324,6 @@ outputs: - bash build-and-test.sh # [unix] - popd # [unix] - popd # [unix] - # windows tests - - echo %PREFIX% # [win] - - echo %LIBRARY_LIB% # [win] - - echo %PKG_VERSION% # [win] - - if not exist %LIBRARY_LIB%\\python%PKG_VERSION%.lib exit 1 # [win] {% endif %} about: From 773442a865b5e8990880a9c5730a9937fd7708ff Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 14 Sep 2022 15:35:20 +0200 Subject: [PATCH 21/38] Correct the test --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 3fddd66b7..f65f51904 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -261,7 +261,7 @@ outputs: - if not exist %PREFIX%\\Scripts\\idle.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\2to3.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\pydoc.exe exit 1 # [win] - - if not exist %LIBRARY_LIB%\\python%PKG_VERSION%.lib exit 1 # [win] + - if not exist %LIBRARY_LIB%\\python{{ ver2 }}.lib exit 1 # [win] - pushd tests - pushd distutils - python setup.py install -v -v From 216162d8146a605be85b238232383eda58d59aca Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 14 Sep 2022 15:50:04 +0200 Subject: [PATCH 22/38] Correct the test --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index f65f51904..464fffeea 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -261,7 +261,7 @@ outputs: - if not exist %PREFIX%\\Scripts\\idle.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\2to3.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\pydoc.exe exit 1 # [win] - - if not exist %LIBRARY_LIB%\\python{{ ver2 }}.lib exit 1 # [win] + - if not exist %LIBRARY_LIB%\\python{{ ver2nd }}.lib exit 1 # [win] - pushd tests - pushd distutils - python setup.py install -v -v From 0654eca7fe9f0953b81ab4178f6ad9a7f580dc95 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Wed, 14 Sep 2022 16:16:15 +0200 Subject: [PATCH 23/38] Correct the test --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 464fffeea..94581a674 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -261,7 +261,7 @@ outputs: - if not exist %PREFIX%\\Scripts\\idle.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\2to3.exe exit 1 # [win] - if not exist %PREFIX%\\Scripts\\pydoc.exe exit 1 # [win] - - if not exist %LIBRARY_LIB%\\python{{ ver2nd }}.lib exit 1 # [win] + - if not exist %PREFIX%\\libs\\python{{ ver2nd }}.lib exit 1 # [win] - pushd tests - pushd distutils - python setup.py install -v -v From 9d61f812e93789b6a64e4a443dc6e2f9a48c563a Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Thu, 15 Sep 2022 13:04:39 +0200 Subject: [PATCH 24/38] Unvendor openssl and sqlite as per isuruf's 3.11 rc1 PR on conda-forge --- recipe/build_base.bat | 2 - recipe/meta.yaml | 2 - recipe/patches/0009-Unvendor-openssl.patch | 149 ++++++++++++++++----- recipe/patches/0010-Unvendor-sqlite3.patch | 74 +++++----- recipe/patches/0021-Unvendor-bzip2.patch | 57 +++----- 5 files changed, 172 insertions(+), 112 deletions(-) diff --git a/recipe/build_base.bat b/recipe/build_base.bat index c1a1280cb..65959566c 100644 --- a/recipe/build_base.bat +++ b/recipe/build_base.bat @@ -25,8 +25,6 @@ for /F "tokens=1,2 delims=." %%i in ("%PKG_VERSION%") do ( if NOT "%PY_VER%"=="%%i.%%j" exit 1 ) -set "OPENSSL_DIR=%LIBRARY_PREFIX%" -set "SQLITE3_DIR=%LIBRARY_PREFIX%" for /f "usebackq delims=" %%i in (`conda list -p %PREFIX% sqlite --no-show-channel-urls --json ^| findstr "version"`) do set SQLITE3_VERSION_LINE=%%i for /f "tokens=2 delims==/ " %%i IN ('echo %SQLITE3_VERSION_LINE%') do (set SQLITE3_VERSION=%%~i) echo SQLITE3_VERSION detected as %SQLITE3_VERSION% diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 94581a674..3fbf0cdd3 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -148,8 +148,6 @@ outputs: # Putting these here means they get emitted to build_env_setup.{sh,bat} meaning we can launch IDEs # after sourcing or calling that script without examine the contents of conda_build.{sh,bat} for # important env. vars. - - OPENSSL_DIR=%PREFIX%\Library # [win] - - SQLITE3_DIR=%PREFIX%\Library # [win] {% if 'conda-forge' in channel_targets %} - CONDA_FORGE=yes {% else %} diff --git a/recipe/patches/0009-Unvendor-openssl.patch b/recipe/patches/0009-Unvendor-openssl.patch index 56d9a4557..7835869a7 100644 --- a/recipe/patches/0009-Unvendor-openssl.patch +++ b/recipe/patches/0009-Unvendor-openssl.patch @@ -1,16 +1,18 @@ -From 996da3cfe0061b9813d8bcde706c25172314fe6e Mon Sep 17 00:00:00 2001 +From 717e6526e2f32877a9fad11c76df9674b2928424 Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Sat, 24 Nov 2018 20:38:02 -0600 Subject: [PATCH 09/25] Unvendor openssl +Co-authored-by: Isuru Fernando --- - PCbuild/_ssl.vcxproj | 3 --- - PCbuild/_ssl.vcxproj.filters | 3 --- - PCbuild/openssl.props | 2 +- - PCbuild/python.props | 6 +++--- - PCbuild/python.vcxproj | 3 +++ - PCbuild/pythonw.vcxproj | 3 +++ - 6 files changed, 10 insertions(+), 10 deletions(-) + PCbuild/_ssl.vcxproj | 3 -- + PCbuild/_ssl.vcxproj.filters | 3 -- + PCbuild/openssl.props | 16 ++--------- + PCbuild/openssl.vcxproj | 56 ------------------------------------ + PCbuild/python.props | 1 + + PCbuild/python.vcxproj | 3 ++ + PCbuild/pythonw.vcxproj | 3 ++ + 7 files changed, 10 insertions(+), 75 deletions(-) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj index 4907f49b66..b2c23d5e8c 100644 @@ -41,63 +43,148 @@ index 716a69a41a..8aef9e03fc 100644 diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index 6081d3c8c6..1e43d7b9b7 100644 +index 6081d3c8c6..3538596cbf 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props -@@ -5,7 +5,7 @@ - $(opensslIncludeDir);%(AdditionalIncludeDirectories) +@@ -2,10 +2,10 @@ + + + +- $(opensslIncludeDir);%(AdditionalIncludeDirectories) ++ $(condaDir)include;%(AdditionalIncludeDirectories) - $(opensslOutDir);%(AdditionalLibraryDirectories) -+ $(opensslDir)\lib;%(AdditionalLibraryDirectories) ++ $(condaDir)lib;%(AdditionalLibraryDirectories) ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) +@@ -21,14 +21,4 @@ + <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).dll" /> + <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).pdb" /> + +- +- +- +- +- +- +- +\ No newline at end of file ++ +diff --git a/PCbuild/openssl.vcxproj b/PCbuild/openssl.vcxproj +index 0da6f67495..17eee400eb 100644 +--- a/PCbuild/openssl.vcxproj ++++ b/PCbuild/openssl.vcxproj +@@ -60,64 +60,8 @@ + + + +- +- $(opensslDir)\tmp$(Bitness)dll +- $(opensslOutDir) +- setlocal +-set VCINSTALLDIR=$(VCInstallDir) +-if not exist "$(IntDir.TrimEnd('\'))" mkdir "$(IntDir.TrimEnd('\'))" +-cd /D "$(IntDir.TrimEnd('\'))" +-$(Perl) "$(opensslDir)\configure" $(OpenSSLPlatform) no-asm +-nmake +- +- +- + + +- +- +- $(opensslDir)\ms\uplink.c +- ((h = GetModuleHandle(NULL)) == NULL) +- ((h = GetModuleHandleA("_ssl.pyd")) == NULL) if ((h = GetModuleHandleA("_ssl_d.pyd")) == NULL) if ((h = GetModuleHandle(NULL)) == NULL /*patched*/) +- +- +- +- <_Original>$([System.IO.File]::ReadAllText($(Uplink))) +- <_Patched>$(_Original.Replace($(BeforePatch), $(AfterPatch))) +- false +- true +- +- +- +- +- +- +- +- +- <_Built Include="$(opensslDir)\LICENSE" /> +- <_Built Include="$(IntDir)\libcrypto.lib;$(IntDir)\libcrypto-*.dll;$(IntDir)\libcrypto-*.pdb" /> +- <_Built Include="$(IntDir)\libssl.lib;$(IntDir)\libssl-*.dll;$(IntDir)\libssl-*.pdb" /> +- <_AppLink Include="$(opensslDir)\ms\applink.c" /> +- <_Include Include="$(opensslDir)\Include\openssl\*.h" /> +- <_Include Include="$(IntDir)\include\openssl\*.h" /> +- +- +- +- +- +- +- +- +- +- +- +- +- +- + + + diff --git a/PCbuild/python.props b/PCbuild/python.props -index 7f10e7c45e..40af96a349 100644 +index 7f10e7c45e..bd9e59f4c5 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props -@@ -67,9 +67,9 @@ - $(ExternalsDir)libffi-3.4.2\ - $(ExternalsDir)libffi-3.4.2\$(ArchName)\ - $(libffiOutDir)include -- $(ExternalsDir)openssl-1.1.1n\ -- $(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\ -- $(opensslOutDir)include -+ $(OPENSSL_DIR)\ -+ $(opensslDir)bin -+ $(opensslDir)include - $(ExternalsDir)\nasm-2.11.06\ - $(ExternalsDir)\zlib-1.2.12\ - +@@ -59,6 +59,7 @@ + + + $(EXTERNALS_DIR) ++ $(LIBRARY_PREFIX)\ + $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) + $(ExternalsDir)\ + $(ExternalsDir)sqlite-3.38.4.0\ diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index d07db3a681..2e5b6331fb 100644 +index d07db3a681..5f2356cb36 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -106,6 +106,9 @@ -+ ++ + _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) + diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index e7216dec3a..ab572d2020 100644 +index e7216dec3a..247ea10d5c 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -97,6 +97,9 @@ -+ ++ + _CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions) + -- -2.32.1 (Apple Git-133) +2.30.2 diff --git a/recipe/patches/0010-Unvendor-sqlite3.patch b/recipe/patches/0010-Unvendor-sqlite3.patch index 52d1d5976..b79cd7b59 100644 --- a/recipe/patches/0010-Unvendor-sqlite3.patch +++ b/recipe/patches/0010-Unvendor-sqlite3.patch @@ -1,20 +1,19 @@ -From c40d0dc406b41dc06057e6b42b34d12a2d9a6825 Mon Sep 17 00:00:00 2001 -From: Nehal J Wani -Date: Mon, 10 Dec 2018 12:22:37 -0600 -Subject: [PATCH 10/25] Unvendor sqlite3 - ---- - PCbuild/_sqlite3.vcxproj | 9 ++++----- - PCbuild/pcbuild.sln | 2 -- - PCbuild/python.props | 2 +- - PCbuild/sqlite3.vcxproj | 12 ++++++------ - 4 files changed, 11 insertions(+), 14 deletions(-) - -diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 57c7413671..282a65cf75 100644 ---- a/PCbuild/_sqlite3.vcxproj -+++ b/PCbuild/_sqlite3.vcxproj -@@ -93,9 +93,12 @@ +From 04c5f33620723af188539ac03c3cd464b9297edf Mon Sep 17 00:00:00 2001 +From: Nehal J Wani +Date: Tue, 5 Oct 2021 12:42:06 -0700 +Subject: [PATCH 10/25] Unvendor sqlite3 + +--- + PCbuild/_sqlite3.vcxproj | 11 +++++------ + PCbuild/pcbuild.sln | 2 -- + PCbuild/sqlite3.vcxproj | 12 ++++++------ + 3 files changed, 11 insertions(+), 14 deletions(-) + +diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj +index 57c7413671..4735477f00 100644 +--- a/PCbuild/_sqlite3.vcxproj ++++ b/PCbuild/_sqlite3.vcxproj +@@ -93,9 +93,12 @@ @@ -28,7 +27,7 @@ index 57c7413671..282a65cf75 100644 -@@ -127,10 +130,6 @@ +@@ -127,12 +130,8 @@ {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} false @@ -39,11 +38,15 @@ index 57c7413671..282a65cf75 100644 -diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln -index 3629a8508a..94148c9ee3 100644 ---- a/PCbuild/pcbuild.sln -+++ b/PCbuild/pcbuild.sln -@@ -58,8 +58,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" + +- +\ No newline at end of file ++ +diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln +index 3629a8508a..94148c9ee3 100644 +--- a/PCbuild/pcbuild.sln ++++ b/PCbuild/pcbuild.sln +@@ -58,8 +58,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_hashlib", "_hashlib.vcxproj", "{447F05A8-F581-4CAC-A466-5AC7936E207E}" EndProject @@ -52,24 +55,11 @@ index 3629a8508a..94148c9ee3 100644 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcxproj", "{9E48B300-37D1-11DD-8C41-005056C00008}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" -diff --git a/PCbuild/python.props b/PCbuild/python.props -index 40af96a349..1d94c59915 100644 ---- a/PCbuild/python.props -+++ b/PCbuild/python.props -@@ -61,7 +61,7 @@ - $(EXTERNALS_DIR) - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ -- $(ExternalsDir)sqlite-3.38.4.0\ -+ $(SQLITE3_DIR)\ - $(ExternalsDir)bzip2-1.0.8\ - $(ExternalsDir)xz-5.2.5\ - $(ExternalsDir)libffi-3.4.2\ -diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj -index c502d51833..c1ff0c9a08 100644 ---- a/PCbuild/sqlite3.vcxproj -+++ b/PCbuild/sqlite3.vcxproj -@@ -88,12 +88,12 @@ +diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj +index c502d51833..c1ff0c9a08 100644 +--- a/PCbuild/sqlite3.vcxproj ++++ b/PCbuild/sqlite3.vcxproj +@@ -88,12 +88,12 @@ <_ProjectFileVersion>10.0.30319.1 @@ -89,5 +79,5 @@ index c502d51833..c1ff0c9a08 100644 -- -2.32.1 (Apple Git-133) +2.30.2 diff --git a/recipe/patches/0021-Unvendor-bzip2.patch b/recipe/patches/0021-Unvendor-bzip2.patch index eb78c2d36..4e07f0a55 100644 --- a/recipe/patches/0021-Unvendor-bzip2.patch +++ b/recipe/patches/0021-Unvendor-bzip2.patch @@ -1,19 +1,18 @@ -From 685f9c88958d31866a2f2896b245b4c304f3b77b Mon Sep 17 00:00:00 2001 -From: Isuru Fernando -Date: Mon, 16 Aug 2021 02:56:27 -0700 -Subject: [PATCH 21/25] Unvendor bzip2 - ---- - PCbuild/_bz2.vcxproj | 15 +++++---------- - PCbuild/_bz2.vcxproj.filters | 26 +------------------------- - PCbuild/python.props | 1 + - 3 files changed, 7 insertions(+), 35 deletions(-) - -diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj -index 0402f7a9aa..569c7c5de9 100644 ---- a/PCbuild/_bz2.vcxproj -+++ b/PCbuild/_bz2.vcxproj -@@ -94,7 +94,7 @@ +From d28868966d973a9b09909567ae6522e182f87c9a Mon Sep 17 00:00:00 2001 +From: Isuru Fernando +Date: Mon, 16 Aug 2021 02:56:27 -0700 +Subject: [PATCH 21/25] Unvendor bzip2 + +--- + PCbuild/_bz2.vcxproj | 15 +++++---------- + PCbuild/_bz2.vcxproj.filters | 26 +------------------------- + 2 files changed, 6 insertions(+), 35 deletions(-) + +diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj +index 0402f7a9aa..569c7c5de9 100644 +--- a/PCbuild/_bz2.vcxproj ++++ b/PCbuild/_bz2.vcxproj +@@ -94,7 +94,7 @@ @@ -22,7 +21,7 @@ index 0402f7a9aa..569c7c5de9 100644 WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) 4244;4267;%(DisableSpecificWarnings) /d1trimfile:%SRC_DIR% -@@ -102,20 +102,15 @@ +@@ -102,20 +102,15 @@ /d1trimfile:%SRC_DIR% /d1trimfile:%SRC_DIR% @@ -47,11 +46,11 @@ index 0402f7a9aa..569c7c5de9 100644 -diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters -index 7c0b516253..c1f960608c 100644 ---- a/PCbuild/_bz2.vcxproj.filters -+++ b/PCbuild/_bz2.vcxproj.filters -@@ -21,33 +21,9 @@ +diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters +index 7c0b516253..c1f960608c 100644 +--- a/PCbuild/_bz2.vcxproj.filters ++++ b/PCbuild/_bz2.vcxproj.filters +@@ -21,33 +21,9 @@ Source Files @@ -86,18 +85,6 @@ index 7c0b516253..c1f960608c 100644 Header Files\bzip2 -diff --git a/PCbuild/python.props b/PCbuild/python.props -index 1d94c59915..3cd708d6d9 100644 ---- a/PCbuild/python.props -+++ b/PCbuild/python.props -@@ -59,6 +59,7 @@ - - - $(EXTERNALS_DIR) -+ $(LIBRARY_PREFIX)\ - $([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`)) - $(ExternalsDir)\ - $(SQLITE3_DIR)\ -- -2.32.1 (Apple Git-133) +2.30.2 From 450b9c8e39b663332ad010ed136a101d322bb79f Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 16 Sep 2022 12:04:27 +0200 Subject: [PATCH 25/38] Fixup: update dev_url --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 3fbf0cdd3..0c359db18 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -339,7 +339,7 @@ about: on both a small and large scale. doc_url: https://www.python.org/doc/versions/ doc_source_url: https://github.com/python/pythondotorg/blob/master/docs/source/index.rst - dev_url: https://docs.python.org/devguide/ + dev_url: https://github.com/python extra: feedstock-name: python From f8bed24a4b66f13acbe808ccea7d78915c35fc66 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 16 Sep 2022 22:05:24 +0200 Subject: [PATCH 26/38] update dev_url again --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 0c359db18..ee84840fb 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -339,7 +339,7 @@ about: on both a small and large scale. doc_url: https://www.python.org/doc/versions/ doc_source_url: https://github.com/python/pythondotorg/blob/master/docs/source/index.rst - dev_url: https://github.com/python + dev_url: https://github.com/python/cpython extra: feedstock-name: python From 8b7444cc5f4abd923f0dc60794862f808c1f06c7 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Fri, 16 Sep 2022 22:39:12 +0200 Subject: [PATCH 27/38] Add license_url --- recipe/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index ee84840fb..e11231952 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -329,6 +329,7 @@ about: license: PSF-2.0 license_family: PSF license_file: LICENSE + license_url: https://spdx.org/licenses/PSF-2.0.html summary: General purpose programming language description: | Python is a widely used high-level, general-purpose, interpreted, dynamic From c18ea30ef68bef74689fb9c2ceb66f347f6b4be4 Mon Sep 17 00:00:00 2001 From: Daniel Petry Date: Thu, 13 Oct 2022 10:53:46 +0200 Subject: [PATCH 28/38] stop uploading upon push --- abs.yaml | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 abs.yaml diff --git a/abs.yaml b/abs.yaml deleted file mode 100644 index dc14a2b77..000000000 --- a/abs.yaml +++ /dev/null @@ -1,5 +0,0 @@ -channels: - - py311_bs -# the conda-build parameters to use for disabling --skip-existing -build_parameters: - - "" From 12368ecfa10c743359bb828e12e886caf48ed9f2 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Thu, 24 Nov 2022 15:24:51 -0500 Subject: [PATCH 29/38] update to 3.11 release --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index e11231952..107a1fef1 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,5 @@ {% set version = "3.11.0" %} -{% set dev = "rc1" %} +{% set dev = "" %} {% set dev_ = "" %} {% set ver2 = '.'.join(version.split('.')[0:2]) %} {% set ver2nd = ''.join(version.split('.')[0:2]) %} @@ -50,7 +50,7 @@ source: {% else %} - url: https://www.python.org/ftp/python/{{ version }}/Python-{{ version }}{{ dev }}.tar.xz # md5 from: https://www.python.org/downloads/release/python-{{ ver3nd }}/ - sha256: 53a5377c37a8a2c6da075b14eb9d63374579f7f3c718fa20f0a1fbb0e94a922b + sha256: a57dc82d77358617ba65b9841cee1e3b441f386c3789ddc0676eca077f2951c3 {% endif %} patches: - patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch From 6abce6b158d23cc4c7dfe457a390339feaeccaec Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Thu, 24 Nov 2022 15:27:50 -0500 Subject: [PATCH 30/38] pin libffi to 3.4 --- recipe/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 107a1fef1..4097cf8f1 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -193,10 +193,11 @@ outputs: - readline # [not win] - tk - ncurses # [unix] - - libffi + - libffi 3.4 - ld_impl_{{ target_platform }} # [linux] - libuuid # [linux] run: + - libffi >=3.4,<3.5 - ld_impl_{{ target_platform }} # [linux] - tzdata {% if 'conda-forge' in channel_targets %} From 35b5f042ddfc25ededb19df45fce9227537efad9 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Fri, 25 Nov 2022 11:31:59 -0500 Subject: [PATCH 31/38] boostrap --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 4097cf8f1..750d1dc04 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -4,10 +4,10 @@ {% set ver2 = '.'.join(version.split('.')[0:2]) %} {% set ver2nd = ''.join(version.split('.')[0:2]) %} {% set ver3nd = ''.join(version.split('.')[0:3]) %} -{% set build_number = 1 %} +{% set build_number = 0 %} {% set channel_targets = ('abc', 'def') %} # this is just for the initial build, to break dependencies with python -> pip -> libpython-static -{% set bootstrap = "false" %} +{% set bootstrap = "true" %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} From edd2b72606a34918eb06528158757cf966b7b555 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Fri, 25 Nov 2022 11:40:01 -0500 Subject: [PATCH 32/38] add abs.yaml --- abs.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 abs.yaml diff --git a/abs.yaml b/abs.yaml new file mode 100644 index 000000000..7128d8c79 --- /dev/null +++ b/abs.yaml @@ -0,0 +1,8 @@ +channels: + - py311_bs/label/release +# the conda-build parameters to use for disabling --skip-existing +build_parameters: + - "--suppress-variables" + #- "--skip-existing" + - "--error-overlinking" + - "--error-overdepending" \ No newline at end of file From e48bf9514e19db4643b697dbcbd308351b41c272 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Fri, 25 Nov 2022 12:23:25 -0500 Subject: [PATCH 33/38] merge in changes from 3.10.4 to 3.10.8 --- LICENSE.txt | 32 ++++++++---- recipe/build_base.bat | 16 +++++- recipe/build_base.sh | 3 ++ recipe/meta.yaml | 19 ++++--- ...ange-from-https-github.com-python-cp.patch | 46 ----------------- ...-DLLSuffix-used-to-find-the-openssl-.patch | 25 --------- ...-not-pass-g-to-GCC-when-not-Py_DEBUG.patch | 51 +++++++++++++++++++ recipe/run_test.py | 4 +- 8 files changed, 108 insertions(+), 88 deletions(-) delete mode 100644 recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch delete mode 100644 recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch create mode 100644 recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch diff --git a/LICENSE.txt b/LICENSE.txt index 5f302793a..2ec51d75f 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,13 +1,27 @@ -BSD 3-clause license -Copyright (c) 2015-2020, conda-forge contributors +BSD-3-Clause license +Copyright (c) 2015-2022, conda-forge contributors All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. diff --git a/recipe/build_base.bat b/recipe/build_base.bat index 65959566c..59b894c27 100644 --- a/recipe/build_base.bat +++ b/recipe/build_base.bat @@ -57,7 +57,7 @@ if errorlevel 1 exit 1 cd .. :: Populate the root package directory -for %%x in (python%VERNODOTS%%_D%.dll python3%_D%.dll python%_D%.exe pythonw%_D%.exe venvlauncher%_D%.exe venvwlauncher%_D%.exe) do ( +for %%x in (python%VERNODOTS%%_D%.dll python3%_D%.dll python%_D%.exe pythonw%_D%.exe) do ( if exist %SRC_DIR%\PCbuild\%BUILD_PATH%\%%x ( copy /Y %SRC_DIR%\PCbuild\%BUILD_PATH%\%%x %PREFIX% ) else ( @@ -144,6 +144,20 @@ del %PREFIX%\libs\libpython*.a xcopy /s /y %SRC_DIR%\Lib %PREFIX%\Lib\ if errorlevel 1 exit 1 +:: Copy venv[w]launcher scripts to venv\srcipts\nt +if exist %SRC_DIR%\PCbuild\%BUILD_PATH%\venvlauncher%_D%.exe ( + copy /Y %SRC_DIR%\PCbuild\%BUILD_PATH%\venvlauncher%_D%.exe %PREFIX%\Lib\venv\scripts\nt\python.exe +) else ( + echo "WARNING :: %SRC_DIR%\PCbuild\%BUILD_PATH%\venvlauncher%_D%.exe does not exist" +) + +if exist %SRC_DIR%\PCbuild\%BUILD_PATH%\venvwlauncher%_D%.exe ( + copy /Y %SRC_DIR%\PCbuild\%BUILD_PATH%\venvwlauncher%_D%.exe %PREFIX%\Lib\venv\scripts\nt\pythonw.exe +) else ( + echo "WARNING :: %SRC_DIR%\PCbuild\%BUILD_PATH%\venvwlauncher%_D%.exe does not exist" +) + + :: Remove test data to save space. :: Though keep `support` as some things use that. mkdir %PREFIX%\Lib\test_keep diff --git a/recipe/build_base.sh b/recipe/build_base.sh index bec5e6171..c0a2333cb 100644 --- a/recipe/build_base.sh +++ b/recipe/build_base.sh @@ -44,8 +44,11 @@ fi if [[ ${target_platform} == linux-aarch64 ]]; then _OPTIMIZED=no fi + if [[ ${target_platform} == linux-ppc64le ]]; then _OPTIMIZED=no + # ppc64le cdt need to be rebuilt with files in powerpc64le-conda-linux-gnu instead of powerpc64le-conda_cos7-linux-gnu. In the mean time: + cp --force --archive --update --link $BUILD_PREFIX/powerpc64le-conda_cos7-linux-gnu/. $BUILD_PREFIX/powerpc64le-conda-linux-gnu fi declare -a _dbg_opts diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 750d1dc04..aa0052b65 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 = "0" %} {% set channel_targets = ('abc', 'def') %} # this is just for the initial build, to break dependencies with python -> pip -> libpython-static {% set bootstrap = "true" %} @@ -67,8 +67,6 @@ source: - patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch - patches/0009-Unvendor-openssl.patch - patches/0010-Unvendor-sqlite3.patch - - patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch - - patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch # https://github.com/pypa/distutils/pull/53 - patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch - patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch @@ -86,6 +84,7 @@ source: - patches/0023-Unvendor-tcltk.patch - patches/0024-unvendor-xz.patch - patches/0025-unvendor-zlib.patch + - patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch build: number: {{ build_number }} @@ -181,6 +180,8 @@ outputs: # configure script looks for llvm-ar for lto - llvm-tools # [osx] - ld_impl_{{ target_platform }} # [linux] + # called in build_base.sh + - ripgrep # [linux] {% if 'conda-forge' in channel_targets %} - binutils_impl_{{ target_platform }} # [linux] {% endif %} @@ -194,11 +195,11 @@ outputs: - tk - ncurses # [unix] - libffi 3.4 - - ld_impl_{{ target_platform }} # [linux] + - ld_impl_{{ target_platform }} >=2.36.1 # [linux] - libuuid # [linux] run: - libffi >=3.4,<3.5 - - ld_impl_{{ target_platform }} # [linux] + - ld_impl_{{ target_platform }} >=2.36.1 # [linux] - tzdata {% if 'conda-forge' in channel_targets %} - ncurses # [unix] @@ -244,6 +245,8 @@ outputs: # tzdata/zoneinfo test that will need the tzdata package to pass - python -c "from zoneinfo import ZoneInfo; from datetime import datetime; dt = datetime(2020, 10, 31, 12, tzinfo=ZoneInfo('America/Los_Angeles')); print(dt.tzname())" - python -m venv test-venv + - test-venv\\Scripts\\python.exe -c "import ctypes" # [win] + - test-venv/bin/python -c "import ctypes" # [unix] - python -c "import sysconfig; print(sysconfig.get_config_var('CC'))" # [not win] - _CONDA_PYTHON_SYSCONFIGDATA_NAME=_sysconfigdata_x86_64_conda_cos6_linux_gnu python -c "import sysconfig; print(sysconfig.get_config_var('CC'))" # [linux64] # check for unreplaced @ symbols in sysconfig files @@ -279,6 +282,8 @@ outputs: # Test workaround for https://github.com/conda/conda/issues/10969 - test -d "$PREFIX/lib/python3.1/site-packages" # [unix] - python3.1 --version # [unix] + # Test for segfault on osx-64 with libffi=3.4, see https://bugs.python.org/issue44556 + - python -c "from ctypes import CFUNCTYPE; CFUNCTYPE(None)(id)" {% if bootstrap != "true" %} - name: libpython-static @@ -329,6 +334,7 @@ about: home: https://www.python.org/ license: PSF-2.0 license_family: PSF + license_url: https://docs.python.org/3/license.html license_file: LICENSE license_url: https://spdx.org/licenses/PSF-2.0.html summary: General purpose programming language @@ -341,7 +347,7 @@ about: on both a small and large scale. doc_url: https://www.python.org/doc/versions/ doc_source_url: https://github.com/python/pythondotorg/blob/master/docs/source/index.rst - dev_url: https://github.com/python/cpython + dev_url: https://devguide.python.org/ extra: feedstock-name: python @@ -355,3 +361,4 @@ extra: - ocefpaf - scopatz - katietz + - xhochy diff --git a/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch b/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch deleted file mode 100644 index 1c5f9a9c6..000000000 --- a/recipe/patches/0011-venv-Revert-a-change-from-https-github.com-python-cp.patch +++ /dev/null @@ -1,46 +0,0 @@ -From a846dcfc747c4af4816969b6f84da2ad1e2887bc Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Wed, 2 Jan 2019 21:38:48 +0000 -Subject: [PATCH 11/25] venv: Revert a change from - https://github.com/python/cpython/commit/1c3de541e64f75046b20cdd27bada1557e550bcd - https://bugs.python.org/issue35644 - -If copier(context.executable, path) is not also called on Windows (as it was in Python 3.7.1) then the venv\Scripts dir will not contain a Python exe - -Also, on Anaconda Distribution, python.exe lives in sys.prefix. ---- - Lib/venv/__init__.py | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py -index 6032f3648e..4aaacd639e 100644 ---- a/Lib/venv/__init__.py -+++ b/Lib/venv/__init__.py -@@ -264,7 +264,12 @@ def symlink_or_copy(self, src, dst, relative_symlinks_ok=False): - basename = 'venvwlauncher' - src = os.path.join(os.path.dirname(src), basename + ext) - else: -- src = srcfn -+ if basename.startswith('python'): -+ scripts = sys.prefix -+ else: -+ scripts = os.path.join(os.path.dirname(__file__), "scripts", "nt") -+ src = os.path.join(scripts, basename + ext) -+ - if not os.path.exists(src): - if not bad_src: - logger.warning('Unable to copy %r', src) -@@ -282,9 +287,9 @@ def setup_python(self, context): - binpath = context.bin_path - path = context.env_exe - copier = self.symlink_or_copy -+ copier(context.executable, path) - dirname = context.python_dir - if os.name != 'nt': -- copier(context.executable, path) - if not os.path.islink(path): - os.chmod(path, 0o755) - for suffix in ('python', 'python3', f'python3.{sys.version_info[1]}'): --- -2.32.1 (Apple Git-133) - diff --git a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch b/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch deleted file mode 100644 index b64e7e4a9..000000000 --- a/recipe/patches/0012-Win-Add-back-the-DLLSuffix-used-to-find-the-openssl-.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e496da226b9d8e6bcb3046c22226ae170a749900 Mon Sep 17 00:00:00 2001 -From: Marius van Niekerk -Date: Thu, 31 Oct 2019 16:46:21 -0400 -Subject: [PATCH 12/25] Win: Add back the DLLSuffix used to find the openssl - dlls and debug files - ---- - PCbuild/openssl.props | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index 1e43d7b9b7..bfccb57330 100644 ---- a/PCbuild/openssl.props -+++ b/PCbuild/openssl.props -@@ -11,6 +11,7 @@ - - - <_DLLSuffix>-1_1 -+ <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 - <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm - <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 - $(_DLLSuffix) --- -2.32.1 (Apple Git-133) - diff --git a/recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch b/recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch new file mode 100644 index 000000000..1e91268f6 --- /dev/null +++ b/recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch @@ -0,0 +1,51 @@ +From 0f8e9aef6c845d89471aa936bb2ac75996256b9b Mon Sep 17 00:00:00 2001 +From: Ray Donnelly +Date: Wed, 16 Aug 2017 11:45:28 +0100 +Subject: [PATCH 24/24] Do not pass -g to GCC when not Py_DEBUG + +This bloats our exe and our modules a lot. +--- + configure | 6 +++--- + configure.ac | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/configure b/configure +index b89d1a380a..439493615a 100755 +--- a/configure ++++ b/configure +@@ -4782,9 +4782,9 @@ if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS + elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then +- CFLAGS="-g -O2" ++ CFLAGS="-O2" + else +- CFLAGS="-g" ++ CFLAGS= + fi + else + if test "$GCC" = yes; then +@@ -7934,7 +7934,7 @@ then + if test "$Py_DEBUG" = 'true' ; then + OPT="-g $PYDEBUG_CFLAGS -Wall" + else +- OPT="-g $WRAP -O3 -Wall" ++ OPT="$WRAP -O3 -Wall" + fi + ;; + *) +diff --git a/configure.ac b/configure.ac +index 1d9fa9e4ef..0babe7c917 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2043,7 +2043,7 @@ then + if test "$Py_DEBUG" = 'true' ; then + OPT="-g $PYDEBUG_CFLAGS -Wall" + else +- OPT="-g $WRAP -O3 -Wall" ++ OPT="$WRAP -O3 -Wall" + fi + ;; + *) +-- +2.30.2 diff --git a/recipe/run_test.py b/recipe/run_test.py index be46e2228..b3140a17f 100644 --- a/recipe/run_test.py +++ b/recipe/run_test.py @@ -1,3 +1,4 @@ +import os import platform import sys import subprocess @@ -98,4 +99,5 @@ import ssl print('OPENSSL_VERSION:', ssl.OPENSSL_VERSION) -assert '1.1.1' in ssl.OPENSSL_VERSION +CONDA_OPENSSL_VERSION = os.getenv("openssl") +assert CONDA_OPENSSL_VERSION in ssl.OPENSSL_VERSION From 4a709571a3e5dcf724da957a5cbc34e7a0ab84e8 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Fri, 25 Nov 2022 14:05:44 -0500 Subject: [PATCH 34/38] update abs yaml --- abs.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abs.yaml b/abs.yaml index 7128d8c79..b130eb037 100644 --- a/abs.yaml +++ b/abs.yaml @@ -1,5 +1,5 @@ channels: - - py311_bs/label/release + py311_bs: release # the conda-build parameters to use for disabling --skip-existing build_parameters: - "--suppress-variables" From ef3650bd97357c6d8b4635505ac9efd3cb1d40b6 Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Fri, 25 Nov 2022 14:55:50 -0500 Subject: [PATCH 35/38] remove ignore_run_exports for tk --- recipe/meta.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index aa0052b65..3422d6853 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -113,8 +113,6 @@ outputs: ignore_run_exports_from: # [unix] # C++ only installed so CXX is defined for distutils/sysconfig. - {{ compiler('cxx') }} # [unix] - ignore_run_exports: # [linux and ppc64le] - - tk # [linux and ppc64le] # Disabled until verified to work correctly detect_binary_files_with_prefix: true # detect_binary_files_with_prefix: False From b565b0df39e4bf27172a64fa61dc75cc1aa9462a Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Wed, 30 Nov 2022 09:15:23 -0500 Subject: [PATCH 36/38] unset bootstrap mode --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 3422d6853..7450edd57 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -4,10 +4,10 @@ {% 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" %} {% set channel_targets = ('abc', 'def') %} # this is just for the initial build, to break dependencies with python -> pip -> libpython-static -{% set bootstrap = "true" %} +{% set bootstrap = "false" %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} From 64ec2e1aa4c2c7ae4e41d0c51c69b0c5c8b84dfa Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Wed, 11 Jan 2023 11:28:43 +0100 Subject: [PATCH 37/38] revert patch renaming --- recipe/meta.yaml | 46 +++++++++---------- ...for-isysroot-in-addition-to-sysroot.patch} | 0 ...ir_option-Use-1st-word-of-CC-as-com.patch} | 0 ...006-Win32-Do-not-download-externals.patch} | 0 ...so-that-it-looks-in-sys.prefix-lib-.patch} | 0 ...ompiling-on-debian-ubuntu-with-a-di.patch} | 0 ...lookup-unless-CONDA_PY_ALLOW_REG_PA.patch} | 0 ...nssl.patch => 0010-Unvendor-openssl.patch} | 0 ...ite3.patch => 0011-Unvendor-sqlite3.patch} | 0 ...lib-from-env-if-env-variable-is-set.patch} | 0 ...d-CondaEcosystemModifyDllSearchPath.patch} | 0 ...C_DIR-to-make-pdbs-more-relocatable.patch} | 0 ...file.patch => 0015-Doing-d1trimfile.patch} | 0 ....patch => 0016-cross-compile-darwin.patch} | 0 ...patch => 0017-Fix-TZPATH-on-windows.patch} | 0 ...h-work-with-SYSTEM_VERSION_COMPAT-1.patch} | 0 ...D-when-CC-is-overriden-on-Linux-too.patch} | 0 ...-bzip2.patch => 0020-Unvendor-bzip2.patch} | 0 ...ibffi.patch => 0021-Unvendor-libffi.patch} | 0 ...-tcltk.patch => 0022-Unvendor-tcltk.patch} | 0 ...vendor-xz.patch => 0023-unvendor-xz.patch} | 0 ...or-zlib.patch => 0024-unvendor-zlib.patch} | 0 ...not-pass-g-to-GCC-when-not-Py_DEBUG.patch} | 0 23 files changed, 23 insertions(+), 23 deletions(-) rename recipe/patches/{0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch => 0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch} (100%) rename recipe/patches/{0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch => 0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch} (100%) rename recipe/patches/{0005-Win32-Do-not-download-externals.patch => 0006-Win32-Do-not-download-externals.patch} (100%) rename recipe/patches/{0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch => 0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch} (100%) rename recipe/patches/{0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch => 0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch} (100%) rename recipe/patches/{0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch => 0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch} (100%) rename recipe/patches/{0009-Unvendor-openssl.patch => 0010-Unvendor-openssl.patch} (100%) rename recipe/patches/{0010-Unvendor-sqlite3.patch => 0011-Unvendor-sqlite3.patch} (100%) rename recipe/patches/{0013-Use-ranlib-from-env-if-env-variable-is-set.patch => 0012-Use-ranlib-from-env-if-env-variable-is-set.patch} (100%) rename recipe/patches/{0014-Add-CondaEcosystemModifyDllSearchPath.patch => 0013-Add-CondaEcosystemModifyDllSearchPath.patch} (100%) rename recipe/patches/{0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch => 0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch} (100%) rename recipe/patches/{0016-Doing-d1trimfile.patch => 0015-Doing-d1trimfile.patch} (100%) rename recipe/patches/{0017-cross-compile-darwin.patch => 0016-cross-compile-darwin.patch} (100%) rename recipe/patches/{0018-Fix-TZPATH-on-windows.patch => 0017-Fix-TZPATH-on-windows.patch} (100%) rename recipe/patches/{0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch => 0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch} (100%) rename recipe/patches/{0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch => 0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch} (100%) rename recipe/patches/{0021-Unvendor-bzip2.patch => 0020-Unvendor-bzip2.patch} (100%) rename recipe/patches/{0022-Unvendor-libffi.patch => 0021-Unvendor-libffi.patch} (100%) rename recipe/patches/{0023-Unvendor-tcltk.patch => 0022-Unvendor-tcltk.patch} (100%) rename recipe/patches/{0024-unvendor-xz.patch => 0023-unvendor-xz.patch} (100%) rename recipe/patches/{0025-unvendor-zlib.patch => 0024-unvendor-zlib.patch} (100%) rename recipe/patches/{0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch => 0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch} (100%) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 7450edd57..02529bee9 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 = "1" %} +{% set build_number = "2" %} {% set channel_targets = ('abc', 'def') %} # this is just for the initial build, to break dependencies with python -> pip -> libpython-static {% set bootstrap = "false" %} @@ -56,35 +56,35 @@ source: - patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch - patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch # https://github.com/python/cpython/pull/28501 - - patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch + - patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch # https://github.com/pypa/distutils/pull/54 - - patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch - - patches/0005-Win32-Do-not-download-externals.patch - - patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch + - patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch + - patches/0006-Win32-Do-not-download-externals.patch + - patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch # https://github.com/python/cpython/pull/28397 # Patch doesn't apply, but is Debian-specific anyway. - # - patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch - - patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch - - patches/0009-Unvendor-openssl.patch - - patches/0010-Unvendor-sqlite3.patch + # - patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch + - patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch + - patches/0010-Unvendor-openssl.patch + - patches/0011-Unvendor-sqlite3.patch # https://github.com/pypa/distutils/pull/53 - - patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch - - patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch - - patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch - - patches/0016-Doing-d1trimfile.patch + - patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch + - patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch + - patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch + - patches/0015-Doing-d1trimfile.patch # https://github.com/python/cpython/pull/23523 - - patches/0017-cross-compile-darwin.patch - - patches/0018-Fix-TZPATH-on-windows.patch + - patches/0016-cross-compile-darwin.patch + - patches/0017-Fix-TZPATH-on-windows.patch # https://github.com/python/cpython/pull/24324 - - patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch + - patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch # https://github.com/pypa/distutils/pull/53 - - patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch - - patches/0021-Unvendor-bzip2.patch - - patches/0022-Unvendor-libffi.patch - - patches/0023-Unvendor-tcltk.patch - - patches/0024-unvendor-xz.patch - - patches/0025-unvendor-zlib.patch - - patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch + - patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch + - patches/0020-Unvendor-bzip2.patch + - patches/0021-Unvendor-libffi.patch + - patches/0022-Unvendor-tcltk.patch + - patches/0023-unvendor-xz.patch + - patches/0024-unvendor-zlib.patch + - patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch build: number: {{ build_number }} diff --git a/recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch b/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch similarity index 100% rename from recipe/patches/0003-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch rename to recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch diff --git a/recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch b/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch similarity index 100% rename from recipe/patches/0004-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch rename to recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch diff --git a/recipe/patches/0005-Win32-Do-not-download-externals.patch b/recipe/patches/0006-Win32-Do-not-download-externals.patch similarity index 100% rename from recipe/patches/0005-Win32-Do-not-download-externals.patch rename to recipe/patches/0006-Win32-Do-not-download-externals.patch diff --git a/recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch b/recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch similarity index 100% rename from recipe/patches/0006-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch rename to recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch diff --git a/recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch b/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch similarity index 100% rename from recipe/patches/0007-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch rename to recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch diff --git a/recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch similarity index 100% rename from recipe/patches/0008-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch rename to recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch diff --git a/recipe/patches/0009-Unvendor-openssl.patch b/recipe/patches/0010-Unvendor-openssl.patch similarity index 100% rename from recipe/patches/0009-Unvendor-openssl.patch rename to recipe/patches/0010-Unvendor-openssl.patch diff --git a/recipe/patches/0010-Unvendor-sqlite3.patch b/recipe/patches/0011-Unvendor-sqlite3.patch similarity index 100% rename from recipe/patches/0010-Unvendor-sqlite3.patch rename to recipe/patches/0011-Unvendor-sqlite3.patch diff --git a/recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch b/recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch similarity index 100% rename from recipe/patches/0013-Use-ranlib-from-env-if-env-variable-is-set.patch rename to recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch diff --git a/recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch similarity index 100% rename from recipe/patches/0014-Add-CondaEcosystemModifyDllSearchPath.patch rename to recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch diff --git a/recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch b/recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch similarity index 100% rename from recipe/patches/0015-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch rename to recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch diff --git a/recipe/patches/0016-Doing-d1trimfile.patch b/recipe/patches/0015-Doing-d1trimfile.patch similarity index 100% rename from recipe/patches/0016-Doing-d1trimfile.patch rename to recipe/patches/0015-Doing-d1trimfile.patch diff --git a/recipe/patches/0017-cross-compile-darwin.patch b/recipe/patches/0016-cross-compile-darwin.patch similarity index 100% rename from recipe/patches/0017-cross-compile-darwin.patch rename to recipe/patches/0016-cross-compile-darwin.patch diff --git a/recipe/patches/0018-Fix-TZPATH-on-windows.patch b/recipe/patches/0017-Fix-TZPATH-on-windows.patch similarity index 100% rename from recipe/patches/0018-Fix-TZPATH-on-windows.patch rename to recipe/patches/0017-Fix-TZPATH-on-windows.patch diff --git a/recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch b/recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch similarity index 100% rename from recipe/patches/0019-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch rename to recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch diff --git a/recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch b/recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch similarity index 100% rename from recipe/patches/0020-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch rename to recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch diff --git a/recipe/patches/0021-Unvendor-bzip2.patch b/recipe/patches/0020-Unvendor-bzip2.patch similarity index 100% rename from recipe/patches/0021-Unvendor-bzip2.patch rename to recipe/patches/0020-Unvendor-bzip2.patch diff --git a/recipe/patches/0022-Unvendor-libffi.patch b/recipe/patches/0021-Unvendor-libffi.patch similarity index 100% rename from recipe/patches/0022-Unvendor-libffi.patch rename to recipe/patches/0021-Unvendor-libffi.patch diff --git a/recipe/patches/0023-Unvendor-tcltk.patch b/recipe/patches/0022-Unvendor-tcltk.patch similarity index 100% rename from recipe/patches/0023-Unvendor-tcltk.patch rename to recipe/patches/0022-Unvendor-tcltk.patch diff --git a/recipe/patches/0024-unvendor-xz.patch b/recipe/patches/0023-unvendor-xz.patch similarity index 100% rename from recipe/patches/0024-unvendor-xz.patch rename to recipe/patches/0023-unvendor-xz.patch diff --git a/recipe/patches/0025-unvendor-zlib.patch b/recipe/patches/0024-unvendor-zlib.patch similarity index 100% rename from recipe/patches/0025-unvendor-zlib.patch rename to recipe/patches/0024-unvendor-zlib.patch diff --git a/recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch b/recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch similarity index 100% rename from recipe/patches/0026-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch rename to recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch From d2de353dddc667d47e63a5090e127dd4baf40bbb Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Thu, 12 Jan 2023 15:29:31 +0100 Subject: [PATCH 38/38] comment channel from abs.yaml --- abs.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/abs.yaml b/abs.yaml index b130eb037..ce4390a54 100644 --- a/abs.yaml +++ b/abs.yaml @@ -1,5 +1,5 @@ -channels: - py311_bs: release +# channels: +# py311_bs: release # the conda-build parameters to use for disabling --skip-existing build_parameters: - "--suppress-variables"