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
11 Summary(pl.UTF-8): Protokół kliencki MySQL zaimplementowany w Pythonie
13 # check documentation to see which version is GA (we don't want devel releases)
14 # https://dev.mysql.com/downloads/connector/python/
18 Group: Libraries/Python
19 Source0: http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-%{version}.zip
20 # Source0-md5: 451d6604efa9dcab56d2658e7167898e
24 URL: http://dev.mysql.com/doc/connector-python/en/
25 BuildRequires: mysql-devel
26 BuildRequires: protobuf-devel
28 BuildRequires: python-devel
29 BuildRequires: python-modules
30 BuildRequires: python-setuptools
33 BuildRequires: python3-devel
34 BuildRequires: python3-modules
35 BuildRequires: python3-setuptools
37 BuildRequires: rpm-pythonprov
38 BuildRequires: rpmbuild(macros) >= 1.714
42 Requires: python-modules
43 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46 MySQL Connector/Python is implementing the MySQL Client/Server
47 protocol completely in Python. No MySQL libraries are needed, and no
48 compilation is necessary to run this Python DB API v2.0 compliant
51 %description -l pl.UTF-8
52 MySQL Connector/Python to protokół klient-serwer MySQL-a
53 zaimplementowany całkowicie w Pythonie. Do uruchomienia tego
54 sterownika, zgodnego z DB API v2.0 Pythona, nie są potrzebne
55 biblioteki MySQL-a, ani żadna kompilacja.
57 %package -n python3-%{pname}
58 Summary: The MySQL Client/Protocol implemented in Python
59 Summary(pl.UTF-8): Protokół kliencki MySQL zaimplementowany w Pythonie
60 Group: Development/Languages/Python
61 Requires: python3-modules
63 %description -n python3-%{pname}
64 MySQL Connector/Python is implementing the MySQL Client/Server
65 protocol completely in Python. No MySQL libraries are needed, and no
66 compilation is necessary to run this Python DB API v2.0 compliant
69 %description -n python3-%{pname} -l pl.UTF-8
70 MySQL Connector/Python to protokół klient-serwer MySQL-a
71 zaimplementowany całkowicie w Pythonie. Do uruchomienia tego
72 sterownika, zgodnego z DB API v2.0 Pythona, nie są potrzebne
73 biblioteki MySQL-a, ani żadna kompilacja.
76 %setup -q -n mysql-connector-python-%{version}
82 export MYSQLXPB_PROTOC=%{_bindir}/protoc
83 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
84 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
89 export PYTHONPATH="$(pwd)/$(echo build-2/lib*)"
90 %{__python} unittests.py \
94 --with-mysql=%{_prefix} \
95 --with-mysql-share=%{_datadir}/mysql
102 export PYTHONPATH="$(pwd)/$(echo build-3/lib*)"
103 %{__python3} unittests.py \
107 --with-mysql=%{_prefix} \
108 --with-mysql-share=%{_datadir}/mysql
113 rm -rf $RPM_BUILD_ROOT
115 # see NOTE on beginning of the spec
116 export MYSQLXPB_PROTOC=%{_bindir}/protoc
117 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
118 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
122 --with-mysql-capi=%{_prefix}
128 --with-mysql-capi=%{_prefix}
132 rm -rf $RPM_BUILD_ROOT
136 %defattr(644,root,root,755)
137 %doc CHANGES.txt README.txt
138 %attr(755,root,root) %{py_sitedir}/_mysql_connector.so
139 %dir %{py_sitedir}/mysql
140 %{py_sitedir}/mysql/*.py[co]
141 %dir %{py_sitedir}/mysql/connector
142 %{py_sitedir}/mysql/connector/*.py[co]
143 %dir %{py_sitedir}/mysql/connector/django
144 %{py_sitedir}/mysql/connector/django/*.py[co]
145 %dir %{py_sitedir}/mysql/connector/locales
146 %{py_sitedir}/mysql/connector/locales/*.py[co]
147 %dir %{py_sitedir}/mysql/connector/locales/eng
148 %{py_sitedir}/mysql/connector/locales/eng/*.py[co]
149 %dir %{py_sitedir}/mysqlx
150 %{py_sitedir}/mysqlx/*.py[co]
151 %dir %{py_sitedir}/mysqlx/protobuf
152 %{py_sitedir}/mysqlx/protobuf/*.py[co]
153 %dir %{py_sitedir}/mysqlx/locales
154 %{py_sitedir}/mysqlx/locales/*.py[co]
155 %dir %{py_sitedir}/mysqlx/locales/eng
156 %{py_sitedir}/mysqlx/locales/eng/*.py[co]
157 %if "%{py_ver}" > "2.4"
158 %{py_sitedir}/mysql_connector_python-*.egg-info
163 %files -n python3-%{pname}
164 %defattr(644,root,root,755)
165 %doc CHANGES.txt README.txt
166 %attr(755,root,root) %{py3_sitedir}/_mysql_connector.cpython-*.so
167 %{py3_sitedir}/mysql*.egg-info
168 %dir %{py3_sitedir}/mysql
169 %{py3_sitedir}/mysql/*.py
170 %dir %{py3_sitedir}/mysql/__pycache__
171 %{py3_sitedir}/mysql/__pycache__/*.py[co]
172 %dir %{py3_sitedir}/mysql/connector
173 %{py3_sitedir}/mysql/connector/*.py
174 %dir %{py3_sitedir}/mysql/connector/__pycache__
175 %{py3_sitedir}/mysql/connector/__pycache__/*.py[co]
176 %dir %{py3_sitedir}/mysql/connector/django
177 %{py3_sitedir}/mysql/connector/django/*.py
178 %dir %{py3_sitedir}/mysql/connector/django/__pycache__
179 %{py3_sitedir}/mysql/connector/django/__pycache__/*.py[co]
180 %dir %{py3_sitedir}/mysql/connector/locales
181 %{py3_sitedir}/mysql/connector/locales/*.py
182 %dir %{py3_sitedir}/mysql/connector/locales/__pycache__
183 %{py3_sitedir}/mysql/connector/locales/__pycache__/*.py[co]
184 %dir %{py3_sitedir}/mysql/connector/locales/eng
185 %{py3_sitedir}/mysql/connector/locales/eng/*.py
186 %dir %{py3_sitedir}/mysql/connector/locales/eng/__pycache__
187 %{py3_sitedir}/mysql/connector/locales/eng/__pycache__/*.py[co]
188 %dir %{py3_sitedir}/mysqlx
189 %{py3_sitedir}/mysqlx/*.py
190 %dir %{py3_sitedir}/mysqlx/__pycache__
191 %{py3_sitedir}/mysqlx/__pycache__/*.py[co]
192 %dir %{py3_sitedir}/mysqlx/locales
193 %{py3_sitedir}/mysqlx/locales/*.py
194 %dir %{py3_sitedir}/mysqlx/locales/__pycache__
195 %{py3_sitedir}/mysqlx/locales/__pycache__/*.py[co]
196 %dir %{py3_sitedir}/mysqlx/locales/eng
197 %{py3_sitedir}/mysqlx/locales/eng/*.py
198 %dir %{py3_sitedir}/mysqlx/locales/eng/__pycache__
199 %{py3_sitedir}/mysqlx/locales/eng/__pycache__/*.py[co]
200 %dir %{py3_sitedir}/mysqlx/protobuf
201 %{py3_sitedir}/mysqlx/protobuf/*.py
202 %dir %{py3_sitedir}/mysqlx/protobuf/__pycache__
203 %{py3_sitedir}/mysqlx/protobuf/__pycache__/*.py[co]