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: e9c473418b52bcae9687dddb0b69369f
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
29 BuildRequires: python-setuptools
32 BuildRequires: python3-devel
33 BuildRequires: python3-modules
34 BuildRequires: python3-setuptools
36 BuildRequires: rpm-pythonprov
37 BuildRequires: rpmbuild(macros) >= 1.714
41 Requires: python-modules
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45 MySQL Connector/Python is implementing the MySQL Client/Server
46 protocol completely in Python. No MySQL libraries are needed, and no
47 compilation is necessary to run this Python DB API v2.0 compliant
50 %description -l pl.UTF-8
51 MySQL Connector/Python to protokół klient-serwer MySQL-a
52 zaimplementowany całkowicie w Pythonie. Do uruchomienia tego
53 sterownika, zgodnego z DB API v2.0 Pythona, nie są potrzebne
54 biblioteki MySQL-a, ani żadna kompilacja.
56 %package -n python3-%{pname}
57 Summary: The MySQL Client/Protocol implemented in Python
58 Summary(pl.UTF-8): Protokół kliencki MySQL zaimplementowany w Pythonie
59 Group: Development/Languages/Python
60 Requires: python3-modules
62 %description -n python3-%{pname}
63 MySQL Connector/Python is implementing the MySQL Client/Server
64 protocol completely in Python. No MySQL libraries are needed, and no
65 compilation is necessary to run this Python DB API v2.0 compliant
68 %description -n python3-%{pname} -l pl.UTF-8
69 MySQL Connector/Python to protokół klient-serwer MySQL-a
70 zaimplementowany całkowicie w Pythonie. Do uruchomienia tego
71 sterownika, zgodnego z DB API v2.0 Pythona, nie są potrzebne
72 biblioteki MySQL-a, ani żadna kompilacja.
75 %setup -q -n mysql-connector-python-%{version}
80 export MYSQLXPB_PROTOC=%{_bindir}/protoc
81 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
82 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
87 export PYTHONPATH="$(pwd)/$(echo build-2/lib*)"
88 %{__python} unittests.py \
92 --with-mysql=%{_prefix} \
93 --with-mysql-share=%{_datadir}/mysql
100 export PYTHONPATH="$(pwd)/$(echo build-3/lib*)"
101 %{__python3} unittests.py \
105 --with-mysql=%{_prefix} \
106 --with-mysql-share=%{_datadir}/mysql
111 rm -rf $RPM_BUILD_ROOT
113 # see NOTE on beginning of the spec
114 export MYSQLXPB_PROTOC=%{_bindir}/protoc
115 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
116 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
120 --with-mysql-capi=%{_prefix}
126 --with-mysql-capi=%{_prefix}
130 rm -rf $RPM_BUILD_ROOT
134 %defattr(644,root,root,755)
135 %doc CHANGES.txt README.txt
136 %attr(755,root,root) %{py_sitedir}/_mysql_connector.so
137 %dir %{py_sitedir}/mysql
138 %{py_sitedir}/mysql/*.py[co]
139 %dir %{py_sitedir}/mysql/connector
140 %{py_sitedir}/mysql/connector/*.py[co]
141 %dir %{py_sitedir}/mysql/connector/django
142 %{py_sitedir}/mysql/connector/django/*.py[co]
143 %dir %{py_sitedir}/mysql/connector/locales
144 %{py_sitedir}/mysql/connector/locales/*.py[co]
145 %dir %{py_sitedir}/mysql/connector/locales/eng
146 %{py_sitedir}/mysql/connector/locales/eng/*.py[co]
147 %dir %{py_sitedir}/mysqlx
148 %{py_sitedir}/mysqlx/*.py[co]
149 %dir %{py_sitedir}/mysqlx/protobuf
150 %{py_sitedir}/mysqlx/protobuf/*.py[co]
151 %dir %{py_sitedir}/mysqlx/locales
152 %{py_sitedir}/mysqlx/locales/*.py[co]
153 %dir %{py_sitedir}/mysqlx/locales/eng
154 %{py_sitedir}/mysqlx/locales/eng/*.py[co]
155 %if "%{py_ver}" > "2.4"
156 %{py_sitedir}/mysql_connector_python-*.egg-info
161 %files -n python3-%{pname}
162 %defattr(644,root,root,755)
163 %doc CHANGES.txt README.txt
164 %attr(755,root,root) %{py3_sitedir}/_mysql_connector.cpython-*.so
165 %{py3_sitedir}/mysql*.egg-info
166 %dir %{py3_sitedir}/mysql
167 %{py3_sitedir}/mysql/*.py
168 %dir %{py3_sitedir}/mysql/__pycache__
169 %{py3_sitedir}/mysql/__pycache__/*.py[co]
170 %dir %{py3_sitedir}/mysql/connector
171 %{py3_sitedir}/mysql/connector/*.py
172 %dir %{py3_sitedir}/mysql/connector/__pycache__
173 %{py3_sitedir}/mysql/connector/__pycache__/*.py[co]
174 %dir %{py3_sitedir}/mysql/connector/django
175 %{py3_sitedir}/mysql/connector/django/*.py
176 %dir %{py3_sitedir}/mysql/connector/django/__pycache__
177 %{py3_sitedir}/mysql/connector/django/__pycache__/*.py[co]
178 %dir %{py3_sitedir}/mysql/connector/locales
179 %{py3_sitedir}/mysql/connector/locales/*.py
180 %dir %{py3_sitedir}/mysql/connector/locales/__pycache__
181 %{py3_sitedir}/mysql/connector/locales/__pycache__/*.py[co]
182 %dir %{py3_sitedir}/mysql/connector/locales/eng
183 %{py3_sitedir}/mysql/connector/locales/eng/*.py
184 %dir %{py3_sitedir}/mysql/connector/locales/eng/__pycache__
185 %{py3_sitedir}/mysql/connector/locales/eng/__pycache__/*.py[co]
186 %dir %{py3_sitedir}/mysqlx
187 %{py3_sitedir}/mysqlx/*.py
188 %dir %{py3_sitedir}/mysqlx/__pycache__
189 %{py3_sitedir}/mysqlx/__pycache__/*.py[co]
190 %dir %{py3_sitedir}/mysqlx/locales
191 %{py3_sitedir}/mysqlx/locales/*.py
192 %dir %{py3_sitedir}/mysqlx/locales/__pycache__
193 %{py3_sitedir}/mysqlx/locales/__pycache__/*.py[co]
194 %dir %{py3_sitedir}/mysqlx/locales/eng
195 %{py3_sitedir}/mysqlx/locales/eng/*.py
196 %dir %{py3_sitedir}/mysqlx/locales/eng/__pycache__
197 %{py3_sitedir}/mysqlx/locales/eng/__pycache__/*.py[co]
198 %dir %{py3_sitedir}/mysqlx/protobuf
199 %{py3_sitedir}/mysqlx/protobuf/*.py
200 %dir %{py3_sitedir}/mysqlx/protobuf/__pycache__
201 %{py3_sitedir}/mysqlx/protobuf/__pycache__/*.py[co]