Commit graph

211 commits

Author SHA1 Message Date
Joerg Bruehe
0dab33608f Merge bug fix 42969 into main 5.5 branch. 2011-02-14 15:53:51 +01:00
Joerg Bruehe
fd21e07d6b Fix bug#42969 Please add a MANIFEST to each build
With this change, there will be new files "INFO_SRC"
and "INFO_BIN", which describe the source and the
binaries.
They will be contained in all packages:
- in "tar.gz" and derived packages, in "docs/",
- in RPMs, in "/usr/share/doc/packages/MySQL-server".

"INFO_SRC" is also part of a source tarball.
It gives the version as exact as possible, preferably
by calling "bzr version-info" on the source tree.
If that is not possible, it just contains the three
level version number.

"INFO_BIN" contains some info when and where the
binaries were built, the options given to the compiler,
and the flags controlling the included features.

The tests (test "mysql" in the main suite) are extended
to verify the existence of both "INFO_SRC" and "INFO_BIN",
as well as some of the expected contents.
2011-02-11 15:55:25 +01:00
Tor Didriksen
7323597122 Bug #58991 DEFAULT_CHARSET and DEFAULT_COLLATION does not work with CMake. 2011-01-04 11:23:45 +01:00
Tor Didriksen
f482437cdc Bug #58699 cannot build with gcc dbg on solaris 2010-12-21 13:00:26 +01:00
Alexander Nozdrin
a72186103f Manual merge from mysql-5.5. 2010-12-16 21:43:21 +03:00
Georgi Kodinov
c6b904abf8 merge mysql-5.5->mysql-5.5-bugteam 2010-12-16 18:44:17 +02:00
Jonathan Perkin
caebacaf93 bug#58955: Must -DBUILD_CONFIG=mysql_release require libaio on Linux
Allow users to build without aio if they really want to, by passing
-DIGNORE_AIO_CHECK to cmake.
2010-12-16 09:27:55 +00:00
Davi Arnaut
995ce0bb0a Bug#58871: Reorganize maintainer mode compiler flags to allow
option for specific compilers

Reorganize the maintainer mode cmake code to allow options
for specific compilers. For now, enable -Wcheck for ICC,
but do not turn warnings into errors.
2010-12-15 08:30:09 -02:00
Jonathan Perkin
5791d69d14 bug#58766: Server binary was compiled without fast-mutexes
Re-enable fast mutexes on Linux for release builds.
2010-12-07 11:40:38 +00:00
Jonathan Perkin
ddbcb7b5c4 Fix the .deb package prefix. 2010-11-25 00:21:28 +00:00
Vladislav Vaintroub
3afaada70d Post-fix for Bug#58158 on Solaris
Problem : The build might fail with 
make[2]: *** No rule to make target `../sql/z',
needed by `sql/mysqld_dtrace_all.o'.  Stop.
if one of plugins would depends on system libz 
library

Fix: Filter out non-static dependent libraries
when dtracing static libs
2010-11-25 00:20:36 +00:00
Tor Didriksen
229da09502 Bug #58372 cmake should not write temporary files in the source directory 2010-11-23 10:26:26 +01:00
Magnus Blåudd
b3f9f0c388 Merge 5.5-bug58158 into 5.5-bugteam 2010-11-24 11:49:10 +01:00
Magnus Blåudd
f9c3be71d1 WL#5665: Removal of the autotools-based build system
- Make the cmake files depend on VERSION, causing
   cmake rerun when VERSION changes
2010-11-24 11:37:59 +01:00
Sunanda Menon
f9d0242e2d merge 2010-11-22 11:35:48 +01:00
Davi Arnaut
5324d10fe7 WL#5665: Removal of the autotools-based build system
Remove some more leftovers from the initial removal:

o Update relevant mentions of configure.in throughout
the source code.

o Remove win/configure.js, which at this point just
duplicates logic already present in CMake based build
system.

o Remove support files which relied on the autotools
build system. In any case, MySQL is no longer officially
supported on SCO.

o Remove files which are no longer part of the build.
2010-11-20 20:56:09 -02:00
Davi Arnaut
f6deb00a56 WL#5665: Removal of the autotools-based build system
The autotools-based build system has been superseded and
is being removed in order to ease the maintenance burden on
developers tweaking and maintaining the build system.

In order to support tools that need to extract the server
version, a new file that (only) contains the server version,
called VERSION, is introduced. The file contents are human
and machine-readable. The format is:

MYSQL_VERSION_MAJOR=5
MYSQL_VERSION_MINOR=5
MYSQL_VERSION_PATCH=8
MYSQL_VERSION_EXTRA=-rc

