summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@montyprogram.com>2011-12-26 16:57:28 +0100
committerVladislav Vaintroub <wlad@montyprogram.com>2011-12-26 16:57:28 +0100
commit305ae953db50075aa735a444464ef7086e7ad6fb (patch)
tree69c9a1e2b0fcef40af3f706d55800f0e7f541dd8 /cmake
parent7da4229f2ef2bdf24b6196991d8e474fa42c1811 (diff)
parent8e6cfaf736de92429e5fcc3977529ec2311442c5 (diff)
downloadmariadb-git-305ae953db50075aa735a444464ef7086e7ad6fb.tar.gz
merge
Diffstat (limited to 'cmake')
-rw-r--r--cmake/character_sets.cmake2
-rw-r--r--cmake/configure.pl5
-rw-r--r--cmake/install_layout.cmake2
-rw-r--r--cmake/maintainer.cmake8
-rw-r--r--cmake/os/WindowsCache.cmake1
-rw-r--r--cmake/readline.cmake131
-rw-r--r--cmake/ssl.cmake2
7 files changed, 75 insertions, 76 deletions
diff --git a/cmake/character_sets.cmake b/cmake/character_sets.cmake
index 1cf63ed1462..74a39e09cac 100644
--- a/cmake/character_sets.cmake
+++ b/cmake/character_sets.cmake
@@ -37,7 +37,7 @@ sjis swe7 tis620 ucs2 ujis utf8 utf8mb4 utf16 utf32)
SET (EXTRA_CHARSETS "all")
SET(WITH_EXTRA_CHARSETS ${EXTRA_CHARSETS} CACHE
- STRING "Options are: none, complex, all")
+ STRING "Options are: none complex all")
IF(WITH_EXTRA_CHARSETS MATCHES "complex")
diff --git a/cmake/configure.pl b/cmake/configure.pl
index 565de571452..69f973c41fb 100644
--- a/cmake/configure.pl
+++ b/cmake/configure.pl
@@ -149,6 +149,11 @@ foreach my $option (@ARGV)
$cmakeargs = $cmakeargs." -DWITH_SSL=yes";
next;
}
+ if($option =~ /with-debug/)
+ {
+ $cmakeargs = $cmakeargs." -DCMAKE_BUILD_TYPE=Debug";
+ next;
+ }
if($option =~ /with-ssl/)
{
$cmakeargs = $cmakeargs." -DWITH_SSL=bundled";
diff --git a/cmake/install_layout.cmake b/cmake/install_layout.cmake
index 9f9dc7dc9a3..23c787a7c97 100644
--- a/cmake/install_layout.cmake
+++ b/cmake/install_layout.cmake
@@ -68,7 +68,7 @@ IF(NOT INSTALL_LAYOUT)
ENDIF()
SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}"
-CACHE STRING "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer), RPM, DEB, SVR4")
+CACHE STRING "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer) RPM DEB SVR4")
IF(UNIX)
IF(INSTALL_LAYOUT MATCHES "RPM")
diff --git a/cmake/maintainer.cmake b/cmake/maintainer.cmake
index 357fbd97263..cf9b1882715 100644
--- a/cmake/maintainer.cmake
+++ b/cmake/maintainer.cmake
@@ -27,7 +27,7 @@ MACRO(SET_MYSQL_MAINTAINER_GNU_C_OPTIONS)
ENDIF()
SET(MY_MAINTAINER_C_WARNINGS
"${MY_MAINTAINER_WARNINGS} ${MY_MAINTAINER_DECLARATION_AFTER_STATEMENT}"
- CACHE STRING "C warning options used in maintainer builds.")
+ CACHE INTERNAL "C warning options used in maintainer builds.")
# Do not make warnings in checks into errors.
SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Wno-error")
ENDMACRO()
@@ -36,19 +36,19 @@ ENDMACRO()
MACRO(SET_MYSQL_MAINTAINER_GNU_CXX_OPTIONS)
SET(MY_MAINTAINER_CXX_WARNINGS
"${MY_MAINTAINER_WARNINGS} -Wno-unused-parameter -Woverloaded-virtual"
- CACHE STRING "C++ warning options used in maintainer builds.")
+ CACHE INTERNAL "C++ warning options used in maintainer builds.")
ENDMACRO()
# Setup ICC (Intel C Compiler) warning options.
MACRO(SET_MYSQL_MAINTAINER_INTEL_C_OPTIONS)
SET(MY_MAINTAINER_WARNINGS "-Wcheck")
SET(MY_MAINTAINER_C_WARNINGS "${MY_MAINTAINER_WARNINGS}"
- CACHE STRING "C warning options used in maintainer builds.")
+ CACHE INTERNAL "C warning options used in maintainer builds.")
ENDMACRO()
# Setup ICPC (Intel C++ Compiler) warning options.
MACRO(SET_MYSQL_MAINTAINER_INTEL_CXX_OPTIONS)
SET(MY_MAINTAINER_CXX_WARNINGS "${MY_MAINTAINER_WARNINGS}"
- CACHE STRING "C++ warning options used in maintainer builds.")
+ CACHE INTERNAL "C++ warning options used in maintainer builds.")
ENDMACRO()
diff --git a/cmake/os/WindowsCache.cmake b/cmake/os/WindowsCache.cmake
index b6a2c8b22fe..b0dc2c04250 100644
--- a/cmake/os/WindowsCache.cmake
+++ b/cmake/os/WindowsCache.cmake
@@ -20,6 +20,7 @@
# different results.
IF(MSVC)
+SET(BFD_H_EXISTS 0 CACHE INTERNAL "")
SET(HAVE_ACCESS 1 CACHE INTERNAL "")
SET(HAVE_AIO_H CACHE INTERNAL "")
SET(HAVE_AIO_READ CACHE INTERNAL "")
diff --git a/cmake/readline.cmake b/cmake/readline.cmake
index 4840229a82e..24a411e3f1d 100644
--- a/cmake/readline.cmake
+++ b/cmake/readline.cmake
@@ -14,6 +14,8 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+INCLUDE(CheckCXXSourceCompiles)
+
MACRO (MYSQL_CHECK_MULTIBYTE)
CHECK_INCLUDE_FILE(wctype.h HAVE_WCTYPE_H)
CHECK_INCLUDE_FILE(wchar.h HAVE_WCHAR_H)
@@ -112,35 +114,32 @@ ENDMACRO()
MACRO (MYSQL_USE_BUNDLED_READLINE)
SET(USE_NEW_READLINE_INTERFACE 1)
SET(HAVE_HIST_ENTRY)
- SET(USE_LIBEDIT_INTERFACE)
SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils)
SET(READLINE_LIBRARY readline)
FIND_CURSES()
ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/readline)
ENDMACRO()
-MACRO (MYSQL_USE_BUNDLED_LIBEDIT)
- SET(USE_LIBEDIT_INTERFACE 1)
- SET(HAVE_HIST_ENTRY 1)
- SET(READLINE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
- SET(READLINE_LIBRARY edit)
- FIND_CURSES()
- ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/cmd-line-utils/libedit)
-ENDMACRO()
-
-
-MACRO (MYSQL_FIND_SYSTEM_READLINE name)
+MACRO (MYSQL_FIND_SYSTEM_READLINE)
- FIND_PATH(${name}_INCLUDE_DIR readline/readline.h )
- FIND_LIBRARY(${name}_LIBRARY NAMES ${name})
- MARK_AS_ADVANCED(${name}_INCLUDE_DIR ${name}_LIBRARY)
+ FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h )
+ FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
+ MARK_AS_ADVANCED(READLINE_INCLUDE_DIR READLINE_LIBRARY)
- INCLUDE(CheckCXXSourceCompiles)
- SET(CMAKE_REQUIRES_LIBRARIES ${${name}_LIBRARY})
+ SET(CMAKE_REQUIRES_LIBRARIES ${READLINE_LIBRARY})
+
+ IF(READLINE_LIBRARY AND READLINE_INCLUDE_DIR)
+ SET(CMAKE_REQUIRED_LIBRARIES ${READLINE_LIBRARY})
+ CHECK_CXX_SOURCE_COMPILES("
+ #include <stdio.h>
+ #include <readline/readline.h>
+ int main(int argc, char **argv)
+ {
+ rl_completion_func_t *func1= (rl_completion_func_t*)0;
+ rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
+ }"
+ NEW_READLINE_INTERFACE)
- IF(${name}_LIBRARY AND ${name}_INCLUDE_DIR)
- SET(SYSTEM_READLINE_FOUND 1)
- SET(CMAKE_REQUIRED_LIBRARIES ${${name}_LIBRARY})
CHECK_CXX_SOURCE_COMPILES("
#include <stdio.h>
#include <readline/readline.h>
@@ -149,37 +148,54 @@ MACRO (MYSQL_FIND_SYSTEM_READLINE name)
HIST_ENTRY entry;
return 0;
}"
- ${name}_HAVE_HIST_ENTRY)
+ HAVE_HIST_ENTRY)
- CHECK_CXX_SOURCE_COMPILES("
+ CHECK_C_SOURCE_COMPILES("
#include <stdio.h>
#include <readline/readline.h>
+ #if RL_VERSION_MAJOR > 5
+ #error
+ #endif
int main(int argc, char **argv)
{
- char res= *(*rl_completion_entry_function)(0,0);
- completion_matches(0,0);
+ return 0;
}"
- ${name}_USE_LIBEDIT_INTERFACE)
+ READLINE_V5)
+
+ IF(NEW_READLINE_INTERFACE)
+ IF (READLINE_V5)
+ SET(USE_NEW_READLINE_INTERFACE 1)
+ ELSE()
+ IF(NOT_FOR_DISTRIBUTION)
+ SET(NON_DISTRIBUTABLE_WARNING 1)
+ SET(USE_NEW_READLINE_INTERFACE 1)
+ ELSE()
+ SET(USE_NEW_READLINE_INTERFACE 0)
+ ENDIF(NOT_FOR_DISTRIBUTION)
+ ENDIF(READLINE_V5)
+ ENDIF(NEW_READLINE_INTERFACE)
+ ENDIF()
+ENDMACRO()
+MACRO (MYSQL_FIND_SYSTEM_LIBEDIT)
+
+ FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h )
+ FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
+ MARK_AS_ADVANCED(READLINE_INCLUDE_DIR READLINE_LIBRARY)
+ SET(CMAKE_REQUIRES_LIBRARIES ${READLINE_LIBRARY})
+
+ IF(READLINE_LIBRARY AND READLINE_INCLUDE_DIR)
CHECK_CXX_SOURCE_COMPILES("
#include <stdio.h>
#include <readline/readline.h>
int main(int argc, char **argv)
{
- rl_completion_func_t *func1= (rl_completion_func_t*)0;
- rl_compentry_func_t *func2= (rl_compentry_func_t*)0;
+ char res= *(*rl_completion_entry_function)(0,0);
+ completion_matches(0,0);
}"
- ${name}_USE_NEW_READLINE_INTERFACE)
-
- IF(${name}_USE_LIBEDIT_INTERFACE OR ${name}_USE_NEW_READLINE_INTERFACE)
- SET(READLINE_LIBRARY ${${name}_LIBRARY})
- SET(READLINE_INCLUDE_DIR ${${name}_INCLUDE_DIR})
- SET(HAVE_HIST_ENTRY ${${name}_HAVE_HIST_ENTRY})
- SET(USE_LIBEDIT_INTERFACE ${${name}_USE_LIBEDIT_INTERFACE})
- SET(USE_NEW_READLINE_INTERFACE ${${name}_USE_NEW_READLINE_INTERFACE})
- SET(READLINE_FOUND 1)
- ENDIF()
+ LIBEDIT_INTERFACE)
+ SET(USE_LIBEDIT_INTERFACE ${LIBEDIT_INTERFACE})
ENDIF()
ENDMACRO()
@@ -187,44 +203,21 @@ ENDMACRO()
MACRO (MYSQL_CHECK_READLINE)
IF (NOT WIN32)
MYSQL_CHECK_MULTIBYTE()
- IF(NOT CYGWIN)
- SET(WITH_LIBEDIT ON CACHE BOOL "Use bundled libedit")
- SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
- ELSE()
- # Bundled libedit does not compile on cygwin, only readline
- SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
- ENDIF()
-
- # Handle mutual exclusion of WITH_READLINE/WITH_LIBEDIT variables
- # We save current setting to recognize when user switched between
- # WITH_READLINE and WITH_LIBEDIT
- IF(WITH_READLINE)
- IF(NOT SAVE_READLINE_SETTING OR SAVE_READLINE_SETTING MATCHES
- "WITH_LIBEDIT")
- SET(WITH_LIBEDIT OFF CACHE BOOL "Use bundled libedit" FORCE)
- ENDIF()
- ELSEIF(WITH_LIBEDIT)
- IF(NOT SAVE_READLINE_SETTING OR SAVE_READLINE_SETTING MATCHES
- "WITH_READLINE")
- SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline" FORCE)
- ENDIF()
- ENDIF()
+ SET(WITH_READLINE OFF CACHE BOOL "Use bundled readline")
IF(WITH_READLINE)
- MYSQL_USE_BUNDLED_READLINE()
- SET(SAVE_READLINE_SETTING WITH_READLINE CACHE INTERNAL "" FORCE)
- ELSEIF(WITH_LIBEDIT)
- MYSQL_USE_BUNDLED_LIBEDIT()
- SET(SAVE_READLINE_SETTING WITH_LIBEDIT CACHE INTERNAL "" FORCE)
+ MYSQL_USE_BUNDLED_READLINE()
ELSE()
- MYSQL_FIND_SYSTEM_READLINE(readline)
- IF(NOT READLINE_FOUND)
- MYSQL_FIND_SYSTEM_READLINE(edit)
- IF(NOT READLINE_FOUND)
- MESSAGE(FATAL_ERROR "Cannot find system readline or libedit libraries.Use WITH_READLINE or WITH_LIBEDIT")
+ MYSQL_FIND_SYSTEM_READLINE()
+ IF(NOT USE_NEW_READLINE_INTERFACE)
+ MYSQL_FIND_SYSTEM_LIBEDIT()
+ IF(NOT USE_LIBEDIT_INTERFACE)
+ MYSQL_USE_BUNDLED_READLINE()
ENDIF()
ENDIF()
ENDIF()
+ SET(MY_READLINE_INCLUDE_DIR ${READLINE_INCLUDE_DIR})
+ SET(MY_READLINE_LIBRARY ${READLINE_LIBRARY})
ENDIF(NOT WIN32)
ENDMACRO()
diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake
index 9b16bf09394..001be69e62f 100644
--- a/cmake/ssl.cmake
+++ b/cmake/ssl.cmake
@@ -14,7 +14,7 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
MACRO (CHANGE_SSL_SETTINGS string)
- SET(WITH_SSL ${string} CACHE STRING "Options are : no, bundled, yes (prefer os library if present otherwise use bundled), system (use os library)" FORCE)
+ SET(WITH_SSL ${string} CACHE STRING "Options are: no bundled yes(prefer os library if present otherwise use bundled) system(use os library)" FORCE)
ENDMACRO()
MACRO (MYSQL_USE_BUNDLED_SSL)