Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pypy windows #41

Closed
wants to merge 15 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 12 additions & 9 deletions .azure-pipelines/azure-pipelines-win.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 34 additions & 0 deletions .ci_support/migrations/pypy37_windows.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
migrator_ts: 1623865877
__migrator:
paused: False
migration_number: 1
operation: key_add
primary_key: python
ordering:
python:
- 3.6.* *_cpython
- 3.7.* *_cpython
- 3.8.* *_cpython
- 3.9.* *_cpython
- 3.6.* *_73_pypy
- 3.7.* *_73_pypy # new entry
longterm: True
pr_limit: 6
bump_number: 0
wait_for_migrators:
- pypy37
commit_message: "Rebuild for PyPy3.7 for windows"
exclude:
# this shouldn't attempt to modify the python feedstocks
- python
- pypy3.6
- pypy-meta

python: # [win]
- 3.7.* *_73_pypy # [win]
# additional entries to add for zip_keys
numpy: # [win]
- 1.19 # [win]
python_impl: # [win]
- pypy # [win]

20 changes: 0 additions & 20 deletions .ci_support/migrations/python39.yaml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,10 @@ pin_run_as_build:
max_pin: x.x
python:
- 3.6.* *_cpython
python_impl:
- cpython
target_platform:
- win-64
zip_keys:
- - python
- python_impl
19 changes: 19 additions & 0 deletions .ci_support/win_64_python3.7.____73_pypypython_implpypy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
c_compiler:
- vs2017
channel_sources:
- conda-forge,defaults
channel_targets:
- conda-forge main
pin_run_as_build:
python:
min_pin: x.x
max_pin: x.x
python:
- 3.7.* *_73_pypy
python_impl:
- pypy
target_platform:
- win-64
zip_keys:
- - python
- python_impl
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,10 @@ pin_run_as_build:
max_pin: x.x
python:
- 3.7.* *_cpython
python_impl:
- cpython
target_platform:
- win-64
zip_keys:
- - python
- python_impl
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,10 @@ pin_run_as_build:
max_pin: x.x
python:
- 3.8.* *_cpython
python_impl:
- cpython
target_platform:
- win-64
zip_keys:
- - python
- python_impl
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,10 @@ pin_run_as_build:
max_pin: x.x
python:
- 3.9.* *_cpython
python_impl:
- cpython
target_platform:
- win-64
zip_keys:
- - python
- python_impl
35 changes: 35 additions & 0 deletions .scripts/logging_utils.sh

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion LICENSE.txt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 18 additions & 10 deletions README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

27 changes: 24 additions & 3 deletions build-locally.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions recipe/graminit.h
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/* Dummy file for PyPY to make stdafx.h happy */
24 changes: 24 additions & 0 deletions recipe/import.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

/* Module definition and import interface */

#ifndef Py_IMPORT_H
#define Py_IMPORT_H
#ifdef __cplusplus
extern "C" {
#endif

PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevel(
const char *name, /* UTF-8 encoded string */
PyObject *globals,
PyObject *locals,
PyObject *fromlist,
int level
);

#define PyImport_ImportModuleEx(n, g, l, f) \
PyImport_ImportModuleLevel(n, g, l, f, 0)

#ifdef __cplusplus
}
#endif
#endif /* !Py_IMPORT_H */
11 changes: 9 additions & 2 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,19 @@ source:
url: https://github.com/mhammond/pywin32/archive/b{{ version }}.tar.gz
sha256: 5366613c366c66b521a2e79780dcdf347310bd2b75022e424df320760931999c
patches:
- disable_exchange_modules.patch
- 0003-remove-PATH-pth-hack.patch
- patches/disable_exchange_modules.patch
- patches/0003-remove-PATH-pth-hack.patch
- patches/remove_bdist_msi_to_support_pypy.patch
- patches/0001-remove-modules-needing-pythonservice.cpp-for-pypy.patch
# Remove these after PyPy 7.3.6 release
- patches/0004-pre-pypy-3.7.6-PyExc_WindowsError.patch

build:
number: 0
script:
# TODO: remove the following line after PyPy 7.3.6
- copy %RECIPE_DIR%\import.h %PREFIX%\include\ # [python_impl == "pypy"]
- copy %RECIPE_DIR%\graminit.h %PREFIX%\include\ # [python_impl == "pypy"]
- {{ PYTHON }} setup.py -q install --record=record.txt --skip-verstamp
- copy %PREFIX%\Lib\site-packages\pywin32_system32\*.dll %PREFIX%\Lib\site-packages\win32\
- copy %PREFIX%\Lib\site-packages\pywin32_system32\*.dll %LIBRARY_BIN%\
Expand Down
Loading