2 # - c extension build is done in install phase (http://bugs.mysql.com/bug.php?id=78621)
5 %bcond_with tests # build with tests (requires mysql server)
6 %bcond_without python2 # build without python2
7 %bcond_without python3 # build without python3
9 %define pname mysql-connector
10 Summary: The MySQL Client/Protocol implemented in Python
12 # check documentation to see which version is GA (we don't want devel releases)
13 # https://dev.mysql.com/downloads/connector/python/
17 Group: Libraries/Python
18 Source0: http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-%{version}.zip
19 # Source0-md5: d47704b39d794b287d146c3d772ab896
21 Patch1: binary-bug-90585.patch
23 URL: http://dev.mysql.com/doc/connector-python/en/
24 BuildRequires: mysql-devel
25 BuildRequires: protobuf-devel
27 BuildRequires: python-devel
28 BuildRequires: python-modules
31 BuildRequires: python3-devel
32 BuildRequires: python3-modules
34 BuildRequires: rpm-pythonprov
35 BuildRequires: rpmbuild(macros) >= 1.710
39 Requires: python-modules
40 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43 MySQL Connector/Python is implementing the MySQL Client/Server
44 protocol completely in Python. No MySQL libraries are needed, and no
45 compilation is necessary to run this Python DB API v2.0 compliant
46 driver. An interface to the popular MySQL database server for Python.
48 %package -n python3-%{pname}
49 Summary: The MySQL Client/Protocol implemented in Python
50 Group: Development/Languages/Python
51 Requires: python3-modules
53 %description -n python3-%{pname}
54 MySQL Connector/Python is implementing the MySQL Client/Server
55 protocol completely in Python. No MySQL libraries are needed, and no
56 compilation is necessary to run this Python DB API v2.0 compliant
57 driver. An interface to the popular MySQL database server for Python.
60 %setup -q -n mysql-connector-python-%{version}
66 export MYSQLXPB_PROTOC=%{_bindir}/protoc
67 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
68 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
73 export PYTHONPATH="$(pwd)/$(ls -1d build-2/lib*)"
74 %{__python} unittests.py \
78 --with-mysql=%{_prefix} \
79 --with-mysql-share=%{_datadir}/mysql
86 export PYTHONPATH="$(pwd)/$(ls -1d build-3/lib*)"
87 %{__python3} unittests.py \
91 --with-mysql=%{_prefix} \
92 --with-mysql-share=%{_datadir}/mysql
97 rm -rf $RPM_BUILD_ROOT
99 # see NOTE on beginning of the spec
100 export MYSQLXPB_PROTOC=%{_bindir}/protoc
101 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
102 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
106 --with-mysql-capi=%{_prefix}
112 --with-mysql-capi=%{_prefix}
116 rm -rf $RPM_BUILD_ROOT
120 %defattr(644,root,root,755)
121 %doc CHANGES.txt README.txt
122 %attr(755,root,root) %{py_sitedir}/_mysql_connector.so
123 %dir %{py_sitedir}/mysql
124 %{py_sitedir}/mysql/*.py[co]
125 %dir %{py_sitedir}/mysql/connector
126 %{py_sitedir}/mysql/connector/*.py[co]
127 %dir %{py_sitedir}/mysql/connector/django
128 %{py_sitedir}/mysql/connector/django/*.py[co]
129 %dir %{py_sitedir}/mysql/connector/fabric
130 %{py_sitedir}/mysql/connector/fabric/*.py[co]
131 %dir %{py_sitedir}/mysql/connector/locales
132 %{py_sitedir}/mysql/connector/locales/*.py[co]
133 %dir %{py_sitedir}/mysql/connector/locales/eng
134 %{py_sitedir}/mysql/connector/locales/eng/*.py[co]
135 %dir %{py_sitedir}/mysqlx
136 %{py_sitedir}/mysqlx/*.py[co]
137 %dir %{py_sitedir}/mysqlx/protobuf
138 %{py_sitedir}/mysqlx/protobuf/*.py[co]
139 %dir %{py_sitedir}/mysqlx/locales
140 %{py_sitedir}/mysqlx/locales/*.py[co]
141 %dir %{py_sitedir}/mysqlx/locales/eng
142 %{py_sitedir}/mysqlx/locales/eng/*.py[co]
143 %if "%{py_ver}" > "2.4"
144 %{py_sitedir}/mysql_connector_python-*.egg-info
149 %files -n python3-%{pname}
150 %defattr(644,root,root,755)
151 %doc CHANGES.txt README.txt
152 %attr(755,root,root) %{py3_sitedir}/_mysql_connector.cpython-*.so
153 %{py3_sitedir}/mysql*.egg-info
154 %dir %{py3_sitedir}/mysql
155 %{py3_sitedir}/mysql/*.py
156 %dir %{py3_sitedir}/mysql/__pycache__
157 %{py3_sitedir}/mysql/__pycache__/*.py[co]
158 %dir %{py3_sitedir}/mysql/connector
159 %{py3_sitedir}/mysql/connector/*.py
160 %dir %{py3_sitedir}/mysql/connector/__pycache__
161 %{py3_sitedir}/mysql/connector/__pycache__/*.py[co]
162 %dir %{py3_sitedir}/mysql/connector/django
163 %{py3_sitedir}/mysql/connector/django/*.py
164 %dir %{py3_sitedir}/mysql/connector/django/__pycache__
165 %{py3_sitedir}/mysql/connector/django/__pycache__/*.py[co]
166 %dir %{py3_sitedir}/mysql/connector/fabric
167 %{py3_sitedir}/mysql/connector/fabric/*.py
168 %dir %{py3_sitedir}/mysql/connector/fabric/__pycache__
169 %{py3_sitedir}/mysql/connector/fabric/__pycache__/*.py[co]
170 %dir %{py3_sitedir}/mysql/connector/locales
171 %{py3_sitedir}/mysql/connector/locales/*.py
172 %dir %{py3_sitedir}/mysql/connector/locales/__pycache__
173 %{py3_sitedir}/mysql/connector/locales/__pycache__/*.py[co]
174 %dir %{py3_sitedir}/mysql/connector/locales/eng
175 %{py3_sitedir}/mysql/connector/locales/eng/*.py
176 %dir %{py3_sitedir}/mysql/connector/locales/eng/__pycache__
177 %{py3_sitedir}/mysql/connector/locales/eng/__pycache__/*.py[co]
178 %dir %{py3_sitedir}/mysqlx
179 %{py3_sitedir}/mysqlx/*.py
180 %dir %{py3_sitedir}/mysqlx/__pycache__
181 %{py3_sitedir}/mysqlx/__pycache__/*.py[co]
182 %dir %{py3_sitedir}/mysqlx/locales
183 %{py3_sitedir}/mysqlx/locales/*.py
184 %dir %{py3_sitedir}/mysqlx/locales/__pycache__
185 %{py3_sitedir}/mysqlx/locales/__pycache__/*.py[co]
186 %dir %{py3_sitedir}/mysqlx/locales/eng
187 %{py3_sitedir}/mysqlx/locales/eng/*.py
188 %dir %{py3_sitedir}/mysqlx/locales/eng/__pycache__
189 %{py3_sitedir}/mysqlx/locales/eng/__pycache__/*.py[co]
190 %dir %{py3_sitedir}/mysqlx/protobuf
191 %{py3_sitedir}/mysqlx/protobuf/*.py
192 %dir %{py3_sitedir}/mysqlx/protobuf/__pycache__
193 %{py3_sitedir}/mysqlx/protobuf/__pycache__/*.py[co]