1 |
jpp |
1.1 |
# For deep debugging we need to build binaries with extra debug info |
2 |
|
|
%bcond_with debug |
3 |
|
|
|
4 |
|
|
Name: mariadb-connector-c |
5 |
|
|
Version: 3.1.13 |
6 |
|
|
Release: 1%{?with_debug:.debug}%{?dist} |
7 |
|
|
Summary: The MariaDB Native Client library (C driver) |
8 |
|
|
License: LGPLv2+ |
9 |
jpp |
1.3 |
Source: https://downloads.mariadb.org/interstitial/connector-c-%{version}/mariadb-connector-c-%{version}-src.tar.gz |
10 |
jpp |
1.1 |
Source2: my.cnf |
11 |
|
|
Source3: client.cnf |
12 |
|
|
Url: http://mariadb.org/ |
13 |
|
|
# More information: https://mariadb.com/kb/en/mariadb/building-connectorc-from-source/ |
14 |
|
|
|
15 |
|
|
Requires: %{_sysconfdir}/my.cnf |
16 |
jpp |
1.3 |
BuildRequires: zlib-devel cmake openssl-devel gcc-c++ |
17 |
jpp |
1.1 |
# Remote-IO plugin |
18 |
|
|
BuildRequires: libcurl-devel |
19 |
|
|
# auth_gssapi_client plugin |
20 |
|
|
BuildRequires: krb5-devel |
21 |
|
|
|
22 |
jpp |
1.3 |
Requires: mariadb >= 3:10.3.27 |
23 |
|
|
Requires: %{name}-config = %{version}-%{release} |
24 |
|
|
|
25 |
jpp |
1.1 |
%description |
26 |
|
|
The MariaDB Native Client library (C driver) is used to connect applications |
27 |
|
|
developed in C/C++ to MariaDB and MySQL databases. |
28 |
|
|
|
29 |
|
|
|
30 |
|
|
|
31 |
|
|
%package devel |
32 |
|
|
Summary: Development files for mariadb-connector-c |
33 |
|
|
Requires: %{name} = %{version}-%{release} |
34 |
|
|
Requires: openssl-devel zlib-devel |
35 |
|
|
BuildRequires: multilib-rpm-config |
36 |
jpp |
1.3 |
Conflicts: mysql-devel |
37 |
|
|
|
38 |
|
|
Requires: mariadb-devel >= 3:10.3.27 |
39 |
jpp |
1.1 |
|
40 |
|
|
%description devel |
41 |
|
|
Development files for mariadb-connector-c. |
42 |
|
|
Contains everything needed to build against libmariadb.so >=3 client library. |
43 |
|
|
|
44 |
|
|
|
45 |
|
|
|
46 |
|
|
%package config |
47 |
|
|
Summary: Configuration files for packages that use /etc/my.cnf as a configuration file |
48 |
|
|
BuildArch: noarch |
49 |
|
|
Obsoletes: mariadb-config <= 3:10.3.8-4 |
50 |
|
|
|
51 |
|
|
%description config |
52 |
|
|
This package delivers /etc/my.cnf that includes other configuration files |
53 |
|
|
from the /etc/my.cnf.d directory and ships this directory as well. |
54 |
|
|
Other packages should only put their files into /etc/my.cnf.d directory |
55 |
|
|
and require this package, so the /etc/my.cnf file is present. |
56 |
|
|
|
57 |
|
|
|
58 |
|
|
|
59 |
|
|
%prep |
60 |
|
|
%setup -q -n %{name}-%{version}-src |
61 |
|
|
|
62 |
|
|
# Remove unsused parts |
63 |
jpp |
1.3 |
rm -r win zlib win-iconv |
64 |
jpp |
1.1 |
|
65 |
|
|
|
66 |
|
|
|
67 |
|
|
%build |
68 |
jpp |
1.3 |
%{set_build_flags} |
69 |
|
|
|
70 |
|
|
# Override all optimization flags when making a debug build |
71 |
|
|
%{?with_debug: CFLAGS="$CFLAGS -O0 -g"} |
72 |
|
|
CXXFLAGS="$CFLAGS" |
73 |
|
|
export CFLAGS CXXFLAGS |
74 |
|
|
|
75 |
jpp |
1.1 |
# https://jira.mariadb.org/browse/MDEV-13836: |
76 |
|
|
# The server has (used to have for ages) some magic around the port number. |
77 |
|
|
# If it's 0, the default port value will use getservbyname("mysql", "tcp"), that is, whatever is written in /etc/services. |
78 |
|
|
# If it's a positive number, say, 3306, it will be 3306, no matter what /etc/services say. |
79 |
|
|
# I don't know if that behavior makes much sense, /etc/services wasn't supposed to be a system configuration file. |
80 |
|
|
|
81 |
jpp |
1.3 |
# The INSTALL_xxx macros have to be specified relative to CMAKE_INSTALL_PREFIX |
82 |
jpp |
1.1 |
# so we can't use %%{_datadir} and so forth here. |
83 |
|
|
|
84 |
|
|
%cmake . \ |
85 |
|
|
-DCMAKE_BUILD_TYPE="%{?with_debug:Debug}%{!?with_debug:RelWithDebInfo}" \ |
86 |
|
|
-DCMAKE_SYSTEM_PROCESSOR="%{_arch}" \ |
87 |
|
|
\ |
88 |
|
|
-DMARIADB_UNIX_ADDR=%{_sharedstatedir}/mysql/mysql.sock \ |
89 |
|
|
-DMARIADB_PORT=3306 \ |
90 |
|
|
\ |
91 |
jpp |
1.3 |
-DWITH_EXTERNAL_ZLIB=YES \ |
92 |
jpp |
1.1 |
-DWITH_SSL=OPENSSL \ |
93 |
|
|
-DWITH_MYSQLCOMPAT=ON \ |
94 |
|
|
-DPLUGIN_CLIENT_ED25519=DYNAMIC \ |
95 |
|
|
\ |
96 |
|
|
-DINSTALL_LAYOUT=RPM \ |
97 |
jpp |
1.3 |
-DCMAKE_INSTALL_PREFIX="%{_prefix}" \ |
98 |
jpp |
1.1 |
-DINSTALL_BINDIR="bin" \ |
99 |
|
|
-DINSTALL_LIBDIR="%{_lib}" \ |
100 |
|
|
-DINSTALL_INCLUDEDIR="include/mysql" \ |
101 |
|
|
-DINSTALL_PLUGINDIR="%{_lib}/mariadb/plugin" \ |
102 |
|
|
-DINSTALL_PCDIR="%{_lib}/pkgconfig" \ |
103 |
|
|
\ |
104 |
jpp |
1.3 |
-DWITH_UNITTEST=ON |
105 |
|
|
|
106 |
jpp |
1.1 |
|
107 |
|
|
|
108 |
jpp |
1.3 |
#cmake -LAH |
109 |
jpp |
1.1 |
|
110 |
jpp |
1.3 |
%make_build |
111 |
jpp |
1.1 |
|
112 |
|
|
|
113 |
|
|
|
114 |
|
|
%install |
115 |
jpp |
1.3 |
%make_install |
116 |
jpp |
1.1 |
|
117 |
|
|
%multilib_fix_c_header --file %{_includedir}/mysql/mariadb_version.h |
118 |
|
|
|
119 |
|
|
# Remove static linked libraries and symlinks to them |
120 |
|
|
rm %{buildroot}%{_libdir}/lib*.a |
121 |
|
|
|
122 |
|
|
# Add a compatibility symlinks |
123 |
|
|
ln -s mariadb_config %{buildroot}%{_bindir}/mysql_config |
124 |
|
|
ln -s mariadb_version.h %{buildroot}%{_includedir}/mysql/mysql_version.h |
125 |
|
|
|
126 |
|
|
# Install config files |
127 |
|
|
install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/my.cnf |
128 |
|
|
install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/my.cnf.d/client.cnf |
129 |
|
|
|
130 |
|
|
|
131 |
|
|
|
132 |
|
|
%check |
133 |
|
|
# Check the generated configuration on the actual machine |
134 |
|
|
%{buildroot}%{_bindir}/mariadb_config |
135 |
|
|
|
136 |
|
|
# Run the unit tests |
137 |
|
|
# - don't run mytap tests |
138 |
|
|
# - ignore the testsuite result for now. Enable tests now, fix them later. |
139 |
|
|
# Note: there must be a database called 'test' created for the testcases to be run |
140 |
|
|
pushd unittest/libmariadb/ |
141 |
jpp |
1.3 |
ctest || : |
142 |
jpp |
1.1 |
popd |
143 |
jpp |
1.3 |
|
144 |
jpp |
1.1 |
|
145 |
|
|
|
146 |
|
|
%files |
147 |
|
|
%{_libdir}/libmariadb.so.3 |
148 |
|
|
|
149 |
|
|
%dir %{_libdir}/mariadb |
150 |
|
|
%dir %{_libdir}/mariadb/plugin |
151 |
|
|
%{_libdir}/mariadb/plugin/* |
152 |
|
|
|
153 |
|
|
%doc README |
154 |
|
|
%license COPYING.LIB |
155 |
|
|
|
156 |
|
|
|
157 |
|
|
|
158 |
|
|
%files devel |
159 |
|
|
# Binary which provides compiler info for software compiling against this library |
160 |
|
|
%{_bindir}/mariadb_config |
161 |
|
|
%{_bindir}/mysql_config |
162 |
|
|
|
163 |
|
|
# Symlinks to the versioned library |
164 |
|
|
%{_libdir}/libmariadb.so |
165 |
|
|
%{_libdir}/libmysqlclient.so |
166 |
|
|
%{_libdir}/libmysqlclient_r.so |
167 |
|
|
|
168 |
|
|
# Pkgconfig |
169 |
|
|
%{_libdir}/pkgconfig/libmariadb.pc |
170 |
|
|
|
171 |
|
|
# Header files |
172 |
|
|
%dir %{_includedir}/mysql |
173 |
|
|
%{_includedir}/mysql/* |
174 |
|
|
|
175 |
jpp |
1.3 |
%license COPYING.LIB |
176 |
jpp |
1.1 |
|
177 |
|
|
|
178 |
|
|
%files config |
179 |
|
|
%dir %{_sysconfdir}/my.cnf.d |
180 |
|
|
%config(noreplace) %{_sysconfdir}/my.cnf |
181 |
|
|
%config(noreplace) %{_sysconfdir}/my.cnf.d/client.cnf |
182 |
|
|
|
183 |
|
|
|
184 |
|
|
|
185 |
|
|
%changelog |
186 |
|
|
* Fri May 14 2021 Michal Schorm <mschorm@redhat.com> - 3.1.13-1 |
187 |
|
|
- Rebase to 3.1.13 |
188 |
|
|
|
189 |
|
|
* Wed Feb 24 2021 Michal Schorm <mschorm@redhat.com> - 3.1.12-1 |
190 |
|
|
- Rebase to 3.1.12 |
191 |
|
|
|
192 |
jpp |
1.3 |
* Thu Dec 03 2020 Michal Schorm <mschorm@redhat.com> - 3.1.11-2 |
193 |
|
|
- Require specific minimal version of the 'mariadb' package, if it is installed |
194 |
jpp |
1.1 |
|
195 |
jpp |
1.3 |
* Tue Nov 10 2020 Michal Schorm <mschorm@redhat.com> - 3.1.11-1 |
196 |
jpp |
1.1 |
- Rebase to 3.1.11 |
197 |
|
|
|
198 |
|
|
* Wed Jun 24 2020 Lukas Javorsky <ljavorsk@redhat.com> - 3.1.9-1 |
199 |
|
|
- Rebase to 3.1.9 |
200 |
jpp |
1.3 |
- Overlinking issues fixed by upstream in 3.1.3 release |
201 |
|
|
- Add explicit confict between mariadb-connector-c-devel and mysql-devel packages |
202 |
jpp |
1.1 |
|
203 |
|
|
* Fri Jul 12 2019 Michal Schorm <mschorm@redhat.com> - 3.1.2-1 |
204 |
jpp |
1.3 |
- Rebase to 3.1.2 |
205 |
|
|
- Introducing ED25519 plugin |
206 |
|
|
- Plugindir issues (from 3.0.9 release) fixed by upstream |
207 |
|
|
Resolves: #1691176 |
208 |
jpp |
1.1 |
|
209 |
|
|
* Wed May 15 2019 Michal Schorm <mschorm@redhat.com> - 3.0.10-1 |
210 |
|
|
- Rebase to 3.0.10 |
211 |
jpp |
1.3 |
- Use macro for tarball name |
212 |
|
|
- Use macro to set build flags |
213 |
|
|
- Use macros for make commands |
214 |
|
|
- Remove the scriptlets non relevant for RHEL-8 |
215 |
|
|
- Add info for the testsuite execution |
216 |
|
|
- Remove glob from library version |
217 |
|
|
- Remove info about the upstream issues |
218 |
jpp |
1.1 |
|
219 |
jpp |
1.3 |
* Fri Mar 29 2019 Michal Schorm <mschorm@redhat.com> - 3.0.8-2 |
220 |
jpp |
1.1 |
- Add "zlib-devel" requirement in "-devel" subpackage. MariaDB requires |
221 |
|
|
linking with "-lz", which will fail without the zlib library |
222 |
jpp |
1.3 |
- Resolves: #1710471 |
223 |
jpp |
1.1 |
|
224 |
|
|
* Wed Jan 02 2019 Michal Schorm <mschorm@redhat.com> - 3.0.8-1 |
225 |
|
|
- Rebase to 3.0.8 |
226 |
|
|
|
227 |
jpp |
1.3 |
* Mon Dec 10 2018 Michal Schorm <mschorm@redhat.com> - 3.0.7-1 |
228 |
jpp |
1.1 |
- Rebase to 3.0.7 |
229 |
|
|
|
230 |
|
|
* Tue Sep 04 2018 Michal Schorm <mschorm@redhat.com> - 3.0.6-2 |
231 |
|
|
- Fix parallel installability of x86_64 and i686 devel package |
232 |
jpp |
1.3 |
- Resolves: #1637031 |
233 |
jpp |
1.1 |
|
234 |
|
|
* Fri Aug 03 2018 Michal Schorm <mschorm@redhat.com> - 3.0.6-1 |
235 |
|
|
- Rebase to 3.0.6 |
236 |
|
|
|
237 |
jpp |
1.3 |
* Tue Jul 17 2018 Honza Horak <hhorak@redhat.com> - 3.0.5-2 |
238 |
jpp |
1.1 |
- Add -config sub-package that delivers system-wide /etc/my.cnf and |
239 |
|
|
/etc/my.cnf.d directory, that other packages should use |
240 |
|
|
This package also obsoletes mariadb-config |
241 |
|
|
|
242 |
|
|
* Fri Jun 08 2018 Michal Schorm <mschorm@redhat.com> - 3.0.5-1 |
243 |
|
|
- Rebase to 3.0.5 |
244 |
|
|
|
245 |
|
|
* Thu Apr 26 2018 Michal Schorm <mschorm@redhat.com> - 3.0.4-1 |
246 |
|
|
- Rebase to 3.0.4 |
247 |
|
|
|
248 |
|
|
* Mon Apr 23 2018 Michal Schorm <mschorm@redhat.com> - 3.0.3-4 |
249 |
|
|
- Further fix of the '--plugindir' output from the config binary |
250 |
|
|
Realted: #1569159 |
251 |
|
|
|
252 |
|
|
* Wed Mar 21 2018 Richard W.M. Jones <rjones@redhat.com> - 3.0.3-3 |
253 |
|
|
- Fix plugin install directory (INSTALL_PLUGINDIR not PLUGIN_INSTALL_DIR). |
254 |
|
|
|
255 |
|
|
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.3-2 |
256 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
257 |
|
|
|
258 |
|
|
* Fri Jan 19 2018 Michal Schorm <mschorm@redhat.com> - 3.0.3-1 |
259 |
|
|
- Rebase to 3.0.3 |
260 |
|
|
|
261 |
|
|
* Mon Nov 27 2017 Honza Horak <hhorak@redhat.com> - 3.0.2-21 |
262 |
|
|
- Remove unneeded dependency on xmlto |
263 |
|
|
|
264 |
|
|
* Tue Nov 14 2017 Pavel Raiskup <praiskup@redhat.com> - 3.0.2-19 |
265 |
|
|
- drop misleading provides |
266 |
|
|
|
267 |
|
|
* Wed Nov 08 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-19 |
268 |
|
|
- Move the scriptlet to the correct package |
269 |
|
|
|
270 |
|
|
* Thu Nov 02 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-18 |
271 |
|
|
- Fix typo in require |
272 |
|
|
|
273 |
|
|
* Wed Nov 01 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-17 |
274 |
|
|
- Use correct require for OpenSSL |
275 |
|
|
|
276 |
|
|
* Wed Nov 01 2017 Merlin Mathesius <mmathesi@redhat.com> - 3.0.2-16 |
277 |
|
|
- Correct typo in spec file conditional |
278 |
|
|
|
279 |
|
|
* Tue Oct 31 2017 Merlin Mathesius <mmathesi@redhat.com> - 3.0.2-15 |
280 |
|
|
- Cleanup spec file conditionals |
281 |
|
|
|
282 |
|
|
* Tue Oct 31 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-14 |
283 |
|
|
- Remove Requires for openssl. Managed by RPM. |
284 |
|
|
|
285 |
|
|
* Mon Oct 30 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-13 |
286 |
|
|
- Update scriplet dealing with symlinks as Guidelines suggests |
287 |
|
|
Related: #1501933 |
288 |
|
|
|
289 |
|
|
* Thu Oct 26 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-12 |
290 |
|
|
- Move library directly to libdir, don't create any symlinks to directories |
291 |
|
|
- Update scritplets, so they only check for old symlinks to directories |
292 |
|
|
Related: #1501933 |
293 |
|
|
- Add 'Conflicts' with mariadb package on F<28 |
294 |
|
|
Related: #1506441 |
295 |
|
|
|
296 |
|
|
* Mon Oct 09 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-11 |
297 |
|
|
- Fix ldconfig path |
298 |
|
|
|
299 |
|
|
* Wed Oct 04 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-10 |
300 |
|
|
- Add scriptlets to handle errors in /usr/lib64/ created by older versions |
301 |
|
|
of mariadb and mariadb-connector-c pakages |
302 |
|
|
|
303 |
|
|
* Wed Sep 20 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-9 |
304 |
|
|
- Add symlinks so more packages will build succesfully |
305 |
|
|
- Change libdir from .../lib64/mariadb to mysql |
306 |
|
|
Related: #1497234 |
307 |
|
|
|
308 |
|
|
* Wed Sep 13 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-7 |
309 |
|
|
- Move header files to the same location, as they would be in mariadb-server |
310 |
|
|
- Add provides "libmysqlclient.so" |
311 |
|
|
|
312 |
|
|
* Tue Sep 05 2017 Honza Horak <hhorak@redhat.com> - 3.0.2-5 |
313 |
|
|
- Remove a symlink /usr/lib64/mysql that conflicts with mariadb-libs |
314 |
|
|
|
315 |
|
|
* Mon Aug 14 2017 Honza Horak <hhorak@redhat.com> - 3.0.2-4 |
316 |
|
|
- Add compatibility symlinks |
317 |
|
|
|
318 |
|
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-3 |
319 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild |
320 |
|
|
|
321 |
|
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-2 |
322 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
323 |
|
|
|
324 |
|
|
* Wed Jun 07 2017 Michal Schorm <mschorm@redhat.com> - 3.0.2-1 |
325 |
|
|
- Rebase to version 3.0.2 |
326 |
|
|
- Library libmariadb.so.3 introduced |
327 |
|
|
- Plugin Remote-IO enabled |
328 |
|
|
|
329 |
|
|
* Wed Jun 07 2017 Michal Schorm <mschorm@redhat.com> - 2.3.3-1 |
330 |
|
|
- Rebase to version 2.3.3 |
331 |
|
|
- Patch dropped, solved by upstream; https://jira.mariadb.org/browse/CONC-231 |
332 |
|
|
|
333 |
|
|
* Tue Feb 07 2017 Michal Schorm <mschorm@redhat.com> - 2.3.2-2 |
334 |
|
|
- Fix based on output from RPMLint in previous version |
335 |
|
|
|
336 |
|
|
* Tue Jan 24 2017 Michal Schorm <mschorm@redhat.com> - 2.3.2-1 |
337 |
|
|
- Rebase to version 2.3.2, patch needed (fixed by upstream in later versions) |
338 |
|
|
- Plugin dir moved from /libdir/plugin to /libdir/mariadb/plugin |
339 |
|
|
|
340 |
|
|
* Thu Oct 27 2016 Michal Schorm <mschorm@redhat.com> - 2.3.1-3 |
341 |
|
|
- Fixed ownership of {_libdir}/mariadb (this dir must me owned by package) |
342 |
|
|
- Fixed ownership of {_sysconfigdir}/ld.so.conf.d (this dir must me owned by package) |
343 |
|
|
- Fixed redundnace on lines with {_sysconfigdir}/ld.so.conf.d |
344 |
|
|
- Fixed ownership of {_bindir} (only one program is owned, so let's be accurate) |
345 |
|
|
- Some comments added, for me and future maintainers |
346 |
|
|
|
347 |
|
|
* Mon Oct 17 2016 Michal Schorm <mschorm@redhat.com> - 2.3.1-2 |
348 |
|
|
- Fixed ownership of {_libdir}/mariadb directory and cosmetic specfile changes |
349 |
|
|
|
350 |
|
|
* Tue Sep 13 2016 Michal Schorm <mschorm@redhat.com> - 2.3.1-1 |
351 |
|
|
- Rebase to version 2.3.1 |
352 |
|
|
|
353 |
|
|
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-2 |
354 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
355 |
|
|
|
356 |
|
|
* Thu Jul 23 2015 Matej Mužila <mmuzila@redhat.com> - 2.1.0-1 |
357 |
|
|
- Rebase to version 2.1.0 |
358 |
|
|
|
359 |
|
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.0-3 |
360 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
361 |
|
|
|
362 |
|
|
* Wed Sep 24 2014 Matej Mužila <mmuzila@redhat.com> - 2.0.0-2 |
363 |
|
|
- Fixed html IDs in documentation |
364 |
|
|
|
365 |
|
|
* Tue Aug 26 2014 Matej Mužila <mmuzila@redhat.com> - 2.0.0-2 |
366 |
|
|
- Initial version for 2.0.0 |