aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Josh Haberman <jhaberman@gmail.com>2015-04-09 16:41:58 -0700
committerGravatar Josh Haberman <jhaberman@gmail.com>2015-04-09 16:41:58 -0700
commit2bd813b1b5bcff840cfb9972fd6dba1af1e41687 (patch)
treeb99a6c7609cedd500834d7a2e1e19c1d4a2ef08e
parentf0b510ac22798cb4cd805acf5b1798fd1aee9824 (diff)
Added Python to Travis build and clarified setup instructions.
-rw-r--r--.travis.yml2
-rw-r--r--python/README.md26
2 files changed, 18 insertions, 10 deletions
diff --git a/.travis.yml b/.travis.yml
index c7834924..daac9192 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,6 +11,8 @@ script:
- ./autogen.sh && ./configure && make -j2
- cd java && mvn test && cd ..
- cd javanano && mvn test && cd ..
+ - cd python && python setup.py build && python setup.py google_test
+ - LD_LIBRARY_PATH=../src/.libs cd python && python setup.py build --cpp_implementation && python setup.py google_test --cpp_implementation
- make distcheck -j2
notifications:
email: false
diff --git a/python/README.md b/python/README.md
index ee7e7213..bf92a943 100644
--- a/python/README.md
+++ b/python/README.md
@@ -52,8 +52,18 @@ Installation
$ python setup.py build
$ python setup.py google_test
- If you want to build/test c++ implementation, run:
+ To build the C++ implementation run:
$ python setup.py build --cpp_implementation
+
+ To test and use the C++ implementation, you must make libprotobuf.so
+ from the C++ build accessible. You can either install the C++ code
+ you built, or set LD_LIBRARY_PATH:
+
+ $ (cd .. && make install)
+ or
+ $ export LD_LIBRARY_PATH=../src/.libs
+
+ Then run the tests like so:
$ python setup.py google_test --cpp_implementation
If some tests fail, this library may not work correctly on your
@@ -73,12 +83,13 @@ Installation
or:
+ $ (cd .. && make install)
$ python setup.py install --cpp_implementation
This step may require superuser privileges.
- NOTE: To use C++ implementation, you need to install C++ protobuf runtime
- library of the same version and export the environment variable before this
- step. See the "C++ Implementation" section below for more details.
+ NOTE: To use C++ implementation, you need to export an environment
+ variable before running your program. See the "C++ Implementation"
+ section below for more details.
Usage
=====
@@ -100,12 +111,7 @@ To use the C++ implementation, you need to:
2) Export an environment variable:
$ export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
- $ export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION=2
-You need to export this variable before running setup.py script to build and
-install the extension. You must also set the variable at runtime, otherwise
+You must set this variable at runtime, before running your program, otherwise
the pure-Python implementation will be used. In a future release, we will
change the default so that C++ implementation is used whenever it is available.
-It is strongly recommended to run `python setup.py test` after setting the
-variable to "cpp", so the tests will be against C++ implemented Python
-messages.