Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
3f2cc44b
Commit
3f2cc44b
authored
Mar 28, 2006
by
knielsen@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Clean up CMake configuration following review.
parent
cc57e4e0
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
143 additions
and
453 deletions
+143
-453
cmakelists.txt
cmakelists.txt
+32
-4
sql/cmakelists.txt
sql/cmakelists.txt
+25
-2
win/config-handlerton.js
win/config-handlerton.js
+0
-196
win/config-version.js
win/config-version.js
+0
-223
win/configure.js
win/configure.js
+86
-28
No files found.
cmakelists.txt
View file @
3f2cc44b
PROJECT
(
MySql
)
EXEC_PROGRAM
(
cscript.exe win ARGS config-version.js OUT_VARIABLE out
)
# This reads user configuration, generated by configure.js.
INCLUDE
(
win/configure.data
)
CONFIGURE_FILE
(
${
CMAKE_SOURCE_DIR
}
/include/mysql_version.h.in
${
CMAKE_SOURCE_DIR
}
/include/mysql_version.h @ONLY
)
# in some places we use DBUG_OFF
SET
(
CMAKE_CXX_FLAGS_RELEASE
"
${
CMAKE_CXX_FLAGS_RELEASE
}
-D DBUG_OFF"
)
SET
(
CMAKE_C_FLAGS_RELEASE
"
${
CMAKE_C_FLAGS_RELEASE
}
-D DBUG_OFF"
)
...
...
@@ -32,6 +34,32 @@ ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR CMAKE_GENERATOR MATCHES "Visu
ADD_DEFINITIONS
(
"-D_WINDOWS -D__WIN__ -D _CRT_SECURE_NO_DEPRECATE"
)
SUBDIRS
(
vio dbug strings regex mysys extra/yassl extra/yassl/taocrypt extra
zlib storage/heap storage/myisam storage/myisammrg client
${
se_subdirs
}
sql server-tools/instance-manager libmysql tests
)
ADD_SUBDIRECTORY
(
vio
)
ADD_SUBDIRECTORY
(
dbug
)
ADD_SUBDIRECTORY
(
strings
)
ADD_SUBDIRECTORY
(
regex
)
ADD_SUBDIRECTORY
(
mysys
)
ADD_SUBDIRECTORY
(
extra/yassl
)
ADD_SUBDIRECTORY
(
extra/yassl/taocrypt
)
ADD_SUBDIRECTORY
(
extra
)
ADD_SUBDIRECTORY
(
zlib
)
ADD_SUBDIRECTORY
(
storage/heap
)
ADD_SUBDIRECTORY
(
storage/myisam
)
ADD_SUBDIRECTORY
(
storage/myisammrg
)
ADD_SUBDIRECTORY
(
client
)
IF
(
WITH_ARCHIVE_STORAGE_ENGINE
)
ADD_SUBDIRECTORY
(
storage/archive
)
ENDIF
(
WITH_ARCHIVE_STORAGE_ENGINE
)
IF
(
WITH_BERKELEY_STORAGE_ENGINE
)
ADD_SUBDIRECTORY
(
storage/bdb
)
ENDIF
(
WITH_BERKELEY_STORAGE_ENGINE
)
IF
(
WITH_EXAMPLE_STORAGE_ENGINE
)
ADD_SUBDIRECTORY
(
storage/example
)
ENDIF
(
WITH_EXAMPLE_STORAGE_ENGINE
)
IF
(
WITH_INNOBASE_STORAGE_ENGINE
)
ADD_SUBDIRECTORY
(
storage/innobase
)
ENDIF
(
WITH_INNOBASE_STORAGE_ENGINE
)
ADD_SUBDIRECTORY
(
sql
)
ADD_SUBDIRECTORY
(
server-tools/instance-manager
)
ADD_SUBDIRECTORY
(
libmysql
)
ADD_SUBDIRECTORY
(
tests
)
sql/cmakelists.txt
View file @
3f2cc44b
...
...
@@ -24,11 +24,13 @@ IF(WITH_ARCHIVE_STORAGE_ENGINE)
ADD_DEFINITIONS
(
-D WITH_ARCHIVE_STORAGE_ENGINE
)
SET
(
mysql_se_htons
"
${
mysql_se_htons
}
, &archive_hton"
)
SET
(
mysql_se_decls
"
${
mysql_se_decls
}
, archive_hton"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_archive.cc"
)
ENDIF
(
WITH_ARCHIVE_STORAGE_ENGINE
)
IF
(
WITH_BLACKHOLE_STORAGE_ENGINE
)
ADD_DEFINITIONS
(
-D WITH_BLACKHOLE_STORAGE_ENGINE
)
SET
(
mysql_se_htons
"
${
mysql_se_htons
}
, &blackhole_hton"
)
SET
(
mysql_se_decls
"
${
mysql_se_decls
}
, blackhole_hton"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_blackhole.cc"
)
ENDIF
(
WITH_BLACKHOLE_STORAGE_ENGINE
)
IF
(
WITH_EXAMPLE_STORAGE_ENGINE
)
ADD_DEFINITIONS
(
-D WITH_EXAMPLE_STORAGE_ENGINE
)
...
...
@@ -44,27 +46,35 @@ IF(WITH_PARTITION_STORAGE_ENGINE)
ADD_DEFINITIONS
(
-D WITH_PARTITION_STORAGE_ENGINE
)
SET
(
mysql_se_htons
"
${
mysql_se_htons
}
, &partition_hton"
)
SET
(
mysql_se_decls
"
${
mysql_se_decls
}
, partition_hton"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_innodb.cc"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_partition.cc"
)
ENDIF
(
WITH_PARTITION_STORAGE_ENGINE
)
IF
(
WITH_FEDERATED_STORAGE_ENGINE
)
ADD_DEFINITIONS
(
-D WITH_FEDERATED_STORAGE_ENGINE
)
SET
(
mysql_se_htons
"
${
mysql_se_htons
}
, &federated_hton"
)
SET
(
mysql_se_decls
"
${
mysql_se_decls
}
, federated_hton"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_federated.cc"
)
ENDIF
(
WITH_FEDERATED_STORAGE_ENGINE
)
IF
(
WITH_BERKELEY_STORAGE_ENGINE
)
ADD_DEFINITIONS
(
-D WITH_BERKELEY_STORAGE_ENGINE
)
SET
(
mysql_se_htons
"
${
mysql_se_htons
}
, &berkeley_hton"
)
SET
(
mysql_se_decls
"
${
mysql_se_decls
}
, berkeley_hton"
)
SET
(
mysql_se_ha_src
"
${
mysql_se_ha_src
}
ha_berkeley.cc"
)
ENDIF
(
WITH_BERKELEY_STORAGE_ENGINE
)
IF
(
__NT__
)
ADD_DEFINITIONS
(
-D __NT__
)
ENDIF
(
__NT__
)
IF
(
CYBOZU
)
ADD_DEFINITIONS
(
-D CYBOZU
)
ENDIF
(
CYBOZU
)
CONFIGURE_FILE
(
${
CMAKE_SOURCE_DIR
}
/sql/handlerton.cc.in
${
CMAKE_SOURCE_DIR
}
/sql/handlerton.cc @ONLY
)
ADD_DEFINITIONS
(
-DHAVE_ROW_BASED_REPLICATION -DMYSQL_SERVER -D_CONSOLE -DHAVE_DLOPEN
)
SEPARATE_ARGUMENTS
(
mysql_se_ha_src
)
ADD_EXECUTABLE
(
mysqld ../sql-common/client.c derror.cc des_key_file.cc discover.cc ../libmysql/errmsg.c field.cc
field_conv.cc filesort.cc gstream.cc ha_heap.cc ha_myisam.cc ha_myisammrg.cc
${
handlertons
}
handler.cc hash_filo.cc hash_filo.h hostname.cc
${
mysql_se_ha_src
}
handler.cc hash_filo.cc hash_filo.h hostname.cc
init.cc item.cc item_buff.cc item_cmpfunc.cc item_create.cc item_func.cc item_geofunc.cc
item_row.cc item_strfunc.cc item_subselect.cc item_sum.cc item_timefunc.cc item_uniq.cc
key.cc log.cc lock.cc log_event.cc message.rc message.h mf_iocache.cc
...
...
@@ -89,7 +99,20 @@ ADD_EXECUTABLE(mysqld ../sql-common/client.c derror.cc des_key_file.cc discover.
${
PROJECT_SOURCE_DIR
}
/include/mysql_version.h
${
PROJECT_SOURCE_DIR
}
/sql/handlerton.cc
${
PROJECT_SOURCE_DIR
}
/sql/lex_hash.h
)
TARGET_LINK_LIBRARIES
(
mysqld heap myisam myisammrg
${
se_deps
}
mysys yassl zlib dbug yassl taocrypt strings vio regex wsock32
)
TARGET_LINK_LIBRARIES
(
mysqld heap myisam myisammrg mysys yassl zlib dbug yassl taocrypt strings vio regex wsock32
)
IF
(
WITH_ARCHIVE_STORAGE_ENGINE
)
TARGET_LINK_LIBRARIES
(
mysqld archive
)
ENDIF
(
WITH_ARCHIVE_STORAGE_ENGINE
)
IF
(
WITH_EXAMPLE_STORAGE_ENGINE
)
TARGET_LINK_LIBRARIES
(
mysqld example
)
ENDIF
(
WITH_EXAMPLE_STORAGE_ENGINE
)
IF
(
WITH_INNOBASE_STORAGE_ENGINE
)
TARGET_LINK_LIBRARIES
(
mysqld innobase
)
ENDIF
(
WITH_INNOBASE_STORAGE_ENGINE
)
IF
(
WITH_BERKELEY_STORAGE_ENGINE
)
TARGET_LINK_LIBRARIES
(
mysqld bdb
)
ENDIF
(
WITH_BERKELEY_STORAGE_ENGINE
)
ADD_DEPENDENCIES
(
mysqld GenError
)
# Sql Parser custom command
...
...
win/config-handlerton.js
deleted
100644 → 0
View file @
cc57e4e0
// Configure.js
ForReading
=
1
;
ForWriting
=
2
;
ForAppending
=
8
;
try
{
// first we attempt to open the main configure.in file
var
fso
=
new
ActiveXObject
(
"
Scripting.FileSystemObject
"
);
var
args
=
WScript
.
Arguments
var
datafile
=
fso
.
OpenTextFile
(
args
.
Item
(
0
),
ForReading
);
var
extern_line
=
''
;
var
address_line
=
''
;
while
(
!
datafile
.
AtEndOfStream
)
{
var
line
=
datafile
.
ReadLine
();
if
(
line
==
"
WITH_INNOBASE_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,innobase_hton
"
;
address_line
+=
"
,&innobase_hton
"
;
}
else
if
(
line
==
"
WITH_PARTITION_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,partition_hton
"
;
address_line
+=
"
,&partition_hton
"
;
}
else
if
(
line
==
"
WITH_ARCHIVE_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,archive_hton
"
;
address_line
+=
"
,&archive_hton
"
;
}
else
if
(
line
==
"
WITH_BERKELEY_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,berkeley_hton
"
;
address_line
+=
"
,&berkeley_hton
"
;
}
else
if
(
line
==
"
WITH_BLACKHOLE_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,blackhole_hton
"
;
address_line
+=
"
,&blackhole_hton
"
;
}
else
if
(
line
==
"
WITH_EXAMPLE_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,example_hton
"
;
address_line
+=
"
,&example_hton
"
;
}
else
if
(
line
==
"
WITH_FEDERATED_STORAGE_ENGINE
"
)
{
extern_line
+=
"
,federated_hton
"
;
address_line
+=
"
,&federated_hton
"
;
}
}
datafile
.
Close
();
var
infile
=
fso
.
OpenTextFile
(
"
..
\\
sql
\\
handlerton.cc.in
"
,
ForReading
);
var
infile_contents
=
infile
.
ReadAll
();
infile
.
Close
();
infile_contents
=
infile_contents
.
replace
(
"
@mysql_se_decls@
"
,
extern_line
);
infile_contents
=
infile_contents
.
replace
(
"
@mysql_se_htons@
"
,
address_line
);
var
outfile
=
fso
.
CreateTextFile
(
"
..
\\
sql
\\
handlerton.cc
"
,
true
)
outfile
.
Write
(
infile_contents
);
outfile
.
Close
();
fso
=
null
;
WScript
.
Echo
(
"
done!
"
);
}
catch
(
e
)
{
WScript
.
Echo
(
"
Error:
"
+
e
.
description
);
}
function
ConfigureBDB
()
{
// read in the Unix configure.in file
var
dbIncTS
=
fso
.
OpenTextFile
(
"
..
\\
bdb
\\
dbinc
\\
db.in
"
,
ForReading
);
var
dbIn
=
dbIncTS
.
ReadAll
();
dbIncTS
.
Close
();
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MAJOR@
"
,
"
$DB_VERSION_MAJOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MINOR@
"
,
"
$DB_VERSION_MINOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_PATCH@
"
,
"
$DB_VERSION_PATCH
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_STRING@
"
,
"
$DB_VERSION_STRING
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int8_decl@
"
,
"
typedef unsigned char u_int8_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int16_decl@
"
,
"
typedef short int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int16_decl@
"
,
"
typedef unsigned short u_int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int32_decl@
"
,
"
typedef int int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int32_decl@
"
,
"
typedef unsigned int u_int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_char_decl@
"
,
"
{
\r\n
#if !defined(_WINSOCKAPI_)
\r\n
"
+
"
typedef unsigned char u_char;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_short_decl@
"
,
"
typedef unsigned short u_short;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int_decl@
"
,
"
typedef unsigned int u_int;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_long_decl@
"
,
"
typedef unsigned long u_long;
"
);
dbIn
=
dbIn
.
replace
(
"
@ssize_t_decl@
"
,
"
#endif
\r\n
#if defined(_WIN64)
\r\n
"
+
"
typedef __int64 ssize_t;
\r\n
#else
\r\n
"
+
"
typedef int ssize_t;
\r\n
#endif
"
);
}
function
ConfigureMySqlVersion
()
{
// read in the Unix configure.in file
var
configureInTS
=
fso
.
OpenTextFile
(
"
..
\\
configure.in
"
,
ForReading
);
var
configureIn
=
configureInTS
.
ReadAll
();
configureInTS
.
Close
();
// read in the mysql_version.h.in file
var
mysqlTS
=
fso
.
OpenTextFile
(
"
..
\\
include
\\
mysql_version.h.in
"
,
ForReading
);
var
mysqlin
=
mysqlTS
.
ReadAll
();
mysqlTS
.
Close
();
mysqlin
=
mysqlin
.
replace
(
"
@PROTOCOL_VERSION@
"
,
GetValue
(
configureIn
,
"
PROTOCOL_VERSION
"
));
mysqlin
=
mysqlin
.
replace
(
"
@DOT_FRM_VERSION@
"
,
GetValue
(
configureIn
,
"
DOT_FRM_VERSION
"
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_TCP_PORT@
"
,
GetValue
(
configureIn
,
"
MYSQL_TCP_PORT_DEFAULT
"
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_UNIX_ADDR@
"
,
GetValue
(
configureIn
,
"
MYSQL_UNIX_ADDR_DEFAULT
"
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_SERVER_SUFFIX@
"
,
''
);
mysqlin
=
mysqlin
.
replace
(
"
@COMPILATION_COMMENT@
"
,
'
Source distribution
'
);
var
version
=
GetVersion
(
configureIn
);
mysqlin
=
mysqlin
.
replace
(
"
@VERSION@
"
,
version
);
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_BASE_VERSION@
"
,
GetBaseVersion
(
version
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_VERSION_ID@
"
,
GetVersionId
(
version
));
var
mysqlfile
=
fso
.
CreateTextFile
(
"
..
\\
include
\\
mysql_version.h
"
,
true
);
mysqlfile
.
Write
(
mysqlin
);
mysqlfile
.
Close
();
}
function
GetValue
(
str
,
key
)
{
var
pos
=
str
.
indexOf
(
key
+
'
=
'
);
if
(
pos
==
-
1
)
return
null
;
pos
+=
key
.
length
+
1
;
var
end
=
str
.
indexOf
(
"
\n
"
,
pos
);
if
(
str
.
charAt
(
pos
)
==
"
\"
"
)
pos
++
;
if
(
str
.
charAt
(
end
-
1
)
==
"
\"
"
)
end
--
;
return
str
.
substring
(
pos
,
end
);
}
function
GetVersion
(
str
)
{
var
key
=
"
AM_INIT_AUTOMAKE(mysql,
"
;
var
pos
=
str
.
indexOf
(
key
);
//5.0.6-beta)
if
(
pos
==
-
1
)
return
null
;
pos
+=
key
.
length
;
var
end
=
str
.
indexOf
(
"
)
"
,
pos
);
if
(
end
==
-
1
)
return
null
;
return
str
.
substring
(
pos
,
end
);
}
function
GetBaseVersion
(
version
)
{
var
dot
=
version
.
indexOf
(
"
.
"
);
if
(
dot
==
-
1
)
return
null
;
dot
=
version
.
indexOf
(
"
.
"
,
dot
+
1
);
if
(
dot
==
-
1
)
dot
=
version
.
length
;
return
version
.
substring
(
0
,
dot
);
}
function
GetVersionId
(
version
)
{
var
dot
=
version
.
indexOf
(
"
.
"
);
if
(
dot
==
-
1
)
return
null
;
var
major
=
parseInt
(
version
.
substring
(
0
,
dot
),
10
);
dot
++
;
var
nextdot
=
version
.
indexOf
(
"
.
"
,
dot
);
if
(
nextdot
==
-
1
)
return
null
;
var
minor
=
parseInt
(
version
.
substring
(
dot
,
nextdot
),
10
);
dot
=
nextdot
+
1
;
var
stop
=
version
.
indexOf
(
"
-
"
,
dot
);
if
(
stop
==
-
1
)
stop
=
version
.
length
;
var
build
=
parseInt
(
version
.
substring
(
dot
,
stop
),
10
);
var
id
=
major
;
if
(
minor
<
10
)
id
+=
'
0
'
;
id
+=
minor
;
if
(
build
<
10
)
id
+=
'
0
'
;
id
+=
build
;
return
id
;
}
win/config-version.js
deleted
100644 → 0
View file @
cc57e4e0
// Configure.js
ForReading
=
1
;
ForWriting
=
2
;
ForAppending
=
8
;
try
{
// first we attempt to open the main configure.in file
var
fso
=
new
ActiveXObject
(
"
Scripting.FileSystemObject
"
);
var
args
=
WScript
.
Arguments
// Find any configured MYSQL_SERVER_SUFFIX.
// Find any extra preprocessor definitions.
var
datafile
=
fso
.
OpenTextFile
(
args
.
Item
(
0
),
ForReading
);
var
server_suffix
=
''
;
var
server_comment
=
'
Source distribution
'
;
var
server_port
=
''
;
var
defs
=
''
;
var
htons
=
''
;
var
subdirs
=
''
;
var
depends
=
''
;
while
(
!
datafile
.
AtEndOfStream
)
{
var
line
=
datafile
.
ReadLine
();
if
(
line
.
indexOf
(
"
MYSQL_SERVER_SUFFIX=
"
)
==
0
)
{
server_suffix
=
line
.
substring
(
20
,
line
.
length
);
}
else
if
(
line
.
indexOf
(
"
COMPILATION_COMMENT=
"
)
==
0
)
{
server_comment
=
line
.
substring
(
20
,
line
.
length
);
}
else
if
(
line
.
indexOf
(
"
MYSQL_TCP_PORT=
"
)
==
0
)
{
server_port
=
line
.
substring
(
15
,
line
.
length
);
}
else
if
(
line
==
"
WITH_ARCHIVE_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_archive.cc
"
;
subdirs
+=
"
storage/archive
"
;
depends
+=
"
archive
"
;
}
else
if
(
line
==
"
WITH_BERKELEY_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_berkeley.cc
"
;
subdirs
+=
"
storage/bdb
"
;
depends
+=
"
bdb
"
;
}
else
if
(
line
==
"
WITH_BLACKHOLE_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_blackhole.cc
"
;
}
else
if
(
line
==
"
WITH_EXAMPLE_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
subdirs
+=
"
storage/example
"
;
depends
+=
"
example
"
;
}
else
if
(
line
==
"
WITH_FEDERATED_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_federated.cc
"
;
}
else
if
(
line
==
"
WITH_INNOBASE_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_innodb.cc
"
;
subdirs
+=
"
storage/innobase
"
;
depends
+=
"
innobase
"
;
}
else
if
(
line
==
"
WITH_PARTITION_STORAGE_ENGINE
"
)
{
defs
+=
"
-D
"
+
line
;
htons
+=
"
ha_partition.cc
"
;
}
else
if
(
line
==
"
__NT__
"
||
line
==
"
CYBOZU
"
||
line
.
indexOf
(
"
LICENSE=
"
)
==
0
)
{
defs
+=
"
-D
"
+
line
;
}
}
datafile
.
Close
();
ConfigureMySqlVersion
();
//ConfigureBDB();
fso
=
null
;
WScript
.
Echo
(
"
DEFINITIONS@
"
+
defs
+
"
@
"
);
WScript
.
Echo
(
"
HANDLERTONS@
"
+
htons
+
"
@
"
);
WScript
.
Echo
(
"
DEPENDS@
"
+
depends
+
"
@
"
);
WScript
.
Echo
(
"
SUBDIRS@
"
+
subdirs
+
"
@
"
);
}
catch
(
e
)
{
WScript
.
Echo
(
"
Error:
"
+
e
.
description
);
}
function
ConfigureBDB
()
{
// read in the Unix configure.in file
var
dbIncTS
=
fso
.
OpenTextFile
(
"
..
\\
bdb
\\
dbinc
\\
db.in
"
,
ForReading
);
var
dbIn
=
dbIncTS
.
ReadAll
();
dbIncTS
.
Close
();
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MAJOR@
"
,
"
$DB_VERSION_MAJOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MINOR@
"
,
"
$DB_VERSION_MINOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_PATCH@
"
,
"
$DB_VERSION_PATCH
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_STRING@
"
,
"
$DB_VERSION_STRING
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int8_decl@
"
,
"
typedef unsigned char u_int8_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int16_decl@
"
,
"
typedef short int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int16_decl@
"
,
"
typedef unsigned short u_int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int32_decl@
"
,
"
typedef int int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int32_decl@
"
,
"
typedef unsigned int u_int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_char_decl@
"
,
"
{
\r\n
#if !defined(_WINSOCKAPI_)
\r\n
"
+
"
typedef unsigned char u_char;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_short_decl@
"
,
"
typedef unsigned short u_short;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int_decl@
"
,
"
typedef unsigned int u_int;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_long_decl@
"
,
"
typedef unsigned long u_long;
"
);
dbIn
=
dbIn
.
replace
(
"
@ssize_t_decl@
"
,
"
#endif
\r\n
#if defined(_WIN64)
\r\n
"
+
"
typedef __int64 ssize_t;
\r\n
#else
\r\n
"
+
"
typedef int ssize_t;
\r\n
#endif
"
);
}
function
ConfigureMySqlVersion
()
{
// read in the Unix configure.in file
var
configureInTS
=
fso
.
OpenTextFile
(
"
..
\\
configure.in
"
,
ForReading
);
var
configureIn
=
configureInTS
.
ReadAll
();
configureInTS
.
Close
();
// read in the mysql_version.h.in file
var
mysqlTS
=
fso
.
OpenTextFile
(
"
..
\\
include
\\
mysql_version.h.in
"
,
ForReading
);
var
mysqlin
=
mysqlTS
.
ReadAll
();
mysqlTS
.
Close
();
mysqlin
=
mysqlin
.
replace
(
"
@PROTOCOL_VERSION@
"
,
GetValue
(
configureIn
,
"
PROTOCOL_VERSION
"
));
mysqlin
=
mysqlin
.
replace
(
"
@DOT_FRM_VERSION@
"
,
GetValue
(
configureIn
,
"
DOT_FRM_VERSION
"
));
if
(
server_port
==
''
)
{
server_port
=
GetValue
(
configureIn
,
"
MYSQL_TCP_PORT_DEFAULT
"
);
}
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_TCP_PORT@
"
,
server_port
);
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_UNIX_ADDR@
"
,
GetValue
(
configureIn
,
"
MYSQL_UNIX_ADDR_DEFAULT
"
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_SERVER_SUFFIX@
"
,
server_suffix
);
mysqlin
=
mysqlin
.
replace
(
"
@COMPILATION_COMMENT@
"
,
server_comment
);
var
version
=
GetVersion
(
configureIn
);
mysqlin
=
mysqlin
.
replace
(
"
@VERSION@
"
,
version
);
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_BASE_VERSION@
"
,
GetBaseVersion
(
version
));
mysqlin
=
mysqlin
.
replace
(
"
@MYSQL_VERSION_ID@
"
,
GetVersionId
(
version
));
var
mysqlfile
=
fso
.
CreateTextFile
(
"
..
\\
include
\\
mysql_version.h
"
,
true
);
mysqlfile
.
Write
(
mysqlin
);
mysqlfile
.
Close
();
}
function
GetValue
(
str
,
key
)
{
var
pos
=
str
.
indexOf
(
key
+
'
=
'
);
if
(
pos
==
-
1
)
return
null
;
pos
+=
key
.
length
+
1
;
var
end
=
str
.
indexOf
(
"
\n
"
,
pos
);
if
(
str
.
charAt
(
pos
)
==
"
\"
"
)
pos
++
;
if
(
str
.
charAt
(
end
-
1
)
==
"
\"
"
)
end
--
;
return
str
.
substring
(
pos
,
end
);
}
function
GetVersion
(
str
)
{
var
key
=
"
AM_INIT_AUTOMAKE(mysql,
"
;
var
pos
=
str
.
indexOf
(
key
);
//5.0.6-beta)
if
(
pos
==
-
1
)
return
null
;
pos
+=
key
.
length
;
var
end
=
str
.
indexOf
(
"
)
"
,
pos
);
if
(
end
==
-
1
)
return
null
;
return
str
.
substring
(
pos
,
end
);
}
function
GetBaseVersion
(
version
)
{
var
dot
=
version
.
indexOf
(
"
.
"
);
if
(
dot
==
-
1
)
return
null
;
dot
=
version
.
indexOf
(
"
.
"
,
dot
+
1
);
if
(
dot
==
-
1
)
dot
=
version
.
length
;
return
version
.
substring
(
0
,
dot
);
}
function
GetVersionId
(
version
)
{
var
dot
=
version
.
indexOf
(
"
.
"
);
if
(
dot
==
-
1
)
return
null
;
var
major
=
parseInt
(
version
.
substring
(
0
,
dot
),
10
);
dot
++
;
var
nextdot
=
version
.
indexOf
(
"
.
"
,
dot
);
if
(
nextdot
==
-
1
)
return
null
;
var
minor
=
parseInt
(
version
.
substring
(
dot
,
nextdot
),
10
);
dot
=
nextdot
+
1
;
var
stop
=
version
.
indexOf
(
"
-
"
,
dot
);
if
(
stop
==
-
1
)
stop
=
version
.
length
;
var
build
=
parseInt
(
version
.
substring
(
dot
,
stop
),
10
);
var
id
=
major
;
if
(
minor
<
10
)
id
+=
'
0
'
;
id
+=
minor
;
if
(
build
<
10
)
id
+=
'
0
'
;
id
+=
build
;
return
id
;
}
win/configure.js
View file @
3f2cc44b
...
...
@@ -6,39 +6,69 @@ ForAppending = 8;
try
{
// first we attempt to open the main configure.in file
var
fso
=
new
ActiveXObject
(
"
Scripting.FileSystemObject
"
);
var
args
=
WScript
.
Arguments
var
args
=
WScript
.
Arguments
// read in the Unix configure.in file
var
configureInTS
=
fso
.
OpenTextFile
(
"
configure.in
"
,
ForReading
);
var
configureIn
=
configureInTS
.
ReadAll
();
configureInTS
.
Close
();
var
default_comment
=
"
Source distribution
"
;
var
default_port
=
GetValue
(
configureIn
,
"
MYSQL_TCP_PORT_DEFAULT
"
);
var
configfile
=
fso
.
CreateTextFile
(
"
win
\\
configure.data
"
,
true
);
for
(
i
=
0
;
i
<
args
.
Count
();
i
++
)
{
var
parts
=
args
.
Item
(
i
).
split
(
'
=
'
);
switch
(
parts
[
0
])
{
case
"
WITH_ARCHIVE_STORAGE_ENGINE
"
:
case
"
WITH_BERKELEY_STORAGE_ENGINE
"
:
case
"
WITH_BLACKHOLE_STORAGE_ENGINE
"
:
case
"
WITH_EXAMPLE_STORAGE_ENGINE
"
:
case
"
WITH_FEDERATED_STORAGE_ENGINE
"
:
case
"
WITH_INNOBASE_STORAGE_ENGINE
"
:
case
"
WITH_PARTITION_STORAGE_ENGINE
"
:
case
"
__NT__
"
:
line
=
"
SET (
"
+
args
.
Item
(
i
)
+
"
TRUE)
"
;
break
;
case
"
MYSQL_SERVER_SUFFIX
"
:
case
"
COMPILATION_COMMENT
"
:
case
"
MYSQL_TCP_PORT
"
:
line
=
"
SET (
"
+
parts
[
0
]
+
"
"
+
parts
[
1
]
+
"
)
"
;
break
;
}
configfile
.
WriteLine
(
line
);
var
parts
=
args
.
Item
(
i
).
split
(
'
=
'
);
switch
(
parts
[
0
])
{
case
"
WITH_ARCHIVE_STORAGE_ENGINE
"
:
case
"
WITH_BERKELEY_STORAGE_ENGINE
"
:
case
"
WITH_BLACKHOLE_STORAGE_ENGINE
"
:
case
"
WITH_EXAMPLE_STORAGE_ENGINE
"
:
case
"
WITH_FEDERATED_STORAGE_ENGINE
"
:
case
"
WITH_INNOBASE_STORAGE_ENGINE
"
:
case
"
WITH_PARTITION_STORAGE_ENGINE
"
:
case
"
__NT__
"
:
case
"
CYBOZU
"
:
configfile
.
WriteLine
(
"
SET (
"
+
args
.
Item
(
i
)
+
"
TRUE)
"
);
break
;
case
"
MYSQL_SERVER_SUFFIX
"
:
configfile
.
WriteLine
(
"
SET (
"
+
parts
[
0
]
+
"
\"
"
+
parts
[
1
]
+
"
\"
)
"
);
break
;
case
"
COMPILATION_COMMENT
"
:
default_comment
=
parts
[
1
];
break
;
case
"
MYSQL_TCP_PORT
"
:
default_port
=
parts
[
1
];
break
;
}
}
configfile
.
WriteLine
(
"
SET (COMPILATION_COMMENT
\"
"
+
default_comment
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (PROTOCOL_VERSION
\"
"
+
GetValue
(
configureIn
,
"
PROTOCOL_VERSION
"
)
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (DOT_FRM_VERSION
\"
"
+
GetValue
(
configureIn
,
"
DOT_FRM_VERSION
"
)
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (MYSQL_TCP_PORT
\"
"
+
default_port
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (MYSQL_UNIX_ADDR
\"
"
+
GetValue
(
configureIn
,
"
MYSQL_UNIX_ADDR_DEFAULT
"
)
+
"
\"
)
"
);
var
version
=
GetVersion
(
configureIn
);
configfile
.
WriteLine
(
"
SET (VERSION
\"
"
+
version
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (MYSQL_BASE_VERSION
\"
"
+
GetBaseVersion
(
version
)
+
"
\"
)
"
);
configfile
.
WriteLine
(
"
SET (MYSQL_VERSION_ID
\"
"
+
GetVersionId
(
version
)
+
"
\"
)
"
);
configfile
.
Close
();
fso
=
null
;
//ConfigureBDB();
fso
=
null
;
WScript
.
Echo
(
"
done!
"
);
}
...
...
@@ -54,9 +84,9 @@ function GetValue(str, key)
pos
+=
key
.
length
+
1
;
var
end
=
str
.
indexOf
(
"
\n
"
,
pos
);
if
(
str
.
charAt
(
pos
)
==
"
\"
"
)
pos
++
;
if
(
str
.
charAt
(
end
-
1
)
==
"
\"
"
)
end
--
;
pos
++
;
if
(
str
.
charAt
(
end
-
1
)
==
"
\"
"
)
end
--
;
return
str
.
substring
(
pos
,
end
);
}
...
...
@@ -106,3 +136,31 @@ function GetVersionId(version)
return
id
;
}
function
ConfigureBDB
()
{
// read in the Unix configure.in file
var
dbIncTS
=
fso
.
OpenTextFile
(
"
..
\\
bdb
\\
dbinc
\\
db.in
"
,
ForReading
);
var
dbIn
=
dbIncTS
.
ReadAll
();
dbIncTS
.
Close
();
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MAJOR@
"
,
"
$DB_VERSION_MAJOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_MINOR@
"
,
"
$DB_VERSION_MINOR
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_PATCH@
"
,
"
$DB_VERSION_PATCH
"
);
dbIn
=
dbIn
.
replace
(
"
@DB_VERSION_STRING@
"
,
"
$DB_VERSION_STRING
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int8_decl@
"
,
"
typedef unsigned char u_int8_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int16_decl@
"
,
"
typedef short int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int16_decl@
"
,
"
typedef unsigned short u_int16_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@int32_decl@
"
,
"
typedef int int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int32_decl@
"
,
"
typedef unsigned int u_int32_t;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_char_decl@
"
,
"
{
\r\n
#if !defined(_WINSOCKAPI_)
\r\n
"
+
"
typedef unsigned char u_char;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_short_decl@
"
,
"
typedef unsigned short u_short;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_int_decl@
"
,
"
typedef unsigned int u_int;
"
);
dbIn
=
dbIn
.
replace
(
"
@u_long_decl@
"
,
"
typedef unsigned long u_long;
"
);
dbIn
=
dbIn
.
replace
(
"
@ssize_t_decl@
"
,
"
#endif
\r\n
#if defined(_WIN64)
\r\n
"
+
"
typedef __int64 ssize_t;
\r\n
#else
\r\n
"
+
"
typedef int ssize_t;
\r\n
#endif
"
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment