Commit graph

37 commits

Author SHA1 Message Date
Daniel Grunwald d7a94ba4b1 Add cargo categories. 2017-01-27 22:42:07 +01:00
Daniel Grunwald b83a5d9bad Bump crate version numbers. 2016-12-17 21:29:02 +01:00
Daniel Grunwald e2d7781433 Add "extension-module" feature to suppress linking pythonX.Y.so.
The symbols are instead kept unresolved, so that they can be used with
any compatible python interpreter, even if the target system uses a
statically linked python and lacks pythonX.Y.so altogether.
2016-12-17 21:17:11 +01:00
Daniel Grunwald f6ed2bbae9 Fix #10: Windows support.
We keep the #[link] attributes in #[cfg_attr(windows)] so that we don't require a nightly Rust build on non-Windows platforms.
This can be simplified once RFC 1717 is available in a stable rust version.

This commit also increases the minimum Rust version to 1.13.
2016-12-17 15:46:52 +01:00
Daniel Grunwald 278c1aece8 Fix #56: PyModuleDef changed "m_slots" to "m_reload" in Python 3.5. 2016-12-10 13:03:51 +01:00
Daniel Grunwald 2b012968ec Add missing #[cfg(Py_3_6)] 2016-12-10 12:37:33 +01:00
Daniel Grunwald 52c05c6bac Adjust python3-sys to Python 3.6 RC headers. 2016-12-10 12:07:42 +01:00
Daniel Grunwald d826377d4f Merge pull request #45 from royalstream/royalstream-macos
get_macos_linkmodel fix
2016-04-17 23:46:18 +02:00
Daniel Grunwald fffcf57834 Add support for __len__ special method. 2016-04-17 23:26:33 +02:00
Steven Burns 14bd89dec7 get_macos_linkmodel fix 2016-04-16 22:02:17 -06:00
Daniel Grunwald 547879ef0f Remove rustobject (PyRustObject, TypeBuilder).
Add new py_class!() macro that generates a static type.
2016-03-09 01:07:50 +01:00
Daniel Grunwald ba325b10d4 python27-sys 0.1.1 and python3-sys 0.1.2 release 2016-03-05 17:40:41 +01:00
Daniel Grunwald 7269dc64c2 python*-sys: use #![no_std] 2016-01-22 20:38:34 +01:00
Daniel Grunwald e935111c9c Update interpolate_idents to my fork (adjusted for currently Rust nightlies).
Update libc to 0.2.
2015-11-07 17:10:20 +01:00
Daniel Grunwald 32086a0ef5 Add back PyIterator, PyListIterator etc. 2015-10-29 02:36:50 +01:00
Daniel Grunwald d33a4b68fc Add test script that all symbols imported by python-sys are exported from the python .so 2015-09-20 22:21:18 +02:00
Daniel Grunwald b21a23b304 In python 3, use PyUnicode_AsUTF8AndSize for extracting UTF-8 from unicode objects. 2015-09-20 16:21:00 +02:00
Daniel Grunwald 6c0e7e07c7 python3-sys: add more of the non-limited API 2015-09-20 14:11:31 +02:00
Daniel Grunwald cb938e1906 Start with non-limited python 3 API:
* pymem.h
* object.h
* code.h
* compile.h
* tupleobject.h

The PEP-384 limited API is available when using the "pep-384" cargo feature.
2015-09-19 15:37:29 +02:00
Daniel Grunwald 3e2dca717e Fix compiler warning (unused std::fs) 2015-08-21 21:28:13 +02:00
James Salter 93645484ed Remove pkgconfig approach from -sys builds.
* pkgconfig is frequently broken or missing, doesn't
contain the explicit path to the interpreter (leading
to bad guesses), and confuses users. Rely on PATH alone.

* Fix bad detection of OSX shared library python

* Fix get_config_from_interpreter reporting python interpreter
path inconsistently with find_interpreter_and_get_config -
fixes OSX python.org python 3, which doesn't have a 'python'
in exec_prefix, just 'python3'
2015-08-16 12:30:57 +01:00
Daniel Grunwald 29693eec12 python27-sys 0.1.0 and python3-sys 0.1.1 2015-07-04 20:20:06 +02:00
Daniel Grunwald dae7c891dc #16: Try "python" first and only try "pythonX" or "pythonX.Y" if the previous
tries result in the wrong python version.
2015-07-04 18:46:37 +02:00
Daniel Grunwald 43552a075d Enable python 3 CI 2015-06-28 21:46:24 +02:00
Daniel Grunwald 2904330b1c Improve build.rs when configuring using the python in PATH
* First try "pythonX.Y" and
  "pythonX" before using the generic "python"
* Use LDVERSION to detect 'dmu' suffix (PEP-3149)
2015-06-28 21:45:53 +02:00
Daniel Grunwald a2eb6de523 Add windows CI.
Due to the linker troubles (#10), we only build the rlib and don't run any tests.
2015-06-27 15:15:06 +02:00
Daniel Grunwald cc2d30db58 Use pkg-config 0.3.5 2015-06-18 22:50:15 +02:00
James Salter 387ca4b2d9 Merge branch 'master' of https://github.com/dgrunwald/rust-cpython 2015-05-30 17:09:36 +01:00
James Salter 981928a2f4 re-apply e84818 2015-05-30 16:59:58 +01:00
James Salter 34ac5845b0 clone build.rs from python27 into python3 2015-05-28 11:28:59 +01:00
Daniel Grunwald e848189692 Fix python 3 linux build. 2015-05-26 19:37:08 +02:00
James Salter 124a85d749 can build with only a major python 3 version 2015-05-25 15:38:21 +01:00
Daniel Grunwald 8c8779e3fb py_module_initializer! for python 3 2015-05-24 20:06:08 +02:00
Daniel Grunwald 38b5971e56 python3-sys: use cfg(py_sys_config=..) instead of cfg(feature=..) 2015-05-23 18:20:49 +02:00
James Salter b1eca56ec3 Python 3 build support
* Add python3-sys to rust-cpython as an optional feature, and
  make python27-sys also optional, but still the default
* Parametrise python27-sys/build.rs so that it is python
  version independent, and clone it into python3-sys/build.rs.
  Hopefully this can continue to be maintained as an identical
  file.
* python27-sys and python3-sys gain features for explicitly
  selecting a python version to link to. for python27-sys,
  there's currently only python27; for python3-sys there's
  python 3.4 and 3.5.
* explicitly tell travis to use nightlies (seems to have
  started trying to use 1.0.0)
2015-05-23 15:23:08 +01:00
Daniel Grunwald b2293e593e crates.io doesn't accept dots in feature names 2015-05-03 00:39:03 +02:00
Daniel Grunwald 5594db8261 Add python3-sys 2015-04-26 10:32:58 +02:00