Develop and Download Open Source Software

Browse Subversion Repository

Contents of /tags/tritonn-1.0.5-mysql-5.0.45/CMakeLists.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 66 - (show annotations) (download)
Fri Jan 18 03:00:31 2008 UTC (16 years, 2 months ago) by mir
File MIME type: text/plain
File size: 8101 byte(s)
moved from topdir to tags
1 # Copyright (C) 2006 MySQL AB
2 #
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; version 2 of the License.
6 #
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 # GNU General Public License for more details.
11 #
12 # You should have received a copy of the GNU General Public License
13 # along with this program; if not, write to the Free Software
14 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
15
16 PROJECT(MySql)
17
18 # This reads user configuration, generated by configure.js.
19 INCLUDE(win/configure.data)
20
21 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/include/mysql_version.h.in
22 ${CMAKE_SOURCE_DIR}/include/mysql_version.h @ONLY)
23
24 # Set standard options
25 ADD_DEFINITIONS(-D WITH_MYISAM_STORAGE_ENGINE)
26 ADD_DEFINITIONS(-D CMAKE_BUILD)
27 ADD_DEFINITIONS(-D HAVE_YASSL)
28
29 # Set debug options
30 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFORCE_INIT_OF_VARS")
31 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DFORCE_INIT_OF_VARS")
32
33 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_myisam_plugin")
34
35
36 IF(WITH_ARCHIVE_STORAGE_ENGINE)
37 ADD_DEFINITIONS(-D HAVE_ARCHIVE_DB)
38 ENDIF(WITH_ARCHIVE_STORAGE_ENGINE)
39
40 IF (WITH_HEAP_STORAGE_ENGINE)
41 ADD_DEFINITIONS(-D WITH_HEAP_STORAGE_ENGINE)
42 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_heap_plugin")
43 ENDIF (WITH_HEAP_STORAGE_ENGINE)
44
45 IF (WITH_MYISAMMRG_STORAGE_ENGINE)
46 ADD_DEFINITIONS(-D WITH_MYISAMMRG_STORAGE_ENGINE)
47 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_myisammrg_plugin")
48 ENDIF (WITH_MYISAMMRG_STORAGE_ENGINE)
49
50 IF(WITH_INNOBASE_STORAGE_ENGINE)
51 ADD_DEFINITIONS(-D HAVE_INNOBASE_DB)
52 ADD_DEFINITIONS(-D WITH_INNOBASE_STORAGE_ENGINE)
53 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_innobase_plugin")
54 ENDIF(WITH_INNOBASE_STORAGE_ENGINE)
55
56 IF(WITH_FEDERATED_STORAGE_ENGINE)
57 ADD_DEFINITIONS(-D HAVE_FEDERATED_DB)
58 ADD_DEFINITIONS(-D WITH_FEDERATED_STORAGE_ENGINE)
59 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_federated_plugin")
60 ENDIF(WITH_FEDERATED_STORAGE_ENGINE)
61
62 IF(WITH_BERKELEY_STORAGE_ENGINE)
63 ADD_DEFINITIONS(-D HAVE_BERKELEY_DB)
64 ADD_DEFINITIONS(-D WITH_BERKELEY_STORAGE_ENGINE)
65 SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_berkeley_plugin")
66 ENDIF(WITH_BERKELEY_STORAGE_ENGINE)
67
68 IF (WITH_BLACKHOLE_STORAGE_ENGINE)
69 ADD_DEFINITIONS(-D HAVE_BLACKHOLE_DB)
70 ENDIF (WITH_BLACKHOLE_STORAGE_ENGINE)
71
72 SET(localstatedir "C:\\mysql\\data")
73 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-huge.cnf.sh
74 ${CMAKE_SOURCE_DIR}/support-files/my-huge.ini @ONLY)
75 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-innodb-heavy-4G.cnf.sh
76 ${CMAKE_SOURCE_DIR}/support-files/my-innodb-heavy-4G.ini @ONLY)
77 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-large.cnf.sh
78 ${CMAKE_SOURCE_DIR}/support-files/my-large.ini @ONLY)
79 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-medium.cnf.sh
80 ${CMAKE_SOURCE_DIR}/support-files/my-medium.ini @ONLY)
81 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-small.cnf.sh
82 ${CMAKE_SOURCE_DIR}/support-files/my-small.ini @ONLY)
83
84 IF(__NT__)
85 ADD_DEFINITIONS(-D __NT__)
86 ENDIF(__NT__)
87
88 # in some places we use DBUG_OFF
89 SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -D DBUG_OFF")
90 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -D DBUG_OFF")
91 SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -D DBUG_OFF")
92 SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -D DBUG_OFF")
93
94 IF(CMAKE_GENERATOR MATCHES "Visual Studio 8")
95 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /wd4996")
96 SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /wd4996")
97 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /wd4996")
98 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /wd4996")
99 SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /wd4996")
100 SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /wd4996")
101 ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 8")
102
103 IF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
104 CMAKE_GENERATOR MATCHES "Visual Studio 8")
105 # replace /MDd with /MTd
106 STRING(REPLACE "/MDd" "/MTd" CMAKE_CXX_FLAGS_DEBUG_INIT
107 ${CMAKE_CXX_FLAGS_DEBUG_INIT})
108 STRING(REPLACE "/MDd" "/MTd" CMAKE_C_FLAGS_DEBUG_INIT
109 ${CMAKE_C_FLAGS_DEBUG_INIT})
110 STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_RELEASE
111 ${CMAKE_C_FLAGS_RELEASE})
112 STRING(REPLACE "/MD" "/MT" CMAKE_C_FLAGS_RELWITHDEBINFO
113 ${CMAKE_C_FLAGS_RELWITHDEBINFO})
114 STRING(REPLACE "/MDd" "/MTd" CMAKE_C_FLAGS_DEBUG
115 ${CMAKE_C_FLAGS_DEBUG})
116 STRING(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELEASE
117 ${CMAKE_CXX_FLAGS_RELEASE})
118 STRING(REPLACE "/MD" "/MT" CMAKE_CXX_FLAGS_RELWITHDEBINFO
119 ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
120 STRING(REPLACE "/MDd" "/MTd" CMAKE_CXX_FLAGS_DEBUG
121 ${CMAKE_CXX_FLAGS_DEBUG})
122
123 # generate map files
124 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MAP /MAPINFO:EXPORTS")
125
126 # remove support for Exception handling
127 STRING(REPLACE "/GX" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
128 STRING(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
129 STRING(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS_INIT
130 ${CMAKE_CXX_FLAGS_INIT})
131 STRING(REPLACE "/EHsc" "" CMAKE_CXX_FLAGS_DEBUG_INIT
132 ${CMAKE_CXX_FLAGS_DEBUG_INIT})
133 ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR
134 CMAKE_GENERATOR MATCHES "Visual Studio 8")
135
136 ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D _CRT_SECURE_NO_DEPRECATE")
137
138 IF(EMBED_MANIFESTS)
139 # Search for the Manifest tool. CMake will first search it's defaults
140 # (CMAKE_FRAMEWORK_PATH, CMAKE_APPBUNDLE_PATH, CMAKE_PROGRAM_PATH and
141 # the system PATH) followed by the listed paths which are the current
142 # possible defaults and should be updated when necessary. The custom
143 # manifests are designed to be compatible with all mt versions.
144 FIND_PROGRAM(HAVE_MANIFEST_TOOL NAMES mt
145 PATHS
146 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/VC/bin"
147 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/Common7/Tools/Bin"
148 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/SDK/v2.0/Bin")
149 IF(HAVE_MANIFEST_TOOL)
150 MESSAGE(STATUS "Found Mainfest Tool. Embedding custom manifests.")
151 ELSE(HAVE_MANIFEST_TOOL)
152 MESSAGE(FATAL_ERROR "Manifest tool, mt.exe, can't be found.")
153 ENDIF(HAVE_MANIFEST_TOOL)
154 # Disable automatic manifest generation.
155 STRING(REPLACE "/MANIFEST" "/MANIFEST:NO" CMAKE_EXE_LINKER_FLAGS
156 ${CMAKE_EXE_LINKER_FLAGS})
157 # Explicitly disable it since it is the default for newer versions of VS
158 STRING(REGEX MATCH "MANIFEST:NO" tmp_manifest ${CMAKE_EXE_LINKER_FLAGS})
159 IF(NOT tmp_manifest)
160 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")
161 ENDIF(NOT tmp_manifest)
162 # Set the processor architecture.
163 IF(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
164 SET(PROCESSOR_ARCH "X64")
165 ELSE(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
166 SET(PROCESSOR_ARCH "X86")
167 ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 8 2005 Win64")
168 ENDIF(EMBED_MANIFESTS)
169
170 ADD_SUBDIRECTORY(vio)
171 ADD_SUBDIRECTORY(dbug)
172 ADD_SUBDIRECTORY(strings)
173 ADD_SUBDIRECTORY(regex)
174 ADD_SUBDIRECTORY(mysys)
175 ADD_SUBDIRECTORY(scripts)
176 ADD_SUBDIRECTORY(zlib)
177 ADD_SUBDIRECTORY(extra/yassl)
178 ADD_SUBDIRECTORY(extra/yassl/taocrypt)
179 ADD_SUBDIRECTORY(extra)
180 ADD_SUBDIRECTORY(heap)
181 ADD_SUBDIRECTORY(myisam)
182 ADD_SUBDIRECTORY(myisammrg)
183 ADD_SUBDIRECTORY(client)
184 IF(WITH_BERKELEY_STORAGE_ENGINE)
185 ADD_SUBDIRECTORY(bdb)
186 ENDIF(WITH_BERKELEY_STORAGE_ENGINE)
187 IF(WITH_INNOBASE_STORAGE_ENGINE)
188 ADD_SUBDIRECTORY(innobase)
189 ENDIF(WITH_INNOBASE_STORAGE_ENGINE)
190 ADD_SUBDIRECTORY(sql)
191 ADD_SUBDIRECTORY(sql/examples)
192 ADD_SUBDIRECTORY(server-tools/instance-manager)
193 ADD_SUBDIRECTORY(libmysql)
194 ADD_SUBDIRECTORY(tests)

Properties

Name Value
svn:executable *

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26