diff options
author | unknown <georg@lmy002.wdf.sap.corp> | 2006-08-31 19:52:42 +0200 |
---|---|---|
committer | unknown <georg@lmy002.wdf.sap.corp> | 2006-08-31 19:52:42 +0200 |
commit | 8f4477281eb5f110094927abe7dabd67c8525fc5 (patch) | |
tree | 1a7d7e96d4dcd302dbe513ad50a16ea05cb7ed16 /win/configure.js | |
parent | 085446b8c8de9154be2673efd7c8676ececd83ff (diff) | |
download | mariadb-git-8f4477281eb5f110094927abe7dabd67c8525fc5.tar.gz |
Additional files for cmake support
CMakeLists.txt:
New BitKeeper file ``CMakeLists.txt''
bdb/CMakeLists.txt:
New BitKeeper file ``bdb/CMakeLists.txt''
client/CMakeLists.txt:
New BitKeeper file ``client/CMakeLists.txt''
dbug/CMakeLists.txt:
New BitKeeper file ``dbug/CMakeLists.txt''
extra/CMakeLists.txt:
New BitKeeper file ``extra/CMakeLists.txt''
extra/yassl/CMakeLists.txt:
New BitKeeper file ``extra/yassl/CMakeLists.txt''
extra/yassl/taocrypt/CMakeLists.txt:
New BitKeeper file ``extra/yassl/taocrypt/CMakeLists.txt''
heap/CMakeLists.txt:
New BitKeeper file ``heap/CMakeLists.txt''
innobase/CMakeLists.txt:
New BitKeeper file ``innobase/CMakeLists.txt''
libmysql/CMakeLists.txt:
New BitKeeper file ``libmysql/CMakeLists.txt''
myisam/CMakeLists.txt:
New BitKeeper file ``myisam/CMakeLists.txt''
myisammrg/CMakeLists.txt:
New BitKeeper file ``myisammrg/CMakeLists.txt''
mysys/CMakeLists.txt:
New BitKeeper file ``mysys/CMakeLists.txt''
regex/CMakeLists.txt:
New BitKeeper file ``regex/CMakeLists.txt''
server-tools/CMakeLists.txt:
New BitKeeper file ``server-tools/CMakeLists.txt''
server-tools/instance-manager/CMakeLists.txt:
New BitKeeper file ``server-tools/instance-manager/CMakeLists.txt''
sql/CMakeLists.txt:
New BitKeeper file ``sql/CMakeLists.txt''
sql/examples/CMakeLists.txt:
New BitKeeper file ``sql/examples/CMakeLists.txt''
strings/CMakeLists.txt:
New BitKeeper file ``strings/CMakeLists.txt''
tests/CMakeLists.txt:
New BitKeeper file ``tests/CMakeLists.txt''
vio/CMakeLists.txt:
New BitKeeper file ``vio/CMakeLists.txt''
win/Makefile.am:
New BitKeeper file ``win/Makefile.am''
win/README:
New BitKeeper file ``win/README''
win/build-vs71.bat:
New BitKeeper file ``win/build-vs71.bat''
win/build-vs8.bat:
New BitKeeper file ``win/build-vs8.bat''
win/build-vs8_x64.bat:
New BitKeeper file ``win/build-vs8_x64.bat''
win/configure.js:
New BitKeeper file ``win/configure.js''
zlib/CMakeLists.txt:
New BitKeeper file ``zlib/CMakeLists.txt''
Diffstat (limited to 'win/configure.js')
-rwxr-xr-x | win/configure.js | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/win/configure.js b/win/configure.js new file mode 100755 index 00000000000..ef90ce982a6 --- /dev/null +++ b/win/configure.js @@ -0,0 +1,166 @@ +// Configure.js + +ForReading = 1; +ForWriting = 2; +ForAppending = 8; + +try +{ + var fso = new ActiveXObject("Scripting.FileSystemObject"); + + 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__": + 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(); + + //ConfigureBDB(); + + fso = null; + + WScript.Echo("done!"); +} +catch (e) +{ + WScript.Echo("Error: " + e.description); +} + +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; +} + +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"); +} |