Commit graph

480 commits

Author SHA1 Message Date
Konstantin Osipov
d63caa0c30 Committing on behalf of Valdislav Vaintroub (reviewed and
approved):

3161 Vladislav Vaintroub       2010-04-29                 
 Bug#53196 : CMake builds don't support 'make tags' and 
'make ctags' targets.  
   - Added tags and ctags targets
2010-05-14 18:42:10 +04:00
Jonathan Perkin
ce2aabb712 Changes to build using CMake according to existing release packages:
- Update/fix file layouts for each package type, add new types for
   native package formats including deb, rpm and svr4.

 - Build all plugins, including debug versions

 - Update compiler flags to match current release

 - Add missing @VAR@ expansions

 - Install correct mysqclient library symlinks

 - Fix icc/ia64 builds

 - Fix install of libmysqld-debug

 - Don't include mysql_embedded

 - Remove unpackaged manual pages to avoid missing files warnings

 - Don't install mtr's test suite
2010-05-12 12:51:23 +01:00
Jonathan Perkin
5b85121ca6 Changes to build using CMake according to existing release packages:
- Update/fix file layouts for each package type, add new types for
   native package formats including deb, rpm and svr4.

 - Build all plugins, including debug versions

 - Update compiler flags to match current release

 - Add missing @VAR@ expansions

 - Install correct mysqclient library symlinks

 - Fix icc/ia64 builds

 - Fix install of libmysqld-debug

 - Don't include mysql_embedded

 - Remove unpackaged manual pages to avoid missing files warnings

 - Don't install mtr's test suite
2010-05-12 12:51:23 +01:00
Daniel Fischer
2b588155e4 Changes to MSI installer:
- Introduce MANUFACTURER setting to set package manufacturer via CMake.
- Introduce COMMUNITY_BUILD setting to be passed on to packaging
  (not used here, but required for our own packages to determine what
   added files should be included in the package).
- Create an RTF version of the COPYING text file and use that as the
  default license (can be overridden by providing a COPYING.rtf file).
- Allow passing extra arguments to candle and light via environment.
  (Need -sval in pushbuild, but want validation elsewhere.)
