Commit graph

196 commits

Author SHA1 Message Date
Aditya A
c54271723c Bug #26275510 BUNDLED ZLIB DOESN'T INCLUDE FIXES FOR SOME VULNERABILITIES
Upgrading the zlib lib to 1.2.11
2018-07-09 17:25:49 +05:30
Tor Didriksen
f4ce18b0a6 Bug #25436469: BUILDS ARE NOT REPRODUCIBLE
Backport to 5.5

Current MySQL builds, even on Pushbuild, are not reproducible; they return
different results depending on which directory they are built from (and
Pushbuild uses several different directories). This is because absolute paths
leak into debug information, and even worse, __FILE__. The latter moves code
around enough that we've actually seen sysbench changes on the order of 4% in
some tests.

CMake seemingly insists on using absolute paths, but we can insert our own
layer between CMake and GCC to relativize all paths. Also give the right flags
to get debug information reproducible and turn off build stamping. This makes
the mysqld build 100% bit-for-bit reproducible between runs on my machine,
even when run from different directories.
2017-05-16 08:39:43 +02:00
Tor Didriksen
01ea63b3cb Bug#18374703 COMPILATION ERROR WITH -DENABLE_DEBUG_SYNC=0 AND -DWITH_DEBUG=ON
Post-push fix.
Problem cmake without explicit build type was broken on windows.
Fix: do not test for build type, always extend CMAKE_C[XX]_FLAGS_DEBUG
2017-01-17 16:48:24 +01:00
Tor Didriksen
883211c0b0 Bug#18374703 COMPILATION ERROR WITH -DENABLE_DEBUG_SYNC=0 AND -DWITH_DEBUG=ON
The combination cmake -DENABLE_DEBUG_SYNC=0 -DWITH_DEBUG=ON fails to build.

Fix: Remove option ENABLE_DEBUG_SYNC.
2017-01-17 10:06:04 +01:00
Ajo Robert
3d1306f7b7 Bug#21770366 backport bug#21657078 to 5.5 and 5.6
Problem Statement
=========
Fix various issues when building MySQL with Visual Studio 2015.

Fix:
=======
- Visual Studio 2015 adds support for timespec. Add check and
  related code to use this and only use our replacement if
  timespec is not defined.
- Rename lfind/lsearch to my* to avoid redefinition problems.
- Set default value for TMPDIR to "" on Windows as P_tmpdir
  no longer exists.
- using VS definition of snprintf if available
- tzname are now renamed to _tzname.
2016-01-07 14:36:19 +05:30
Balasubramanian Kandasamy
5768c0adf5 Updated CMakeLists.txt to include rpm-docker directory 2015-06-16 13:56:28 +02:00
Tor Didriksen
8e94f12823 Bug#20136840 REMOVE REMAINING REFERENCES TO BZR IN CMAKE SCRIPTS
Patch for 5.5
2014-12-11 12:46:04 +01:00
Tor Didriksen
2ee7167bbd Bug#19908468 PLACE CORRECT INFORMATION IN INFO_SRC AFTER TRANSITIONING TO GIT
Use 'git log -1; git branch' rather than 'bzr version-info'
2014-11-11 16:01:13 +01:00
Tor Didriksen
9bd6e87545 Bug#19890133 MAKE DIST USING BZR EXPORT EVEN FOR SOURCE DIR NOT A BZR REPO
For 'make dist': only use 'bzr export' if bzr root == ${CMAKE_SOURCE_DIR}
Same thing for git.
2014-11-11 10:58:47 +01:00
Balasubramanian Kandasamy
56378ab9ce Added sles11 repo packages 2014-11-04 08:44:08 +01:00
Jon Olav Hauglid
8b64f82505 Bug#17633291: SET PROPER COMPILE OPTIONS FOR CLANG
Bug#17959689: MAKE GCC AND CLANG GIVE CONSISTENT COMPILATION WARNINGS
Bug#18313717: ENABLE -WERROR IN MAINTANER MODE WHEN COMPILING WITH CLANG
Bug#18510941: REMOVE CMAKE WORKAROUNDS FOR OLDER VERSIONS OF OS X/XCODE
  
Backport from mysql-5.6 to mysql-5.5
2014-10-13 09:52:28 +02:00
Jon Olav Hauglid
688416794a Bug#19001781: ADD SUPPORT FOR CMAKE 3
Set CMP0026 and CMP0045 policies when using CMake 
version 3 or higher to restore old CMake behavior.
2014-06-24 09:13:01 +02:00
Balasubramanian Kandasamy
ba51779cf6 Bug#18972488 Remove packaging/rpm-uln directory from source - Updated CMakeLists.txt 2014-06-17 09:59:46 +02:00
Tor Didriksen
1a8ae4d705 Backport of:
Bug#17894997 CMAKE WARNING WRT INTERFACE_LINK_LIBRARIES
  Bug#17905155 CMAKE WARNING WHEN GENERATING MAKEFILE
  Bug#71089 CMake warning when generating Makefile

