summaryrefslogtreecommitdiff
path: root/cmake/libutils.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Don't use full path of libtoolDaniel Black2017-04-091-1/+1
| | | | | | | | This is to be friendly to our OSX users where the libtool path is very different. Ref: * https://github.com/Homebrew/homebrew-core/blob/master/Formula/mariadb.rb#L44..L46
* Merge branch '5.5' into 10.0Alexey Botchkov2016-01-251-0/+5
|\ | | | | | | | | Conflicts: plugin/server_audit/server_audit.c
| * MDEV-9298 : Build failure when linking libmysql.Vladislav Vaintroub2016-01-071-0/+5
| | | | | | | | | | | | | | | | | | If GCC or CLang compile with link time optimization (-flto), they throw an error during link , when lto sees a function (e.g mysql_real_connect) is redeclared as "external void *" in libmysql_exports.cc The fix disables -flto for generated libmysql_exports.cc
* | MDEV-7398 mysqld segfaults on FreeBSD 10.1 i386 when built with clang 3.4Sergei Golubchik2015-06-161-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in cmake tests let's treat clang like gcc (same options, same builtins) in many cases. * don't check the compiler when * testing for -fvisibility=hidden support * testing for HAVE_ABI_CXA_DEMANGLE * testing for HAVE_GCC_ATOMIC_BUILTINS * when removing options with string(replace) * when running ${CC} --version (ignore the error instead) * run ABI checks for clang * use "canonical" gcc flags for clang * fix groonga too Also: * add cmake detection for gcc __atomic_* builtins. they might be supported (__ATOMIC_SEQ_CST is defined), but not for all operand sizes. In particular, 64-bit atomic load is problematic on i386 * cache check results for Windows * remove the test for HAVE_CXXABI_H (HAVE_ABI_CXA_DEMANGLE is suffifient)
* | after-merge fixesSergei Golubchik2015-01-211-0/+2
| |
* | 5.5 mergeSergei Golubchik2014-05-091-1/+1
|\ \ | |/
| * mysql-5.5.37 selective mergeSergei Golubchik2014-03-271-1/+1
| |\
| | * Bug#18235669 MYSQL_CONFIG TO PROVIDE R FLAG ON SOLARISTor Didriksen2014-02-251-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'mysql_config --libs' outputs -L/path/to/library on SunOS we also want it to output '-R/path/to/library' in order to find libraries at runtime. cmake/libutils.cmake: Add an informational message, to show dependencies on OS libraries.
* | | cmake: don't check for the compiler on every invocation of ↵Sergei Golubchik2013-07-091-13/+12
| | | | | | | | | | | | | | | | | | RESTRICT_SYMBOL_EXPORTS(), do it only once
* | | Temporary commit of 10.0-mergeMichael Widenius2013-03-261-3/+5
|/ /
* | Various fixes for Solaris compiler.Vladislav Vaintroub2012-02-031-7/+18
| | | | | | | | | | | | | | Also, restrict symbol visibility in statically built plugins, to minimize the chance for symbol name clashes with dynamic plugins.
* | mergedSergei Golubchik2011-11-221-1/+1
|\ \ | |/
| * Updated/added copyright headersKent Boortz2011-06-301-1/+1
| |
* | For libmysqld.so, apply patch to the MySQL Bug#39288 found hereVladislav Vaintroub2011-11-081-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | http://lists.mysql.com/commits/102373 It is better than previous attempts to build the libmysqld, as it also takes care of 1) -Wl,--no-undefined for shared libraries and 2) CLEAN_DIRECT_OUTPUT since there are now 2 libraries with the same base output name
* | add version to the libmysqld.soVladislav Vaintroub2011-11-071-1/+10
|/
* Bug#58074: ADD_VERSION_INFO cmake/mysql_version.cmake fails if LINK_FLAGS ↵Vladislav Vaintroub2010-11-121-0/+3
| | | | | | | | 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.
* Rename CMAKE_PARSE_ARGUMENTS macro to avoid name collisionVladislav Vaintroub2010-09-291-1/+1
| | | | | with CMake 2.8.3 builtin macro
* Add components to INSTALL, some eraly Wix supportVladislav Vaintroub2010-02-101-2/+5
|
* WL#5161: Implement Mats' suggestion of moving OS specific CMake code to OS ↵Vladislav Vaintroub2010-01-261-2/+4
| | | | | | | | | | | | | specific files, instead of polluting code with IF(CMAKE_SYSTEM_NAME MATCHES...), first on Windows. cmake/libutils.cmake: Fix the case in MERGE_LIBRARIES, where there is no dependency on OS libraries. cmake/os/Windows.cmake: Move windows specific code to cmake/os/Windows.cmake configure.cmake: Move some Windows code to cmake/os/Windows.cmake
* Fix smaller stuff: disable transitive linking for MERGE_LIBRARIES results,Vladislav Vaintroub2010-01-251-0/+1
| | | | | compile embedded with PIC to allow linking with shared libraries
* Handle different installation layouts.Vladislav Vaintroub2010-01-241-1/+1
| | | | | | | | | | | | | | | | | using cmake option INSTALL_LAYOUT=STANDALONE would produce the layout as in tar.gz or zip packages. INSTALL_LAYOUT=UNIX will produce unixish install layout (with mysqld being in sbin subdirectory , libs in lib/mysql etc). This layout is used for RPM packages. Subtle differences in both packages unfortunately lead to the need to recompile MySQL to use with other package type - as otherwise for example default plugins or data directories would be wrong set. There are numerous other variables that allow fine-tuning packaging layout. (INSTALL_BINDIR, INSTALL_LIBDIR , INSTALL_PLUGINDIR etc). This options are different from autotools as they do not expect full paths to directories, but only subdirectory of CMAKE_INSTALL_PREFIX. There are 2 special options that expect full directory paths - MYSQL_DATADIR that defines default MYSQL data directory (autotools equivalent is --localstatedir) - SYSCONFDIR can be added to search my.cnf search path (autotools equivalent is --sysconfdir)
* Fix output name of embedded library,Vladislav Vaintroub2010-01-151-1/+1
| | | | honor OUTPUT_NAME in MERGE_LIBRARIES macro
* Do not use fvisibility flag if GCC does not support itVladislav Vaintroub2010-01-061-6/+9
| | | | (i.e if gcc version < 4)
* Simplify embedding version info into executables with ADD_VERSION_INFOVladislav Vaintroub2009-12-181-3/+0
|
* Replace ADD_EXECUTABLE with MYSQL_ADD_EXECUTABLE for binaries that are ↵Vladislav Vaintroub2009-12-171-10/+14
| | | | | | | installed. MYSQL_ADD_EXECUTABLE will instructs CPack where to install the exe. On Windows, it also adds version resource and if -DSIGNCODE was given, will sign the exe in packaging step.
* On Linux, support -Wl,--no-undefined (only client shared library)Vladislav Vaintroub2009-12-071-7/+24
| | | | | and --Wl,--as-needed (all shared modules). The later will remove unused dependencies (also from gcc and C++ runtime)
* Fix creation of exports file on UnixVladislav Vaintroub2009-12-051-2/+4
|
* in RESTRICT_SYMBOL_EXPORTS,handle cases where COMPILE_FLAGS are not setVladislav Vaintroub2009-12-011-0/+4
| | | | | (COMPILE_FLAGS-NOTFOUND)
* - Introduce MYSQL_ADD_PLUGIN that replaces MYSQL_STORAGE_ENGINEVladislav Vaintroub2009-12-011-35/+10
| | | | | - Fix semisync library prefix (remove lib on Unixes) - restrict exported symbols from zlib and yassl (fvisibility=hidden)
* implement convenience librariesVladislav Vaintroub2009-11-241-0/+291