- Introduce a custom action that stops and uninstalls the service 
  if the user installed one that points into the MySQL directory
  that is being removed.
  (Our own packages historically used the instance configuration wizard
  for this, but it wouldn't be very nice if MSIs created by our users
  couldn't remove it too.)
- Make install location configurable again ("Browse" button in custom
  installation was greyed out before).
- Remove registry keys that use "MySQL AB"; they should only be set in 
  packages provided by us. Users can set their own registry keys if
  they want to.
2010-04-30 13:30:32 +02:00
Daniel Fischer
d60efe5820 Changes to MSI installer:
- Introduce MANUFACTURER setting to set package manufacturer via CMake.
- Introduce COMMUNITY_BUILD setting to be passed on to packaging
  (not used here, but required for our own packages to determine what
   added files should be included in the package).
- Create an RTF version of the COPYING text file and use that as the
  default license (can be overridden by providing a COPYING.rtf file).
- Allow passing extra arguments to candle and light via environment.
  (Need -sval in pushbuild, but want validation elsewhere.)
- Introduce a custom action that stops and uninstalls the service 
  if the user installed one that points into the MySQL directory
  that is being removed.
  (Our own packages historically used the instance configuration wizard
  for this, but it wouldn't be very nice if MSIs created by our users
  couldn't remove it too.)
- Make install location configurable again ("Browse" button in custom
  installation was greyed out before).
- Remove registry keys that use "MySQL AB"; they should only be set in 
  packages provided by us. Users can set their own registry keys if
  they want to.
2010-04-30 13:30:32 +02:00
Daniel Fischer
b83e1c8686 Merge 2010-04-21 14:58:09 +02:00
Daniel Fischer
50edf454b1 Merge 2010-04-21 14:58:09 +02:00
Sergei Golubchik
3b03f5d97e fixes for windows builds 2010-04-02 11:20:09 +02:00
unknown
20739646d7 Maria WL#61
Interface for maria extensions.
  Alternative plugin interface with additional info (maturity and string version).

CMakeLists.txt:
  Maria plugin interface used.
config/ac-macros/plugins.m4:
  Maria plugin interface used.
configure.in:
  Maria plugin interface used.
include/mysql/plugin.h:
  Maria plugin interface added.
include/mysql/plugin_auth.h.pp:
  Maria plugin interface added.
plugin/auth/auth_socket.c:
  Maria plugin interface added.
plugin/auth/dialog.c:
  Maria plugin interface added.
plugin/daemon_example/daemon_example.cc:
  Maria plugin interface added.
plugin/fulltext/plugin_example.c:
  Maria plugin interface added.
sql/ha_ndbcluster.cc:
  Maria plugin interface added.
sql/ha_partition.cc:
  Maria plugin interface added.
sql/log.cc:
  Maria plugin interface added.
sql/sql_acl.cc:
  Maria plugin interface added.
sql/sql_builtin.cc.in:
  Maria plugin interface used.
sql/sql_plugin.cc:
  Maria plugin interface added.
sql/sql_plugin.h:
  Maria plugin interface used.
sql/sql_show.cc:
  Maria plugin interface added.
storage/archive/ha_archive.cc:
  Maria plugin interface added.
storage/blackhole/ha_blackhole.cc:
  Maria plugin interface added.
storage/csv/ha_tina.cc:
  Maria plugin interface added.
storage/example/ha_example.cc:
  Maria plugin interface added.
storage/federated/ha_federated.cc:
  Maria plugin interface added.
storage/federatedx/ha_federatedx.cc:
  Maria plugin interface added.
storage/heap/ha_heap.cc:
  Maria plugin interface added.
storage/ibmdb2i/ha_ibmdb2i.cc:
  Maria plugin interface added.
storage/innobase/handler/ha_innodb.cc:
  Maria plugin interface added.
storage/innodb_plugin/handler/i_s.cc:
  Maria plugin interface added.
storage/maria/ha_maria.cc:
  Maria plugin interface added.
storage/myisam/ha_myisam.cc:
  Maria plugin interface added.
storage/myisammrg/ha_myisammrg.cc:
  Maria plugin interface added.
storage/pbxt/src/ha_pbxt.cc:
  Maria plugin interface added.
storage/xtradb/handler/ha_innodb.cc:
  Maria plugin interface added.
storage/xtradb/handler/i_s.cc:
  Maria plugin interface added.
storage/xtradb/handler/i_s.h:
  Maria plugin interface added.
2010-04-01 17:34:51 +03:00
Jonathan Perkin
f3ebc19a33 Try to fix datadir 2010-04-01 13:35:16 +02:00
Jonathan Perkin
f037ad4fbf Try to fix datadir 2010-04-01 13:35:16 +02:00
Jonathan Perkin
42f3842ef8 Expand INSTALL_INFODIR correctly.
Make mysql.info optional.
2010-03-25 15:04:39 +01:00
Jonathan Perkin
48f61d94f7 Expand INSTALL_INFODIR correctly.
Make mysql.info optional.
2010-03-25 15:04:39 +01:00
Jonathan Perkin
b462a3e0b3 Don't install documentation when INSTALL_LAYOUT=RPM, as the spec file
prefers to take docs directly from the source tree.
2010-03-25 13:16:13 +01:00
Jonathan Perkin
127bdb6eda Don't install documentation when INSTALL_LAYOUT=RPM, as the spec file
prefers to take docs directly from the source tree.
2010-03-25 13:16:13 +01:00
Jonathan Perkin
651aeb62ec Add INSTALL_INFODIR and use it to install mysql.info into the
correct location.
2010-03-25 11:43:11 +01:00
Jonathan Perkin
5fd878c3f0 Add INSTALL_INFODIR and use it to install mysql.info into the
correct location.
2010-03-25 11:43:11 +01:00
Vladislav Vaintroub
40e12231fe Fix WITH_DEBUG problems in CMake build, so people who use configure wrappers do not
suffer. The problem was that when custom C flags were defined with in environment 
variable CFLAGS, WITH_DEBUG did not have any effect. Also, switch from 
WITH_DEBUG=ON to WITH_DEBUG=OFF   was not handled correctly .Expected is switch 
to with RelwithDebInfo or when custom compiler flags  are defined, to None.
2010-03-02 01:53:15 +01:00
Vladislav Vaintroub
e1384dc718 Fix WITH_DEBUG problems in CMake build, so people who use configure wrappers do not
suffer. The problem was that when custom C flags were defined with in environment 
variable CFLAGS, WITH_DEBUG did not have any effect. Also, switch from 
WITH_DEBUG=ON to WITH_DEBUG=OFF   was not handled correctly .Expected is switch 
to with RelwithDebInfo or when custom compiler flags  are defined, to None.
2010-03-02 01:53:15 +01:00
Jonathan Perkin
46b22d5e5d Some CMake packaging fixes:
- Remove INSTALL-BINARY from installed docs directory, we provide a copy
   in the root directory (but perhaps this should be revisited later).

 - Disable audit_null and daemon_example plugins.

 - Fix the docs directory.

 - Remove mysql-test/Makefile.in

 - Build and install mysql_tzinfo_to_sql

 - Remove share/charsets/languages.html
2010-02-24 19:19:24 +00:00
Jonathan Perkin
26e77e0027 Some CMake packaging fixes:
- Remove INSTALL-BINARY from installed docs directory, we provide a copy
   in the root directory (but perhaps this should be revisited later).

 - Disable audit_null and daemon_example plugins.

 - Fix the docs directory.

 - Remove mysql-test/Makefile.in

 - Build and install mysql_tzinfo_to_sql

 - Remove share/charsets/languages.html
2010-02-24 19:19:24 +00:00
Jonathan Perkin
704d09691c Support non-GPL builds. 2010-02-23 09:53:48 +00:00
Jonathan Perkin
b0a89a2ee5 Support non-GPL builds. 2010-02-23 09:53:48 +00:00
Vladislav Vaintroub
df64a94118 When installing, exclude some documents in Docs 2010-02-19 17:51:53 +01:00
Vladislav Vaintroub
541cf19c5c When installing, exclude some documents in Docs 2010-02-19 17:51:53 +01:00
Sergei Golubchik
2ceaffc467 mwl:98 - libservices 2010-03-03 15:44:14 +01:00
Vladislav Vaintroub
f68e8aa860 Fix a couple fo things replated to MSI 2010-02-16 16:06:57 +01:00
Vladislav Vaintroub
7e01172ce3 Fix a couple fo things replated to MSI 2010-02-16 16:06:57 +01:00
Vladislav Vaintroub
3bd236fefb Add components to INSTALL, some eraly Wix support 2010-02-10 20:23:24 +01:00
Vladislav Vaintroub
890c52d889 Add components to INSTALL, some eraly Wix support 2010-02-10 20:23:24 +01:00
vvaintroub
aa134fdf99 Move WITH_UNITTESTS option up - otherwise it skips plugin unittests 2010-01-28 14:33:44 +01:00
vvaintroub
051f769dc5 Move WITH_UNITTESTS option up - otherwise it skips plugin unittests 2010-01-28 14:33:44 +01:00
Vladislav Vaintroub
a8c47397fc WL#5161: Implement Mats' suggestion of moving OS specific CMake code to OS 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
2010-01-26 13:47:34 +01:00
Vladislav Vaintroub
19a2c052a5 WL#5161: Implement Mats' suggestion of moving OS specific CMake code to OS specific files, instead of
polluting code with IF(CMAKE_SYSTEM_NAME MATCHES...), first on Windows.
2010-01-26 13:47:34 +01:00
Vladislav Vaintroub
4fe79c7d58 Following autotools tradition, add preprocessor definitions specified in environment variable CPPFLAGS 2010-01-24 21:03:21 +01:00
Vladislav Vaintroub
03fcdd0194 Following autotools tradition, add preprocessor definitions specified in environment variable CPPFLAGS 2010-01-24 21:03:21 +01:00
Vladislav Vaintroub
c514d75ebb 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)
2010-01-24 16:23:16 +01:00
Vladislav Vaintroub
c827968a2d 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)
2010-01-24 16:23:16 +01:00
Vladislav Vaintroub
4acc380f15 restore lost -g when WITH_DEBUG was specified 2010-01-21 12:37:22 +00:00
Vladislav Vaintroub
50d844d24a restore lost -g when WITH_DEBUG was specified 2010-01-21 12:37:22 +00:00
Vladislav Vaintroub
a71e4cf18e - another take on BUILD_CONFIG variable - use OPTION instead of SET for
boolean variables to ensure option is in cache. Also use documented CMAKE_USE_MAKE_RULES_OVERRIDE feature instead of INCLUDE.