Use old policy for LINK_INTERFACE_LIBRARIES.
2014-03-05 13:01:54 +01:00
Tor Didriksen
75c2cc45dd Bug#16316074 RFE: MAKE TMPDIR A BUILD-TIME CONFIGURABLE OPTION
Bug#68338    RFE: make tmpdir a build-time configurable option

Post-push fix: windows needs DEFAULT_TMPDIR as well.
2014-01-16 18:01:06 +01:00
Tor Didriksen
3d6c77bf7f Bug#16316074 RFE: MAKE TMPDIR A BUILD-TIME CONFIGURABLE OPTION
Bug#68338    RFE: make tmpdir a build-time configurable option

Post-push fix: 'cmake -LH | grep TMP' showed TMPDIR as a BOOL option,
which was a bit confusing: show it as a PATH instead.
2014-01-16 15:43:29 +01:00
Tor Didriksen
a3c9775657 Bug#16316074 RFE: MAKE TMPDIR A BUILD-TIME CONFIGURABLE OPTION
Bug#68338    RFE: make tmpdir a build-time configurable option

Background: Some distributions use tmpfs for mounting /tmp by
default, which has some advantages, but brings also new
issues. Fedora started using tmpfs on /tmp in version 18 for
example. If not configured otherwise in my.cnf, MySQL uses
system's constant P_tmpdir expanded to /tmp on Linux. This can
introduce some problems with limited space in /tmp and also some
data loss in case of replication slave [1].

In case distributions would like to use /var/tmp, which should be
better for MySQL purposes, then we have to patch the source or
change tmpdir option in my.cnf, which is however not updated in
case it has already existed.

Thus, it would be useful to be able to specify default tmpdir
path using a configure option, while using P_tmpdir in case it is
not defined explicitly.

Based on a contribution from Honza Horak
2013-12-18 11:05:18 +01:00
Balasubramanian Kandasamy
0870107b7e Backport 5.5.35 EL6 uln repo rpms 2013-11-25 14:49:29 +01:00
Sreedhar.S
e360311e05 Fix for Bug 17584523 - LICENSE AND DOCUMENTATION FILES MISSING FROM WINDOWS MSI PACKAGE 2013-10-16 11:05:20 +05:30
Sreedhar.S
faca34da04 Bug 13878021 - WINDOWS PACKAGE THAT INCLUDES .PDB FILES FOR INTERMEDIATE LIBRARIES USED 2013-10-09 11:10:46 +05:30
Sreedhar.S
8cafa707b8 Fix to copy missing pdb files BUG 13878021 2013-09-30 12:29:10 +05:30
Tor Didriksen
faf495e9c0 Bug#17435338 ADD A -DWITH_ASAN SWITCH/OPTION TO OUR CMAKE SCRIPTS
Tested with:
gcc (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)

clang version 3.1 (tags/RELEASE_31/final)
Target: x86_64-apple-darwin10.8.0
2013-09-20 16:10:31 +02:00
Chaithra Gopalareddy
34a0201463 Merge from 5.5 to 5.6 2013-05-23 11:06:34 +05:30
Murthy Narkedimilli
152fe9e9c4 Bug 16534721 - MYSQL_INSTALL_DB RUNS AGAIN DURING UPGRADE EVEN DATA DIRECTORY EXISTS 2013-04-03 18:09:37 +02:00
Murthy Narkedimilli
69d8812a61 Updated/added copyright headers. 2013-02-25 15:26:00 +01:00
Joerg Bruehe
2307b61bbb Placement change:
Top level "SPECIFIC-ULN/" was inappropriate,
put the files to create RPMs for ULN into
"packaging/rpm-uln/".
2012-11-07 17:45:02 +01:00
Joerg Bruehe
d43185e503 Merge changes for ULN RPMs into main 5.5 2012-09-21 16:01:53 +02:00
Tor Didriksen
e17c7b2b0b Bug#14593123 CONFIGURE.PL WITH CMAKE2.8 BREAKS THE BUILD
Ignore --with-client-ldflags 
it's not supported by the cmake scripts anyways.

Ignore --with-mysqld-ldflags
it's only used with --with-mysqld-ldflags=-static
and that doesn't work.
2012-09-07 10:12:32 +02:00
Bjorn Munch
7a38e06166 upmerge 14035452 5.1 -> 5.5 2012-07-19 13:01:33 +02:00
Bjorn Munch
1a6ce811fd Bug #14035452 - MODULARIZE MYSQL_CLIENT_TEST
Added new minimal client using same framework
  Added internal test using it
  Small changes to top level make/configure/cmake to have it built
2012-07-19 12:57:36 +02:00
Joerg Bruehe
3da1535952 More changes to supporting the build of RPMs for ULN
from the MySQL 5.5 source tree.

Contrary to the comment, the spec file for these ULN RPMs
was missing in the previous changeset (blame ".bzrignore").

This change now brings said spec file, and it adds cmake
handling for the new files.

Still for internal tool tests only, not yet ready for publishing.
2012-06-11 12:11:02 +02:00
MySQL Build Team
5734bae576 Updated/added copyright headers 2012-02-16 10:48:16 +01:00
Tor Didriksen
9288d23ae0 Bug#13551687 CMAKE GENERATED PROJECT FILES ALWAYS HAVE THE SAME NAME IN VISUAL STUDIO
Add option to set project name for Mac/Windows.
2012-01-16 12:39:12 +01:00
Kent Boortz
b6e6097c95 Updated/added copyright headers 2011-07-03 17:47:37 +02:00
Kent Boortz
1400d7a2cc Updated/added copyright headers 2011-06-30 17:37:13 +02:00
Kent Boortz
e5ce023f57 Updated/added copyright headers 2011-06-30 17:31:31 +02:00
chuck.bell@oracle.com
44b2df4aba BUG#12549572 : CMake file does not include gcov option
This patch inserts an 'ENABLE_GCOV' option for enabling gcov compilation
on Linux machines. It modifies the CMakeLists.txt setting this option
to 'OFF' by default.

Note: The option requires a debug build. For example, 
      -DCMAKE_BUILD_TYPE:string="Debug"
2011-05-12 18:22:14 -04:00
MySQL Build Team
da88c798ae fixing 38697/11749301 2011-03-21 20:23:39 +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
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
Alexander Nozdrin
7a3636c1af Merge from mysql-5.1-bugteam. 2010-11-24 13:23:44 +03:00
Georgi Kodinov
589428b625 Bug #50021: Windows standard configuration files are showing Linux
options/settings
 
 1. Changed the default value for socket on Windows to the windows
 default
 2. Removed hard-coded trailing slashes from innodb_data_home_dir
 and innodb_log_group_name_dir.
 3. Added extra backslashes to the innodb directory example
 4. Made the tempdir platform "dependent"
 5. Fixed the comments in the .ini files
 6. Removed the tmpdir from the templates and the scripts
2010-11-18 18:02:37 +02: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
Vladislav Vaintroub
a6b4be2522 add missing COMPONENT to all CMake INSTALL commands 2010-11-13 23:16:52 +01:00
Vladislav Vaintroub
8a9549434d Bug#58178: "make package" is broken with cmake 2.8.3
Problem:  with "make package" , many small packages are 
generated, one per CMake COMPONENT, instead of expected single
package. This is due to the new (in cmake 2.8.3) component-based 
install for archive( e.g ZIP,TGZ ) CPack generators.

See http://public.kitware.com/Bug/view.php?id=11452 for discussion.

Fix: use CPACK_MONOLITHIC_INSTALL=1 to enforce single package.
Reset this variable temporarily to 0 for  MSI creation  (MSI needs 
COMPONENTs)
2010-11-13 19:38:39 +01:00
Guilhem Bichot
6bf5b4b98c Merge of the fix for BUG#57933 "add -Wdeclaration-after-statement to gcc builds"
from 5.1; extended here to Cmake builds.
2010-11-05 14:33:59 +01:00
Vladislav Vaintroub
8069325f59 merge 2010-10-21 14:12:23 +02:00
Davi Arnaut
f741170485 Merge of mysql-5.1-bugteam into mysql-5.5-bugteam. 2010-10-18 15:38:32 -02:00
Vladislav Vaintroub
a52ea672a0 Bug#55647:CMake build rebuilds some libraries twice for embedded
A  simple version of the patch : add WITH_PIC to debug compilation.

Engines that are not dependent on internal stuff (like THD structure) 
will not be recompiled for embedded in debug mode.

Examples of such engines are : archive, federated, innodb. Engines
with dependencies on internals (myisam,heap,myisammrg) will still be 
fully recompiled.
2010-10-06 15:15:27 +02:00
Davi Arnaut
2044c80745 Merge of mysql-5.1-bugteam into mysql-5.5-merge. 2010-09-24 10:03:17 -03:00