1
/*****************************************************************************
3
Copyright (c) 1994, 2009, Innobase Oy. All Rights Reserved.
4
Copyright (c) 2008, Google Inc.
6
Portions of this file contain modifications contributed and copyrighted by
7
Google, Inc. Those modifications are gratefully acknowledged and are described
8
briefly in the InnoDB documentation. The contributions by Google are
9
incorporated with their permission, and subject to the conditions contained in
10
the file COPYING.Google.
12
This program is free software; you can redistribute it and/or modify it under
13
the terms of the GNU General Public License as published by the Free Software
14
Foundation; version 2 of the License.
16
This program is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
20
You should have received a copy of the GNU General Public License along with
21
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
22
Place, Suite 330, Boston, MA 02111-1307 USA
24
*****************************************************************************/
1
26
/***************************************************************************
2
27
Version control for database, common definitions, and include files
4
(c) 1994 - 2000 Innobase Oy
6
29
Created 1/20/1994 Heikki Tuuri
7
30
****************************************************************************/
16
39
#define INNODB_VERSION_MAJOR 1
17
40
#define INNODB_VERSION_MINOR 0
18
#define INNODB_VERSION_BUGFIX 2
41
#define INNODB_VERSION_BUGFIX 3
20
43
/* The following is the InnoDB version as shown in
21
44
SELECT plugin_version FROM information_schema.plugins;
99
122
# define UNIV_CAN_USE_X86_ASSEMBLER
125
/* For InnoDB rw_locks to work with atomics we need the thread_id
126
to be no more than machine word wide. The following enables using
127
atomics for InnoDB rw_locks where these conditions are met. */
128
#ifdef HAVE_GCC_ATOMIC_BUILTINS
129
/* if HAVE_ATOMIC_PTHREAD_T is defined at this point that means that
130
the code from plug.in has defined it and we do not need to include
131
ut0auxconf.h which would either define HAVE_ATOMIC_PTHREAD_T or will
133
# ifndef HAVE_ATOMIC_PTHREAD_T
134
# include "ut0auxconf.h"
135
# endif /* HAVE_ATOMIC_PTHREAD_T */
136
/* now HAVE_ATOMIC_PTHREAD_T is eventually defined either by plug.in or
137
from Makefile.in->ut0auxconf.h */
138
# ifdef HAVE_ATOMIC_PTHREAD_T
139
# define INNODB_RW_LOCKS_USE_ATOMICS
140
# endif /* HAVE_ATOMIC_PTHREAD_T */
141
#endif /* HAVE_GCC_ATOMIC_BUILTINS */
102
143
/* We only try to do explicit inlining of functions with gcc and
103
144
Microsoft Visual C++ */
139
180
Valgrind instrumentation */
140
181
#define UNIV_DEBUG_PRINT /* Enable the compilation of
141
182
some debug print functions */
183
#define UNIV_AHI_DEBUG /* Enable adaptive hash index
184
debugging without UNIV_DEBUG */
142
185
#define UNIV_BUF_DEBUG /* Enable buffer pool
143
186
debugging without UNIV_DEBUG */
144
187
#define UNIV_DEBUG /* Enable ut_ad() assertions