Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gevent
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
gevent
Commits
96aa3561
Commit
96aa3561
authored
Apr 05, 2016
by
Jason Madden
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix the name of corecext in sys.modules.
parent
c4b95fc4
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
17 additions
and
15 deletions
+17
-15
Makefile
Makefile
+1
-1
appveyor/make.cmd
appveyor/make.cmd
+1
-1
src/gevent/libev/callbacks.c
src/gevent/libev/callbacks.c
+3
-6
util/cythonpp.py
util/cythonpp.py
+12
-7
No files found.
Makefile
View file @
96aa3561
...
...
@@ -15,7 +15,7 @@ export LC_ALL=C.UTF-8
all
:
src/gevent/libev/gevent.corecext.c src/gevent/gevent.ares.c src/gevent/gevent._semaphore.c
src/gevent/libev/gevent.corecext.c
:
src/gevent/libev/corecext.ppyx src/gevent/libev/libev.pxd util/cythonpp.py
$(PYTHON)
util/cythonpp.py
-o
gevent.corecext.c src/gevent/libev/corecext.ppyx
$(PYTHON)
util/cythonpp.py
-o
gevent.corecext.c
--module-name
gevent.libev.corecext.pyx
src/gevent/libev/corecext.ppyx
echo
'#include "callbacks.c"'
>>
gevent.corecext.c
mv
gevent.corecext.
*
src/gevent/libev/
...
...
appveyor/make.cmd
View file @
96aa3561
IF
"
%PYTHON_EXE%
"
==
"python"
(
%PYEXE%
util
\cythonpp.py
-o
gevent
.corecext.c
src
\gevent\libev\corecext.ppyx
%PYEXE%
util
\cythonpp.py
-o
gevent
.corecext.c
-
-module-name
gevent
.libev.corecext.pyx
src
\gevent\libev\corecext.ppyx
type
src
\gevent\libev\callbacks.c
>>
gevent
.corecext.c
move
gevent
.corecext.
*
src
\gevent\libev
)
...
...
src/gevent/libev/callbacks.c
View file @
96aa3561
/* Copyright (c) 2011-2012 Denis Bilenko. See LICENSE for details. */
#ifdef Py_PYTHON_H
#if 1
/* name generated by cython when we use threads */
#define _GEVENTLOOP struct __pyx_vtabstruct_8corecext_loop
#else
#define _GEVENTLOOP struct __pyx_vtabstruct_6gevent_8corecext_loop
#endif
/* the name changes depending on our file layout and --module-name option */
#define _GEVENTLOOP struct __pyx_vtabstruct_6gevent_5libev_8corecext_loop
static
void
gevent_handle_error
(
struct
PyGeventLoopObject
*
loop
,
PyObject
*
context
)
{
PyThreadState
*
tstate
;
...
...
util/cythonpp.py
View file @
96aa3561
...
...
@@ -407,7 +407,8 @@ def _run_cython_on_file(configuration, pyx_filename,
py_banner, banner,
output_filename,
counter, lines,
cache=None):
cache=None,
module_name=None):
value = ''.join(lines)
sourcehash = md5(value.encode("utf-8")).hexdigest()
comment = configuration.format_tag() + " hash:" + str(sourcehash)
...
...
@@ -420,7 +421,7 @@ def _run_cython_on_file(configuration, pyx_filename,
tempdir
=
tempfile
.
mkdtemp
()
#unique_pyx_filename = pyx_filename
#unique_output_filename = output_filename
unique_pyx_filename
=
os
.
path
.
join
(
tempdir
,
pyx_filename
)
unique_pyx_filename
=
os
.
path
.
join
(
tempdir
,
module_name
or
pyx_filename
)
unique_output_filename
=
os
.
path
.
join
(
tempdir
,
output_filename
)
dirname
=
os
.
path
.
dirname
(
unique_pyx_filename
)
# output must be in same dir
...
...
@@ -442,7 +443,8 @@ def _run_cython_on_file(configuration, pyx_filename,
return
configuration
.
attach_tags
(
output
),
configuration
,
sourcehash
def
_run_cython_on_files
(
pyx_filename
,
py_banner
,
banner
,
output_filename
,
preprocessed
):
def
_run_cython_on_files
(
pyx_filename
,
py_banner
,
banner
,
output_filename
,
preprocessed
,
module_name
=
None
):
counter
=
0
threads
=
[]
cache
=
{}
...
...
@@ -452,7 +454,7 @@ def _run_cython_on_files(pyx_filename, py_banner, banner, output_filename, prepr
args
=
(
configuration
,
pyx_filename
,
py_banner
,
banner
,
output_filename
,
counter
,
lines
,
cache
)))
cache
,
module_name
)))
threads
[
-
1
].
start
()
for
t
in
threads
:
...
...
@@ -482,7 +484,7 @@ def _run_cython_on_files(pyx_filename, py_banner, banner, output_filename, prepr
return
ordered_results
def
process_filename
(
filename
,
output_filename
=
None
):
def
process_filename
(
filename
,
output_filename
=
None
,
module_name
=
None
):
"""Process the .ppyx file with preprocessor and compile it with cython.
The algorithm is as following:
...
...
@@ -515,7 +517,7 @@ def process_filename(filename, output_filename=None):
reference_pyx
=
preprocessed
.
pop
(
None
)
sources
=
_run_cython_on_files
(
pyx_filename
,
py_banner
,
banner
,
output_filename
,
preprocessed
)
preprocessed
,
module_name
)
log
(
'Generating %s '
,
output_filename
)
result
=
generate_merged
(
sources
)
...
...
@@ -1026,6 +1028,9 @@ def main():
parser
.
add_argument
(
'--ignore-cond'
,
action
=
'store_true'
,
help
=
'Ignore conditional directives (only expand definitions)'
)
parser
.
add_argument
(
'--write-intermediate'
,
action
=
'store_true'
,
help
=
'Save intermediate files produced by preprocessor and Cython'
)
parser
.
add_argument
(
'-o'
,
'--output-file'
,
help
=
'Specify name of generated C file'
)
# TODO: Derive the module name automatically from the input filename relative to the base
# dir.
parser
.
add_argument
(
'--module-name'
,
help
=
"specify name of .pyx module"
)
parser
.
add_argument
(
"input"
)
options
=
parser
.
parse_args
()
filename
=
options
.
input
...
...
@@ -1060,7 +1065,7 @@ def main():
sys
.
stdout
.
write
(
preprocess_filename
(
filename
,
FakeConfig
()))
if
run
:
process_filename
(
filename
,
options
.
output_file
)
process_filename
(
filename
,
options
.
output_file
,
options
.
module_name
)
if
__name__
==
'__main__'
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment