This commit is contained in:
Xavier Bachelot 2017-11-03 14:20:46 +01:00
parent 5a581f1f46
commit 42e0a139cc
4 changed files with 13 additions and 106 deletions

1
.gitignore vendored
View File

@ -7,3 +7,4 @@ sysbench-0.4.12.tar.gz
/sysbench-1.0.7.tar.gz
/sysbench-1.0.8.tar.gz
/sysbench-1.0.9.tar.gz
/sysbench-1.0.10.tar.gz

View File

@ -1 +1 @@
SHA512 (sysbench-1.0.9.tar.gz) = 498b267585e8186f9db4a0f6c6147d1051dab049dae71ddee27f2fedc50ce5ccd75a9ea91819f1fcd15a4d680c4111f5014c60e5a0a69b0a6f217b1a04e61538
SHA512 (sysbench-1.0.10.tar.gz) = 3e2c9597538c9b71a50a0fb0e198f8852206fc609b0968253ee6b12f652fd56f1b2c6e7a4c93161b725e5c56193f7ce9d5cf58c4882839a4c1055c539861d16d

View File

@ -1,98 +0,0 @@
commit fe60ff379ddcd0a8002701ab9b0da37be8ef3bfc
Author: Alexey Kopytov <akopytov@gmail.com>
Date: Sun Sep 17 22:07:00 2017 +0300
Fix #172: sysbench 1.0.9 doesn't build with mariadb 10.2.8
diff --git a/configure.ac b/configure.ac
index 5115fab..e913fc7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -215,16 +215,7 @@ ACX_PTHREAD
AC_CHECK_LIB(m, sqrt)
-AS_IF([test "x$with_mysql" != xno], [
- AC_CHECK_MYSQLR([$with_mysql])
- AC_DEFINE([USE_MYSQL], 1,
- [Define to 1 if you want to compile with MySQL support])
- USE_MYSQL=1
- AC_SUBST([MYSQL_LIBS])
- AC_SUBST([MYSQL_CFLAGS])
-])
-AM_CONDITIONAL([USE_MYSQL], test x$with_mysql != xno)
-AC_SUBST([USE_MYSQL])
+SB_CHECK_MYSQL
AS_IF([test "x$with_drizzle" != xno], [
AC_LIB_HAVE_LINKFLAGS(drizzle,,
diff --git a/m4/ac_check_mysqlr.m4 b/m4/sb_check_mysql.m4
similarity index 89%
rename from m4/ac_check_mysqlr.m4
rename to m4/sb_check_mysql.m4
index fbf819a..eac6e7a 100644
--- a/m4/ac_check_mysqlr.m4
+++ b/m4/sb_check_mysql.m4
@@ -1,16 +1,19 @@
dnl ---------------------------------------------------------------------------
-dnl Macro: AC_CHECK_MYSQLR
+dnl Macro: SB_CHECK_MYSQL
dnl First check if the MySQL root directory is specified with --with-mysql.
dnl Otherwise check for custom MySQL paths in --with-mysql-includes and
dnl --with-mysql-libs. If some paths are not specified explicitly, try to get
dnl them from mysql_config.
dnl ---------------------------------------------------------------------------
-AC_DEFUN([AC_CHECK_MYSQLR],[
+AC_DEFUN([SB_CHECK_MYSQL],[
+
+AS_IF([test "x$with_mysql" != xno], [
+
# Check for custom MySQL root directory
-if test [ x$1 != xyes -a x$1 != xno ]
+if test [ "x$with_mysql" != xyes -a "x$with_mysql" != xno ]
then
- ac_cv_mysql_root=`echo $1 | sed -e 's+/$++'`
+ ac_cv_mysql_root=`echo "$with_mysql" | sed -e 's+/$++'`
if test [ -d "$ac_cv_mysql_root/include" -a \
-d "$ac_cv_mysql_root/libmysql_r" ]
then
@@ -104,4 +107,15 @@ ERROR: cannot find MySQL libraries. If you want to compile with MySQL support,
fi
fi
fi
+
+AC_DEFINE([USE_MYSQL], 1,
+ [Define to 1 if you want to compile with MySQL support])
+
+USE_MYSQL=1
+AC_SUBST([MYSQL_LIBS])
+AC_SUBST([MYSQL_CFLAGS])
+])
+
+AM_CONDITIONAL([USE_MYSQL], test "x$with_mysql" != xno)
+AC_SUBST([USE_MYSQL])
])
diff --git a/src/drivers/mysql/drv_mysql.c b/src/drivers/mysql/drv_mysql.c
index bec7ff9..f2f0afc 100644
--- a/src/drivers/mysql/drv_mysql.c
+++ b/src/drivers/mysql/drv_mysql.c
@@ -35,7 +35,6 @@
#include <stdio.h>
#include <mysql.h>
-#include <mysql_version.h>
#include <mysqld_error.h>
#include <errmsg.h>
@@ -50,8 +49,8 @@
#define SAFESTR(s) ((s != NULL) ? (s) : "(null)")
-#if !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 80001 && \
- MYSQL_VERSION_ID != 80002 /* see https://bugs.mysql.com/?id=87337 */
+#if !defined(MARIADB_BASE_VERSION) && !defined(MARIADB_VERSION_ID) && \
+ MYSQL_VERSION_ID >= 80001 && MYSQL_VERSION_ID != 80002 /* see https://bugs.mysql.com/?id=87337 */
typedef bool my_bool;
#endif

View File

@ -1,14 +1,11 @@
Summary: System performance benchmark
Name: sysbench
Version: 1.0.9
Release: 2%{?dist}
Version: 1.0.10
Release: 1%{?dist}
License: GPLv2+
Source0: https://github.com/akopytov/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
URL: https://github.com/akopytov/sysbench/
# https://github.com/akopytov/sysbench/issues/172
Patch0: sysbench-1.0.9-Fix_build_with_mariadb_10_2_8.patch
BuildRequires: automake
BuildRequires: ck-devel
BuildRequires: docbook-style-xsl
@ -18,9 +15,13 @@ BuildRequires: libxslt
BuildRequires: luajit-devel
%if 0%{?el6}
BuildRequires: mysql-devel
%else
%endif
%if 0%{?el7} || 0%{?fc25}%{?fc26}%{?fc27}
BuildRequires: mariadb-devel
%endif
%if 0%{?fedora} > 27
BuildRequires: mariadb-connector-c-devel
%endif
BuildRequires: postgresql-devel
BuildRequires: vim-common
# Tests
@ -58,7 +59,6 @@ benchmarks and third-party plug-in modules.
%prep
%setup -q
%patch0 -p1 -b .mariadb1028
rm -r third_party/luajit/luajit/
rm -r third_party/concurrency_kit/ck/
%{!?el6:rm -r third_party/cram/}
@ -97,6 +97,10 @@ cd tests
%changelog
* Thu Nov 02 2017 Xavier Bachelot <xavier@bachelot.org> 1.0.10-1
- Update to 1.0.10 (RHBZ#1508249).
- Build against mariadb-connector-c for Fedora 27+ (RHBZ#1493697).
* Mon Sep 18 2017 Xavier Bachelot <xavier@bachelot.org> 1.0.9-2
- Add patch to fix build against mariadb 10.2.8.