- remove superfluous tests in innobase's CMakeLists.txt
2010-01-20 00:52:21 +01:00
Vladislav Vaintroub
df2d0359d8 - another take on BUILD_CONFIG variable - use OPTION instead of SET for
boolean variables to ensure option is in cache. Also use documented CMAKE_USE_MAKE_RULES_OVERRIDE feature instead of INCLUDE.

- remove superfluous tests in innobase's CMakeLists.txt
2010-01-20 00:52:21 +01:00
Vladislav Vaintroub
5d61e31d4d Fix end-of-line characters in mysql_release.cmake to be unix-conform
make -DBUILD_CONFIG=mysql_release work
2010-01-19 02:21:48 +00:00
Vladislav Vaintroub
7d1d78e574 Fix end-of-line characters in mysql_release.cmake to be unix-conform
make -DBUILD_CONFIG=mysql_release work
2010-01-19 02:21:48 +00:00
Vladislav Vaintroub
f3460b2132 Add WITH_FAST_MUTEXES option (non-debug configurations only) 2010-01-13 13:33:32 +01:00
Vladislav Vaintroub
7e7965aeb4 Add WITH_FAST_MUTEXES option (non-debug configurations only) 2010-01-13 13:33:32 +01:00
Vladislav Vaintroub
4c872d51f6 Add option for specifying MYSQL build configurations.
Add mysql_release.cmake intended for use by the build team (
compile options, build settings to do MySQL releases)
2010-01-11 14:42:07 +01:00
Vladislav Vaintroub
125cd58f2b Add option for specifying MYSQL build configurations.
Add mysql_release.cmake intended for use by the build team (
compile options, build settings to do MySQL releases)
2010-01-11 14:42:07 +01:00
Vladislav Vaintroub
59e6fa7db1 Install docs 2010-01-09 01:16:07 +01:00
Vladislav Vaintroub
36549c4fa2 Install docs 2010-01-09 01:16:07 +01:00