aboutsummaryrefslogtreecommitdiff
path: root/python/setup.py
diff options
context:
space:
mode:
authorjieluo@google.com <jieluo@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2014-08-25 20:17:53 +0000
committerjieluo@google.com <jieluo@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2014-08-25 20:17:53 +0000
commit1eba9d9c7424235b1a6dcd866fcd06d12e08a7f3 (patch)
treeb2a894794db1f6147214e356c20f754e270f4e7f /python/setup.py
parent786379af4766fa7ec22b51862ba6e84156b1f9cb (diff)
downloadprotobuf-1eba9d9c7424235b1a6dcd866fcd06d12e08a7f3.tar.gz
protobuf-1eba9d9c7424235b1a6dcd866fcd06d12e08a7f3.tar.bz2
protobuf-1eba9d9c7424235b1a6dcd866fcd06d12e08a7f3.zip
merge tags/2.6.0 into trunk
Diffstat (limited to 'python/setup.py')
-rwxr-xr-xpython/setup.py42
1 files changed, 28 insertions, 14 deletions
diff --git a/python/setup.py b/python/setup.py
index 51b27d72..6eecd489 100755
--- a/python/setup.py
+++ b/python/setup.py
@@ -83,6 +83,23 @@ def GenerateUnittestProtos():
generate_proto("google/protobuf/internal/factory_test2.proto")
generate_proto("google/protobuf/pyext/python.proto")
+def MakeTestSuite():
+ # Test C++ implementation
+ import unittest
+ import google.protobuf.pyext.descriptor_cpp2_test as descriptor_cpp2_test
+ import google.protobuf.pyext.message_factory_cpp2_test \
+ as message_factory_cpp2_test
+ import google.protobuf.pyext.reflection_cpp2_generated_test \
+ as reflection_cpp2_generated_test
+
+ loader = unittest.defaultTestLoader
+ suite = unittest.TestSuite()
+ for test in [ descriptor_cpp2_test,
+ message_factory_cpp2_test,
+ reflection_cpp2_generated_test]:
+ suite.addTest(loader.loadTestsFromModule(test))
+ return suite
+
class clean(_clean):
def run(self):
# Delete generated files in the code tree.
@@ -119,14 +136,14 @@ class build_py(_build_py):
# release that are subject to conversion.
# See code reference in previous code review.
-
if __name__ == '__main__':
- # C++ implementation extension
- cpp_impl = '--cpp_implementation'
- if cpp_impl in sys.argv:
+ ext_module_list = []
+ nocpp = '--nocpp_implementation'
+ if nocpp in sys.argv:
sys.argv.remove(cpp_impl)
- test_dir = "google/protobuf/pyext"
- ext_module_list = [Extension(
+ else:
+ # C++ implementation extension
+ ext_module_list.append(Extension(
"google.protobuf.pyext._message",
[ "google/protobuf/pyext/descriptor.cc",
"google/protobuf/pyext/message.cc",
@@ -134,20 +151,17 @@ if __name__ == '__main__':
"google/protobuf/pyext/repeated_scalar_container.cc",
"google/protobuf/pyext/repeated_composite_container.cc" ],
define_macros=[('GOOGLE_PROTOBUF_HAS_ONEOF', '1')],
- include_dirs = [ ".", "../src" ],
+ include_dirs = [ ".", "../src"],
libraries = [ "protobuf" ],
library_dirs = [ '../src/.libs' ],
- )]
- else:
- test_dir = "google/protobuf/internal"
- ext_module_list = []
-
+ ))
setup(name = 'protobuf',
- version = '2.6-pre',
+ version = '2.6.0',
packages = [ 'google' ],
namespace_packages = [ 'google' ],
- google_test_dir = test_dir,
+ test_suite = 'setup.MakeTestSuite',
+ google_test_dir = "google/protobuf/internal",
# Must list modules explicitly so that we don't install tests.
py_modules = [
'google.protobuf.internal.api_implementation',