]> git.pld-linux.org Git - packages/python-mysql-connector.git/blob - python-mysql-connector.spec
45fecc86716bf91c7c17366de658b113967be31c
[packages/python-mysql-connector.git] / python-mysql-connector.spec
1 # TODO:
2 # - c extension build is done in install phase (http://bugs.mysql.com/bug.php?id=78621)
3 #
4 # Conditional build:
5 %bcond_with     tests           # build with tests (requires mysql server)
6 %bcond_without  python2         # build without python2
7 %bcond_without  python3         # build without python3
8
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
12 Name:           python-%{pname}
13 # check documentation to see which version is GA (we don't want devel releases)
14 # https://dev.mysql.com/downloads/connector/python/
15 Version:        8.0.18
16 Release:        2
17 License:        GPL v2
18 Group:          Libraries/Python
19 Source0:        http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-%{version}.zip
20 # Source0-md5:  e9c473418b52bcae9687dddb0b69369f
21 Patch0:         32bit.patch
22 Patch1:         tests.patch
23 URL:            http://dev.mysql.com/doc/connector-python/en/
24 BuildRequires:  mysql-devel
25 BuildRequires:  protobuf-devel
26 %if %{with python2}
27 BuildRequires:  python-devel
28 BuildRequires:  python-modules
29 BuildRequires:  python-setuptools
30 %endif
31 %if %{with python3}
32 BuildRequires:  python3-devel
33 BuildRequires:  python3-modules
34 BuildRequires:  python3-setuptools
35 %endif
36 BuildRequires:  rpm-pythonprov
37 BuildRequires:  rpmbuild(macros) >= 1.714
38 %if %{with tests}
39 BuildRequires:  mysql
40 %endif
41 Requires:       python-modules
42 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44 %description
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
48 driver.
49
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.
55
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
61
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
66 driver.
67
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.
73
74 %prep
75 %setup -q -n mysql-connector-python-%{version}
76 %patch0 -p1
77 %patch1 -p1
78
79 %build
80 export MYSQLXPB_PROTOC=%{_bindir}/protoc
81 export MYSQLXPB_PROTOBUF_INCLUDE_DIR=%{_includedir}
82 export MYSQLXPB_PROTOBUF_LIB_DIR=%{_libdir}
83
84 %if %{with python2}
85 %py_build
86 %if %{with tests}
87 export PYTHONPATH="$(pwd)/$(echo build-2/lib*)"
88 %{__python} unittests.py \
89         --verbosity 1 \
90         --keep --stats \
91         --skip-install \
92         --with-mysql=%{_prefix} \
93         --with-mysql-share=%{_datadir}/mysql
94 %endif
95 %endif
96
97 %if %{with python3}
98 %py3_build
99 %if %{with tests}
100 export PYTHONPATH="$(pwd)/$(echo build-3/lib*)"
101 %{__python3} unittests.py \
102         --verbosity 1 \
103         --keep --stats \
104         --skip-install \
105         --with-mysql=%{_prefix} \
106         --with-mysql-share=%{_datadir}/mysql
107 %endif
108 %endif
109
110 %install
111 rm -rf $RPM_BUILD_ROOT
112
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}
117
118 %if %{with python2}
119 %py_install \
120         --with-mysql-capi=%{_prefix}
121 %py_postclean
122 %endif
123
124 %if %{with python3}
125 %py3_install \
126         --with-mysql-capi=%{_prefix}
127 %endif
128
129 %clean
130 rm -rf $RPM_BUILD_ROOT
131
132 %if %{with python2}
133 %files
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
157 %endif
158 %endif
159
160 %if %{with python3}
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]
202 %endif
This page took 0.067226 seconds and 2 git commands to generate.