The CMake based version extraction in cmake/mysql_version.cmake
is changed to extract the version from this file. The configure
to CMake wrapper is retained for backwards compatibility and to
support the BUILD/ scripts. Also, a new a makefile target
show-dist-name that prints the server version is introduced.
2010-11-20 12:47:50 -02:00
Vladislav Vaintroub
ece6212f89 avoid useless system check on Windows 2010-11-20 00:56:07 +01:00
Vladislav Vaintroub
bf6a7d09e9 Bug#58313: CMake stops with VS Express if -DBUILD_CONFIG=mysql_release.cmake
Bug : -DBUILD_CONFIG=mysql_release sets SIGNCODE parameter which requires 
singtool.exe (part of Windows SDK)  in order to be able to sign the binaries (
only if valid certificate is found). However singtool is not a part of the SDK shipped
with Visual Studio Express, so the build fails claiming missing singtools.exe

Fix: Do not  use SIGNCODE  wiith VC Express.

Also, fix broken nmake build (*.rc files could not be compiled due to ADD_DEFINITIONS
contaning C/C++ compiler specific flags)
2010-11-20 00:20:18 +01:00
Sunanda Menon
a1f14ebc31 Bug #58227 improve error message "aio is required on Linux" 2010-11-19 10:34:22 +01:00
Vladislav Vaintroub
be93a81172 Bug#58272: -DBUILD_CONFIG=mysql_release is broken with cmake 2.8.3
The reason  for the bug is that :
-  we use system checks in cmake/os/mysql_release.cmake 
-  we include cmake/os/mysql_release.cmake using CMAKE_USER_MAKE_RULES_OVERRIDE 
-  this  (having system checks based on TRY_COMPILE inside file pointed by 
   CMAKE_USER_MAKE_RULES_OVERRIDE  does not work with cmake 2.8.3,
   and  according to Kitware was never meant to work, it just happened to work by accident
   until 2.8.2 release (though, it seems not to work wiith 2.6.0 either)

Related CMake bug discussing the situation:
http://public.kitware.com/Bug/view.php?id=11469  

The fix is to use INCLUDE instead of CMAKE_USER_MAKE_RULES_OVERRIDE as suggested
by Kitware. The downside is that compile flags are not in cache, but this is  pure cosmetics.
The functionality is the same,  flags are used for compiling are correct using INCLUDE.
2010-11-17 22:06:24 +01:00
Magnus Blåudd
fb140a87d3 Bug#58158 LINK_LIBRARIES for MYSQL_ADD_PLUGIN is not added to libmysqld
- Add ARG_LINK_LIBRARIES to MYSQLD_STATIC_PLUGIN_LIBS in
    MYSQL_ADD_PLUGIN so that any libraries listed by the plugin is
    added to libmysqld
  - remove the variables NDB_CLIENT_LIBS and NDB_CLUSTER_INCLUDES
    from libmysqld/CMakeLists.txt since those are just old remnants
2010-11-16 10:05:54 +01:00
Vladislav Vaintroub
a6b4be2522 add missing COMPONENT to all CMake INSTALL commands 2010-11-13 23:16:52 +01:00
Vladislav Vaintroub
9c70014e65 Bug#58074: ADD_VERSION_INFO cmake/mysql_version.cmake fails if LINK_FLAGS are modified
Backport version info handling  (Windows-specific) from next-mr. 
Instead of adding ".res" object as linker flag, add  resource file (.rc) file to the source list.
This is more obvious and less error prone method.
2010-11-12 13:42:50 +01:00
Vladislav Vaintroub
07e713ff2f Bug #52275 CMake configure wrapper does not handle
--with-comment correctly
      
Properly convert --with-comment
do not uppercase it, quote as it might contain spaces.
2010-11-12 02:33:19 +01:00
Vladislav Vaintroub
545d6ff756 Fix typo : SVR5=>SVR4 2010-11-10 20:10:04 +01:00
Joerg Bruehe
e032ebd360 Fix cmake's version string handling (change proposed by Jonathan Perkin).
Before this, a text suffix (like "-rc") after the numeric version was needed.
2010-11-02 19:52:56 +01:00
Davi Arnaut
c185220472 GCC's link option only take a single hyphen. 2010-10-20 19:25:28 -02:00
Jonathan Perkin
a1a9d8278f Fix typo, allow SVR4 packages to be built again. 2010-10-14 16:57:16 +01:00
Davi Arnaut
e2599d9f75 Use a guard macro to prevent the inclusion of system headers
when checking the ABI with the C Preprocessor. Also, add the
new hearders to the cmake based ABI check.
2010-10-13 12:11:29 -03:00
Vladislav Vaintroub
c0557845a1 Do not accept invalid INSTALL_LAYOUT parameter 2010-10-11 19:44:35 +02:00
Davi Arnaut
243003f12d Bug#42733: Type-punning warnings when compiling MySQL -- strict aliasing violations.
Due to the extent of aliasing violations in the MySQL source
code, at this time it is safer to disable strict aliasing related
optimizations in release builds.

As of this patch, only GCC enables strict aliasing by default.
Hence, use the -fno-strict-aliasing option to disable the
aliasing rules.
2010-10-08 10:30:58 -03:00
Vladislav Vaintroub
c6de6320ba Fix compile error on Windows after WL#1054 push.
The error was introduced by typo in variable name (errormsg instead of correct
errmsg)

- Also, precache  HAVE_PEERCRED to OFF in cmake\os\WindowsCache.cmake
(to avoid useless system check).
- Also, add missing check for errors from FormatMessage().

- Also, remove annoying CMake debug printout of MALLOC_LIB if this is not set.
2010-10-04 21:25:53 +02:00
Vladislav Vaintroub
bc684baba2 Rename CMAKE_PARSE_ARGUMENTS macro to avoid name collision
with CMake 2.8.3 builtin macro
2010-09-29 11:42:35 +02:00
Mats Kindahl
788d3c4518 Bug #55966: "plugin" tests fail in 5.5
On Solaris with version 3.4.6, the ha_example.so shared library is built
with DTrace and the server is built without DTrace support. This occurs
because dtrace.cmake disables DTrace support for 3.4.6, but still set
HAVE_DTRACE, which causes probes_mysql.h to include probes_mysql_dtrace.h
instead of probes_mysql_nodtrace.h.

This patch fixes this by not setting HAVE_DTRACE on Solaris for GCC 3.4.6.
2010-09-06 14:45:12 +02:00
Sergey Vojtovich
7ceb92ff43 BUG#52821 - plugin_ftparser.h and plugin_audit.h are
not tested by ABI check

plugin_audit.h and plugin_ftparser.h are now subject
for ABI check. plugin.h is now tested implicitly.

Also fixed broken ABI check cmake rules.
2010-08-27 10:45:35 +04:00
Davi Arnaut
c562aece2e Bug#34043: Server loops excessively in _checkchunk() when safemalloc is enabled
Post-merge fix: remove --with-debug=full, it was only used for safemalloc.
2010-08-06 09:59:38 -03:00
Vladislav Vaintroub
ff1ee26107 Build cleanups
- Simplify sql-bench installation, 
do not try to resolve names : this leads to probem
if builddir is symlink located on different filesystem.
(reported by alik)

- Make WITHOUT_XXX (disabling plugin) work for DEFAULT
plugins. Prior to the patch is behaved just like 
MANDATORY.

- LINK_LIBRARIES in MYSQL_ADD_PLUGIN had no effect for
statically linked plugins.

- Fix constant rebuild of initdb target on Windows.
2010-08-05 18:38:24 +02:00
Alexander Nozdrin
dfc63866eb Auto-merge from mysql-trunk-merge. 2010-07-29 16:32:11 +04:00
Vladislav Vaintroub
99a26e0f02 Cleanup after bild team push.
* Fixed obvious errors (HAVE_BROKEN_PREAD is not true for on any
of systems we use, definitely not on HPUX)

* Remove other junk flags for OSX and HPUX

* Avoid checking type sizes in universal builds on OSX, again 
(CMake2.8.0 fails is different architectures return different results)

* Do not compile template instantiation stuff unless 
EXPLICIT_TEMPLATE_INSTANTIATION is used.

* Some cleanup (make gen_lex_hash simpler, avoid dependencies)

* Exclude some unused files from compilation (strtol.c etc)
2010-07-25 19:30:18 +02:00
Alexander Nozdrin
d42d9378c4 Auto-merge from mysql-trunk. 2010-07-23 17:06:26 +04:00
Davi Arnaut
3ff34a4a32 Bug#52514: mysql 5.1 do_abi_check does not compile w/ gcc4.5
due to GCC preprocessor change
      
Addendum for trunk: add -DMYSQL_ABI_CHECK to the cmake ABI check.
2010-07-20 16:53:39 -03:00
Jonathan Perkin
83aebca534 Revert the ndb removal for now. 2010-07-20 10:35:55 +01:00
Jonathan Perkin
40856e830d bug#55250: 5.5.5-m3 incorrectly compiled with exceptions on Solaris/x86
Put '-features=no%except' back into Solaris/x86 CXXFLAGS.
2010-07-19 15:23:02 +01:00
Alexander Nozdrin
9503a8e23f Manual merge from mysql-trunk.
Conflicts:
  - scripts/CMakeLists.txt
2010-07-19 18:00:29 +04:00
Davi Arnaut
649390ac81 Merge of mysql-trunk-bugfixing into mysql-trunk-merge. 2010-07-15 10:47:50 -03:00
Davi Arnaut
7078abee9e Remove leftovers from old versions of the code. 2010-07-13 14:34:32 -03:00
Davi Arnaut
985017674f Add the cmake option MYSQL_MAINTAINER_MODE which is equivalent
to the autotools option mysql-maintainer-mode. This option is
intended to set a few flags that should be activated by anyone
doing MySQL development, regardless of the build type. Also, the
flags are only set by the very end of the platform checks as
to not disturb fragile checks.
2010-07-12 13:39:00 -03:00
Jonathan Perkin
60a9dfbb3c Spell CMAKE_COMPILER_IS_GNUCC correctly. 2010-07-06 11:28:11 +01:00
Jonathan Perkin
5e01a8f8bd I'm pretty sure 'CXX_FLAGS' is a typo for 'CMAKE_CXX_FLAGS', and
this is the reason why -fno-implicit-templates is removed from the
entire build when sourcing this file, rather than just limited to
yassl sources.
2010-07-05 19:54:07 +01:00