blob: 2926923029a56b1f17a84f43f39ee3f1ad567b26 [file] [log] [blame]
Masood Malekghassemiaff69362016-09-21 15:10:36 -07001# Copyright 2016, Google Inc.
2# All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions are
6# met:
7#
8# * Redistributions of source code must retain the above copyright
9# notice, this list of conditions and the following disclaimer.
10# * Redistributions in binary form must reproduce the above
11# copyright notice, this list of conditions and the following disclaimer
12# in the documentation and/or other materials provided with the
13# distribution.
14# * Neither the name of Google Inc. nor the names of its
15# contributors may be used to endorse or promote products derived from
16# this software without specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Masood Malekghassemiaff69362016-09-21 15:10:36 -070029"""Setup module for the GRPC Python package's optional reflection."""
30
31import os
32import sys
33
34import setuptools
35
36# Ensure we're in the proper directory whether or not we're being used by pip.
37os.chdir(os.path.dirname(os.path.abspath(__file__)))
38
39# Break import-style to ensure we can actually find our commands module.
40import reflection_commands
41import grpc_version
42
Masood Malekghassemicc793702017-01-13 19:20:10 -080043PACKAGE_DIRECTORIES = {'': '.',}
Masood Malekghassemiaff69362016-09-21 15:10:36 -070044
45SETUP_REQUIRES = (
Masood Malekghassemicc793702017-01-13 19:20:10 -080046 'grpcio-tools>={version}'.format(version=grpc_version.VERSION),)
Masood Malekghassemiaff69362016-09-21 15:10:36 -070047
48INSTALL_REQUIRES = (
49 'protobuf>=3.0.0',
Masood Malekghassemicc793702017-01-13 19:20:10 -080050 'grpcio>={version}'.format(version=grpc_version.VERSION),)
Masood Malekghassemiaff69362016-09-21 15:10:36 -070051
52COMMAND_CLASS = {
53 # Run preprocess from the repository *before* doing any packaging!
54 'preprocess': reflection_commands.CopyProtoModules,
55 'build_package_protos': reflection_commands.BuildPackageProtos,
56}
57
58setuptools.setup(
59 name='grpcio-reflection',
60 version=grpc_version.VERSION,
61 license='3-clause BSD',
62 package_dir=PACKAGE_DIRECTORIES,
63 packages=setuptools.find_packages('.'),
Masood Malekghassemiaff69362016-09-21 15:10:36 -070064 install_requires=INSTALL_REQUIRES,
65 setup_requires=SETUP_REQUIRES,
Masood Malekghassemicc793702017-01-13 19:20:10 -080066 cmdclass=COMMAND_CLASS)