Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
nexedi
cython
Commits
90fa8d7c
Commit
90fa8d7c
authored
Aug 11, 2017
by
Stefan Behnel
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'release'
parents
a6605cb7
e9194f7f
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
21 additions
and
4 deletions
+21
-4
CHANGES.rst
CHANGES.rst
+3
-0
Cython/Build/Dependencies.py
Cython/Build/Dependencies.py
+12
-1
docs/src/reference/compilation.rst
docs/src/reference/compilation.rst
+6
-3
No files found.
CHANGES.rst
View file @
90fa8d7c
...
...
@@ -65,6 +65,9 @@ Bugs fixed
* Bazel integration failed to compile ``.py`` files.
Patch by Guro Bokum (Github issue #1784).
* Some include directories and dependencies were referenced with their absolute paths
in the generated files despite lying within the project directory.
0.26 (2017-07-19)
=================
...
...
Cython/Build/Dependencies.py
View file @
90fa8d7c
...
...
@@ -76,6 +76,15 @@ else:
basestring
=
str
def
_make_relative
(
file_paths
,
base
=
None
):
if
not
base
:
base
=
os
.
getcwd
()
if
base
[
-
1
]
!=
os
.
path
.
sep
:
base
+=
os
.
path
.
sep
return
[
_relpath
(
path
,
base
)
if
path
.
startswith
(
base
)
else
path
for
path
in
file_paths
]
def
extended_iglob
(
pattern
):
if
'{'
in
pattern
:
m
=
re
.
match
(
'(.*){([^}]+)}(.*)'
,
pattern
)
...
...
@@ -617,8 +626,10 @@ class DependencyTree(object):
info
=
self
.
parse_dependencies
(
filename
)[
3
]
kwds
=
info
.
values
cimports
,
externs
,
incdirs
=
self
.
cimports_externs_incdirs
(
filename
)
basedir
=
os
.
getcwd
()
# Add dependencies on "cdef extern from ..." files
if
externs
:
externs
=
_make_relative
(
externs
,
basedir
)
if
'depends'
in
kwds
:
kwds
[
'depends'
]
=
list
(
set
(
kwds
[
'depends'
]).
union
(
externs
))
else
:
...
...
@@ -627,7 +638,7 @@ class DependencyTree(object):
# "cdef extern from ..." files
if
incdirs
:
include_dirs
=
list
(
kwds
.
get
(
'include_dirs'
,
[]))
for
inc
in
incdirs
:
for
inc
in
_make_relative
(
incdirs
,
basedir
)
:
if
inc
not
in
include_dirs
:
include_dirs
.
append
(
inc
)
kwds
[
'include_dirs'
]
=
include_dirs
...
...
docs/src/reference/compilation.rst
View file @
90fa8d7c
...
...
@@ -368,9 +368,12 @@ Cython code. Here is the list of currently supported directives:
``binding`` (True / False)
Controls whether free functions behave more like Python's CFunctions
(e.g. :func:`len`) or, when set to True, more like Python's functions
(which, among other things, bind to an instance when looked up as a
class attribute).
(e.g. :func:`len`) or, when set to True, more like Python's functions.
When enabled, functions will bind to an instance when looked up as a
class attribute (hence the name) and will emulate the attributes
of Python functions, including introspections like argument names and
annotations.
Default is False.
``boundscheck`` (True / False)
If set to False, Cython is free to assume that indexing operations
...
...
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