summaryrefslogtreecommitdiff
path: root/sql-bench/CMakeLists.txt
diff options
context:
space:
mode:
authorVladislav Vaintroub <vvaintroub@mysql.com>2010-01-24 16:23:16 +0100
committerVladislav Vaintroub <vvaintroub@mysql.com>2010-01-24 16:23:16 +0100
commitc514d75ebb0651dcc65ca9e09cf8458dc904f242 (patch)
treec43eba4b5b19fd0edbb74db874eadf3a2a91f9c7 /sql-bench/CMakeLists.txt
parentdf9f68e9730d5d1f00ad82536c27352b9915c018 (diff)
downloadmariadb-git-c514d75ebb0651dcc65ca9e09cf8458dc904f242.tar.gz
Handle different installation layouts.
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)
Diffstat (limited to 'sql-bench/CMakeLists.txt')
-rw-r--r--sql-bench/CMakeLists.txt14
1 files changed, 12 insertions, 2 deletions
diff --git a/sql-bench/CMakeLists.txt b/sql-bench/CMakeLists.txt
index e69fa9fa18f..88d15dc706f 100644
--- a/sql-bench/CMakeLists.txt
+++ b/sql-bench/CMakeLists.txt
@@ -22,6 +22,16 @@ ${CMAKE_SOURCE_DIR}/sql-bench/Comments/*
${CMAKE_SOURCE_DIR}/sql-bench/limits/*
)
+IF(NOT INSTALL_SQLBENCHDIR)
+ RETURN()
+ENDIF()
+
+IF(INSTALL_SQLBENCHROOTDIR STREQUAL ".")
+ SET(prefix)
+ELSE()
+ SET(prefix ${INSTALL_SQLBENCHROOTDIR}/)
+ENDIF()
+
GET_FILENAME_COMPONENT(basedir ${CMAKE_SOURCE_DIR} ABSOLUTE)
FOREACH(file ${all_files})
IF(NOT IS_DIRECTORY ${file} AND NOT ${file} MATCHES "Make" )
@@ -42,10 +52,10 @@ FOREACH(file ${all_files})
CONFIGURE_FILE(${file} ${target} COPYONLY)
IF (ext MATCHES ".bat")
IF(WIN32)
- INSTALL(FILES ${target} DESTINATION ${dir})
+ INSTALL(FILES ${target} DESTINATION ${prefix}${dir})
ENDIF()
ELSE()
- INSTALL(FILES ${target} DESTINATION ${dir})
+ INSTALL(FILES ${target} DESTINATION ${prefix}${dir})
ENDIF()
ENDIF()
ENDFOREACH()