diff options
99 files changed, 1494 insertions, 1775 deletions
diff --git a/Makefile.am b/Makefile.am index c7da2a438ef..eb58ac488f2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -31,8 +31,7 @@ EXTRA_DIST = \ win/VC71/realmd.vcproj \ win/VC71/shared.vcproj \ win/VC71/zlib.vcproj \ - win/VC71/g3dlite.vcproj \ - win/VC71/zthread.vcproj + win/VC71/g3dlite.vcproj # Win32 project workspace for Visual Studio .NET 2005 EXTRA_DIST += \ @@ -43,8 +42,7 @@ EXTRA_DIST += \ win/VC80/realmd.vcproj \ win/VC80/shared.vcproj \ win/VC80/zlib.vcproj \ - win/VC80/g3dlite.vcproj \ - win/VC80/zthread.vcproj + win/VC80/g3dlite.vcproj # Win32 project workspace for Visual Studio .NET 2008 EXTRA_DIST += \ @@ -55,6 +53,5 @@ EXTRA_DIST += \ win/VC90/realmd.vcproj \ win/VC90/shared.vcproj \ win/VC90/zlib.vcproj \ - win/VC90/g3dlite.vcproj \ - win/VC90/zthread.vcproj + win/VC90/g3dlite.vcproj diff --git a/configure.ac b/configure.ac index ede1118be95..d1ec818ac99 100644 --- a/configure.ac +++ b/configure.ac @@ -340,7 +340,6 @@ AC_CONFIG_FILES([ dep/src/g3dlite/Makefile dep/src/sockets/Makefile dep/src/zlib/Makefile - dep/src/zthread/Makefile dep/Makefile doc/Doxyfile doc/Makefile diff --git a/dep/ACE_wrappers/m4/aio.m4 b/dep/ACE_wrappers/m4/aio.m4 index b38a8b981aa..49fa7d19afd 100644 --- a/dep/ACE_wrappers/m4/aio.m4 +++ b/dep/ACE_wrappers/m4/aio.m4 @@ -64,7 +64,6 @@ if test "$ace_has_aio_funcs" = yes; then #include <string.h> #include <errno.h> #include <stdio.h> -#include <iostream.h> #include <aio.h> diff --git a/dep/include/Makefile.am b/dep/include/Makefile.am index 3991d1e6274..455f0a81307 100644 --- a/dep/include/Makefile.am +++ b/dep/include/Makefile.am @@ -199,54 +199,6 @@ EXTRA_DIST += \ zlib/zconf.h \ zlib/zlib.h -# ZThread header files for Win32 builds -EXTRA_DIST += \ - zthread/AtomicCount.h \ - zthread/Barrier.h \ - zthread/BiasedReadWriteLock.h \ - zthread/BlockingQueue.h \ - zthread/BoundedQueue.h \ - zthread/Cancelable.h \ - zthread/ClassLockable.h \ - zthread/ConcurrentExecutor.h \ - zthread/Condition.h \ - zthread/Config.h \ - zthread/CountedPtr.h \ - zthread/CountingSemaphore.h \ - zthread/Exceptions.h \ - zthread/Executor.h \ - zthread/FairReadWriteLock.h \ - zthread/FastMutex.h \ - zthread/FastRecursiveMutex.h \ - zthread/Guard.h \ - zthread/GuardedClass.h \ - zthread/Lockable.h \ - zthread/LockedQueue.h \ - zthread/MonitoredQueue.h \ - zthread/Mutex.h \ - zthread/NonCopyable.h \ - zthread/PoolExecutor.h \ - zthread/Priority.h \ - zthread/PriorityCondition.h \ - zthread/PriorityInheritanceMutex.h \ - zthread/PriorityMutex.h \ - zthread/PrioritySemaphore.h \ - zthread/Queue.h \ - zthread/ReadWriteLock.h \ - zthread/RecursiveMutex.h \ - zthread/Runnable.h \ - zthread/Semaphore.h \ - zthread/Singleton.h \ - zthread/SynchronousExecutor.h \ - zthread/Task.h \ - zthread/Thread.h \ - zthread/ThreadLocal.h \ - zthread/ThreadLocalImpl.h \ - zthread/ThreadedExecutor.h \ - zthread/Time.h \ - zthread/Waitable.h \ - zthread/ZThread.h - # Mersenne Twister random number generator header files EXTRA_DIST += \ mersennetwister/MersenneTwister.h diff --git a/dep/include/openssl/asn1.h b/dep/include/openssl/asn1.h index 424cd348bb5..e3385226d4a 100644 --- a/dep/include/openssl/asn1.h +++ b/dep/include/openssl/asn1.h @@ -612,6 +612,7 @@ typedef struct BIT_STRING_BITNAME_st { B_ASN1_GENERALIZEDTIME #define B_ASN1_PRINTABLE \ + B_ASN1_NUMERICSTRING| \ B_ASN1_PRINTABLESTRING| \ B_ASN1_T61STRING| \ B_ASN1_IA5STRING| \ @@ -1217,6 +1218,7 @@ void ERR_load_ASN1_strings(void); #define ASN1_R_BAD_OBJECT_HEADER 102 #define ASN1_R_BAD_PASSWORD_READ 103 #define ASN1_R_BAD_TAG 104 +#define ASN1_R_BMPSTRING_IS_WRONG_LENGTH 210 #define ASN1_R_BN_LIB 105 #define ASN1_R_BOOLEAN_IS_WRONG_LENGTH 106 #define ASN1_R_BUFFER_TOO_SMALL 107 @@ -1306,6 +1308,7 @@ void ERR_load_ASN1_strings(void); #define ASN1_R_UNABLE_TO_DECODE_RSA_KEY 157 #define ASN1_R_UNABLE_TO_DECODE_RSA_PRIVATE_KEY 158 #define ASN1_R_UNEXPECTED_EOC 159 +#define ASN1_R_UNIVERSALSTRING_IS_WRONG_LENGTH 211 #define ASN1_R_UNKNOWN_FORMAT 160 #define ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM 161 #define ASN1_R_UNKNOWN_OBJECT_TYPE 162 diff --git a/dep/include/openssl/opensslconf.h b/dep/include/openssl/opensslconf.h index 231bf7bfdbe..2d571c894c7 100644 --- a/dep/include/openssl/opensslconf.h +++ b/dep/include/openssl/opensslconf.h @@ -104,8 +104,8 @@ #if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) -#define ENGINESDIR "G:\openssl_build/lib/engines" -#define OPENSSLDIR "G:\openssl_build/ssl" +#define ENGINESDIR "g:/openssl/lib/engines" +#define OPENSSLDIR "g:/openssl/ssl" #endif #endif diff --git a/dep/include/openssl/opensslv.h b/dep/include/openssl/opensslv.h index 09687b5136a..c6207f76b2c 100644 --- a/dep/include/openssl/opensslv.h +++ b/dep/include/openssl/opensslv.h @@ -25,11 +25,11 @@ * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for * major minor fix final patch/beta) */ -#define OPENSSL_VERSION_NUMBER 0x009080afL +#define OPENSSL_VERSION_NUMBER 0x009080bfL #ifdef OPENSSL_FIPS -#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8j-fips 07 Jan 2009" +#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8k-fips 25 Mar 2009" #else -#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8j 07 Jan 2009" +#define OPENSSL_VERSION_TEXT "OpenSSL 0.9.8k 25 Mar 2009" #endif #define OPENSSL_VERSION_PTEXT " part of " OPENSSL_VERSION_TEXT diff --git a/dep/include/openssl/pem.h b/dep/include/openssl/pem.h index 6f8e01544bb..6c193f1cbfa 100644 --- a/dep/include/openssl/pem.h +++ b/dep/include/openssl/pem.h @@ -215,7 +215,9 @@ typedef struct pem_ctx_st #define IMPLEMENT_PEM_read_fp(name, type, str, asn1) /**/ #define IMPLEMENT_PEM_write_fp(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) /**/ #define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) /**/ +#define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) /**/ #else @@ -355,6 +357,7 @@ int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \ #define DECLARE_PEM_read_fp(name, type) /**/ #define DECLARE_PEM_write_fp(name, type) /**/ +#define DECLARE_PEM_write_fp_const(name, type) /**/ #define DECLARE_PEM_write_cb_fp(name, type) /**/ #else @@ -392,6 +395,7 @@ int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \ #define DECLARE_PEM_read_bio(name, type) /**/ #define DECLARE_PEM_write_bio(name, type) /**/ +#define DECLARE_PEM_write_bio_const(name, type) /**/ #define DECLARE_PEM_write_cb_bio(name, type) /**/ #endif diff --git a/dep/include/openssl/symhacks.h b/dep/include/openssl/symhacks.h index 6cfb5fe4794..8728e6124da 100644 --- a/dep/include/openssl/symhacks.h +++ b/dep/include/openssl/symhacks.h @@ -62,6 +62,10 @@ VAX. */ #ifdef OPENSSL_SYS_VMS +/* Hack a long name in crypto/cryptlib.c */ +#undef int_CRYPTO_set_do_dynlock_callback +#define int_CRYPTO_set_do_dynlock_callback int_CRYPTO_set_do_dynlock_cb + /* Hack a long name in crypto/ex_data.c */ #undef CRYPTO_get_ex_data_implementation #define CRYPTO_get_ex_data_implementation CRYPTO_get_ex_data_impl diff --git a/dep/lib/win32_debug/libeay32.dll b/dep/lib/win32_debug/libeay32.dll Binary files differindex 1cbc5dfc23d..79f55974cdd 100644 --- a/dep/lib/win32_debug/libeay32.dll +++ b/dep/lib/win32_debug/libeay32.dll diff --git a/dep/lib/win32_debug/libeay32.lib b/dep/lib/win32_debug/libeay32.lib Binary files differindex 70407d3e070..590c39eb75f 100644 --- a/dep/lib/win32_debug/libeay32.lib +++ b/dep/lib/win32_debug/libeay32.lib diff --git a/dep/lib/win32_release/libeay32.dll b/dep/lib/win32_release/libeay32.dll Binary files differindex ed6543efefa..9b7dc65c4c9 100644 --- a/dep/lib/win32_release/libeay32.dll +++ b/dep/lib/win32_release/libeay32.dll diff --git a/dep/lib/win32_release/libeay32.lib b/dep/lib/win32_release/libeay32.lib Binary files differindex 2796163595d..fb5a2445bbc 100644 --- a/dep/lib/win32_release/libeay32.lib +++ b/dep/lib/win32_release/libeay32.lib diff --git a/dep/lib/x64_Debug/libeay32.dll b/dep/lib/x64_Debug/libeay32.dll Binary files differindex 1a6952eeadb..d9df5ecc862 100644 --- a/dep/lib/x64_Debug/libeay32.dll +++ b/dep/lib/x64_Debug/libeay32.dll diff --git a/dep/lib/x64_Debug/libeay32.lib b/dep/lib/x64_Debug/libeay32.lib Binary files differindex e27b6ccde09..a495e921070 100644 --- a/dep/lib/x64_Debug/libeay32.lib +++ b/dep/lib/x64_Debug/libeay32.lib diff --git a/dep/lib/x64_release/libeay32.dll b/dep/lib/x64_release/libeay32.dll Binary files differindex e2d98bea828..45357905e74 100644 --- a/dep/lib/x64_release/libeay32.dll +++ b/dep/lib/x64_release/libeay32.dll diff --git a/dep/lib/x64_release/libeay32.lib b/dep/lib/x64_release/libeay32.lib Binary files differindex d004d975adb..750e837dcdf 100644 --- a/dep/lib/x64_release/libeay32.lib +++ b/dep/lib/x64_release/libeay32.lib diff --git a/dep/src/Makefile.am b/dep/src/Makefile.am index 6ae2808895c..50814f8ff13 100644 --- a/dep/src/Makefile.am +++ b/dep/src/Makefile.am @@ -19,7 +19,7 @@ ## Process this file with automake to produce Makefile.in ## Sub-directories to parse -SUBDIRS = g3dlite sockets zlib zthread +SUBDIRS = g3dlite sockets zlib ## Additional files to include when running 'make dist' # Nothing yet. diff --git a/dep/src/zthread/AtomicCount.cxx b/dep/src/zthread/AtomicCount.cxx deleted file mode 100644 index ac0d0773b12..00000000000 --- a/dep/src/zthread/AtomicCount.cxx +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 2005, Eric Crahen - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is furnished - * to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - */ - -#ifndef __ZTATOMICCOUNTSELECT_H__ -#define __ZTATOMICCOUNTSELECT_H__ - -#include "zthread/AtomicCount.h" -#include "zthread/Config.h" - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -/* -// Select the correct AtomicCount implementation based on -// what the compilation environment has defined - -#ifndef ZT_VANILLA - -#if defined(HAVE_ATOMIC_LINUX) -# include "linux/AtomicCount.cxx" -#elif defined(ZT_WIN32) -# include "win32/AtomicCount.cxx" -#elif defined(ZT_WIN9X) -# include "win9x/AtomicCount.cxx" -#endif - -#endif - -// Default to an AtomicCount that just uses a FastLock -#ifndef __ZTATOMICCOUNTIMPL_H__ -# include "vanilla/SimpleAtomicCount.cxx" -#endif -*/ - -# include "vanilla/SimpleAtomicCount.cxx" - -#endif // __ZTATOMICCOUNTSELECT_H__ diff --git a/dep/src/zthread/CMakeLists.txt b/dep/src/zthread/CMakeLists.txt index 61fb1310588..c2ac36c367c 100644 --- a/dep/src/zthread/CMakeLists.txt +++ b/dep/src/zthread/CMakeLists.txt @@ -1,7 +1,6 @@ ########### next target ############### SET(ZThread_LIB_SRCS - AtomicCount.cxx Condition.cxx ConcurrentExecutor.cxx CountingSemaphore.cxx diff --git a/sql/mangos.sql b/sql/mangos.sql index 077f617b7c1..60d99b0f6ba 100644 --- a/sql/mangos.sql +++ b/sql/mangos.sql @@ -3159,6 +3159,27 @@ LOCK TABLES `npc_option` WRITE; UNLOCK TABLES; -- +-- Table structure for table `npc_spellclick_spells` +-- + +DROP TABLE IF EXISTS `npc_spellclick_spells`; +CREATE TABLE `npc_spellclick_spells` ( + `npc_entry` INT UNSIGNED NOT NULL COMMENT 'reference to creature_template', + `spell_id` INT UNSIGNED NOT NULL COMMENT 'spell which should be casted ', + `quest_id` INT UNSIGNED NOT NULL COMMENT 'reference to quest_template', + `cast_flags` TINYINT UNSIGNED NOT NULL COMMENT 'first bit defines caster: 1=player, 0=creature; second bit defines target, same mapping as caster bit' +) ENGINE = MYISAM DEFAULT CHARSET=utf8; + +-- +-- Dumping data for table `npc_spellclick_spells` +-- + +LOCK TABLES `npc_spellclick_spells` WRITE; +/*!40000 ALTER TABLE `npc_spellclick_spells` DISABLE KEYS */; +/*!40000 ALTER TABLE `npc_spellclick_spells` ENABLE KEYS */; +UNLOCK TABLES; + +-- -- Table structure for table `npc_text` -- @@ -17012,9 +17033,9 @@ INSERT INTO `spell_proc_event` VALUES (30293, 0x00000000, 5, 0x00000381, 0x000000C0, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (30295, 0x00000000, 5, 0x00000381, 0x000000C0, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (30296, 0x00000000, 5, 0x00000381, 0x000000C0, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), -(30299, 0x00000024, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), -(30301, 0x00000024, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), -(30302, 0x00000024, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), +(30299, 0x0000007E, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), +(30301, 0x0000007E, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), +(30302, 0x0000007E, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (30675, 0x00000000, 11, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (30678, 0x00000000, 11, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (30679, 0x00000000, 11, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), @@ -17100,6 +17121,7 @@ INSERT INTO `spell_proc_event` VALUES (33882, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (33883, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (33953, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 45), +(34074, 0x00000000, 9, 0x0007FA43, 0x00881081, 0x00000201, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (34080, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0.000000, 0.000000, 0), (34138, 0x00000000, 11, 0x00000080, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (34139, 0x00000000, 10, 0x40000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), diff --git a/sql/updates/3233_world_scripts_naxx.sql b/sql/updates/3233_world_scripts_naxx.sql index 54d6c49a82b..a5a71ba6233 100644 --- a/sql/updates/3233_world_scripts_naxx.sql +++ b/sql/updates/3233_world_scripts_naxx.sql @@ -6,6 +6,7 @@ INSERT INTO `spell_linked_spell` (`spell_trigger`, `spell_effect`, `type`, `comm (-28169, 28240, 0, 'Mutating Injection - Poison Cloud'); UPDATE creature_template SET scriptname = 'boss_grobbulus' WHERE entry = 15931; +update creature_template set scriptname='mob_gothik_minion' where entry in (16124,16125,16126,16127,16148,16149,16150); INSERT INTO creature_template (entry, spell1, flags_extra, scriptname) VALUES (16363, 28158, 128, ''), # Grobbulus Cloud @@ -44,16 +45,30 @@ INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`) VALUES (27936, 1, 16060); # To Anchor 2 - Gothik INSERT INTO creature_template (entry, spell1, spell2, spell3, spell4, spell5, spell6, spell7, spell8) VALUES -(16573, 15284, 28991, 28969, 34970, 28864, 0, 0, 0), # Crypt Guard -(29256, 15284, 28991, 56098, 34970, 28864, 0, 0, 0), # Crypt Guard (H) -(16506, 54095, 28732, 0, 0, 0, 0, 0, 0), # Naxxramas Worshipper -(29274, 54096, 54097, 0, 0, 0, 0, 0, 0), # Naxxramas Worshipper (H) +(16573, 15284, 28991, 28969, 34970, 0, 0, 0, 28864), # Crypt Guard +(29256, 15284, 28991, 56098, 34970, 0, 0, 0, 28864), # Crypt Guard (H) +(16506, 54095, 0, 0, 0, 0, 0, 0, 28732), # Naxxramas Worshipper +(29274, 54096, 0, 0, 0, 0, 0, 0, 54097), # Naxxramas Worshipper (H) (16984, 15496, 0, 0, 0, 0, 0, 0, 0), # Plagued Warrior (29632, 15496, 0, 0, 0, 0, 0, 0, 0), # Plagued Warrior (H) (16290, 28156, 0, 0, 0, 0, 0, 0, 0), # Fallout Slime (29388, 54367, 0, 0, 0, 0, 0, 0, 0), # Fallout Slime (H) (16803, 0, 0, 0, 61696, 29060, 29061, 0, 0), # Death Knight Understudy -(29941, 0, 0, 0, 61696, 29060, 29061, 0, 0) # Death Knight Understudy (H) +(29941, 0, 0, 0, 61696, 29060, 29061, 0, 0), # Death Knight Understudy (H) +(16124, 55604, 0, 0, 0, 0, 0, 0, 27892), # Unrelenting Trainee +(16125, 27825, 0, 0, 0, 0, 0, 0, 27928), # Unrelenting Death Knight +(16126, 27831, 55606, 0, 0, 0, 0, 0, 27935), # Unrelenting Rider +(16127, 27989, 0, 0, 0, 0, 0, 0, 0), # Spectral Trainee +(16148, 56408, 0, 0, 0, 0, 0, 0, 0), # Spectral Death Knight +(16150, 27994, 55648, 55606, 0, 0, 0, 0, 0), # Spectral Rider +(16149, 27993, 0, 0, 0, 0, 0, 0, 0), # Spectral Horse +(29985, 55645, 0, 0, 0, 0, 0, 0, 27892), # Unrelenting Trainee (H) +(29986, 27825, 0, 0, 0, 0, 0, 0, 27928), # Unrelenting Death Knight (H) +(29987, 55638, 55608, 0, 0, 0, 0, 0, 27935), # Unrelenting Rider (H) +(30264, 56407, 0, 0, 0, 0, 0, 0, 0), # Spectral Trainee (H) +(29990, 56408, 0, 0, 0, 0, 0, 0, 0), # Spectral Death Knight (H) +(29988, 55646, 27995, 55608, 0, 0, 0, 0, 0), # Spectral Rider (H) +(29989, 27993, 0, 0, 0, 0, 0, 0, 0) # Spectral Horse (H) ON DUPLICATE KEY UPDATE spell1 = VALUES(spell1), spell2 = VALUES(spell2), diff --git a/sql/updates/3257_world_waypoint_data_converter.sql b/sql/updates/3257_world_waypoint_data_converter.sql index 3533f948747..4a620ad73f7 100644 --- a/sql/updates/3257_world_waypoint_data_converter.sql +++ b/sql/updates/3257_world_waypoint_data_converter.sql @@ -1,6 +1,15 @@ +ALTER TABLE creature_addon ADD INDEX ( `path_id` ); +ALTER TABLE waypoint_data ADD INDEX ( `id` ); + ALTER TABLE waypoint_data ADD COLUMN id_old int(10) unsigned NOT NULL default '0' COMMENT 'Creature GUID' AFTER wpguid; + UPDATE waypoint_data SET id_old=id; +ALTER TABLE waypoint_data ADD INDEX ( `id_old` ); + UPDATE waypoint_data,creature_addon SET waypoint_data.id=creature_addon.guid*10 WHERE creature_addon.path_id > 0 AND creature_addon.path_id=waypoint_data.id_old; UPDATE waypoint_data SET id = 1343801 WHERE id_old = 2084; UPDATE waypoint_scripts SET datalong = 1343801 WHERE id = 515; -ALTER TABLE waypoint_data DROP COLUMN id_old;
\ No newline at end of file + +ALTER TABLE waypoint_data DROP COLUMN id_old; +ALTER TABLE `creature_addon` DROP INDEX `path_id` ; +ALTER TABLE waypoint_data DROP INDEX `id`;
\ No newline at end of file diff --git a/sql/updates/TC1_1477_world_spell.sql b/sql/updates/TC1_1477_world_spell.sql new file mode 100644 index 00000000000..a7f9bd30b59 --- /dev/null +++ b/sql/updates/TC1_1477_world_spell.sql @@ -0,0 +1,3 @@ +DELETE FROM `spell_proc_event` WHERE `entry` = 42370; +INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES +(42370, 0x00, 11, 0x00000080, 0x00000000, 0x00000000, 0.000000, 0.000000, 0); diff --git a/sql/world_scripts_full.sql b/sql/world_scripts_full.sql index a1df130d207..8b28c3bc370 100644 --- a/sql/world_scripts_full.sql +++ b/sql/world_scripts_full.sql @@ -645,6 +645,7 @@ UPDATE `creature_template` SET `ScriptName`='boss_heigan' WHERE `entry`=15936; UPDATE `creature_template` SET `ScriptName`='boss_loatheb' WHERE `entry`=16011; UPDATE `creature_template` SET `ScriptName`='boss_razuvious' WHERE `entry`=16061; UPDATE `creature_template` SET `ScriptName`='boss_gothik' WHERE `entry`=16060; +UPDATE `creature_template` SET `ScriptName`='mob_gothik_minion' where `entry` IN (16124,16125,16126,16127,16148,16149,16150); UPDATE `creature_template` SET `ScriptName`='boss_thane_korthazz' WHERE `entry`=16064; UPDATE `creature_template` SET `ScriptName`='boss_sir_zeliek' WHERE `entry`=16063; UPDATE `creature_template` SET `ScriptName`='boss_lady_blaumeux' WHERE `entry`=16065; diff --git a/sql/world_spell_full.sql b/sql/world_spell_full.sql index c892b3291fa..a8ddbf59445 100644 --- a/sql/world_spell_full.sql +++ b/sql/world_spell_full.sql @@ -153,7 +153,7 @@ INSERT INTO creature_template (entry, spell1, flags_extra, scriptname) VALUES (17662, 30914, 128, ''), # Broggok Poison Cloud (25879, 46262, 128, ''), # Void Zone Periodic (16363, 28158, 128, ''), # Grobbulus Cloud -(29379, 54362, 128, ''), # Grobbulus Cloud (H) +(29379, 54362, 128, '') # Grobbulus Cloud (H) ON DUPLICATE KEY UPDATE spell1 = VALUES(spell1), flags_extra = VALUES(flags_extra), @@ -477,3 +477,10 @@ INSERT INTO spell_target_position () VALUES (46019, 580, 1704.34, 928.17, -74.55 INSERT INTO spell_target_position () VALUES (46020, 580, 1704.34, 928.17, 53.079, 0); INSERT INTO spell_target_position () VALUES (53360, 571, 5807.829, 587.960, 660.939, 1.663); +-- -------- +-- PROC +-- -------- +DELETE FROM `spell_proc_event` WHERE `entry` IN (42370); +INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES +(42370, 0x00, 11, 0x00000080, 0x00000000, 0x00000000, 0.000000, 0.000000, 0); -- Merciless Totem of the Third Wind -- + diff --git a/src/bindings/scripts/ScriptMgr.cpp b/src/bindings/scripts/ScriptMgr.cpp index 4d7ed09fff4..849c4d64be5 100644 --- a/src/bindings/scripts/ScriptMgr.cpp +++ b/src/bindings/scripts/ScriptMgr.cpp @@ -389,6 +389,7 @@ extern void AddSC_boss_sapphiron(); extern void AddSC_boss_four_horsemen(); extern void AddSC_boss_faerlina(); extern void AddSC_boss_heigan(); +extern void AddSC_boss_gothik(); extern void AddSC_instance_naxxramas(); //Netherstorm @@ -1327,6 +1328,7 @@ void ScriptsInit(char const* cfg_file = "trinitycore.conf") AddSC_boss_sapphiron(); AddSC_boss_four_horsemen(); AddSC_boss_heigan(); + AddSC_boss_gothik(); AddSC_instance_naxxramas(); //Netherstorm diff --git a/src/bindings/scripts/VC80/80ScriptDev2.vcproj b/src/bindings/scripts/VC80/80ScriptDev2.vcproj index c442ae52a2d..28875c526ab 100644 --- a/src/bindings/scripts/VC80/80ScriptDev2.vcproj +++ b/src/bindings/scripts/VC80/80ScriptDev2.vcproj @@ -68,10 +68,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="TrinityCore.lib zthread.lib" + AdditionalDependencies="TrinityCore.lib aced.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="2" - AdditionalLibraryDirectories="..\..\..\..\win\VC80\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/TrinityScript.pdb" SubSystem="2" @@ -151,10 +151,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="TrinityCore.lib zthread.lib" + AdditionalDependencies="TrinityCore.lib ace.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="..\..\..\..\win\VC80\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" @@ -236,10 +236,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="TrinityCore.lib zthread.lib" + AdditionalDependencies="TrinityCore.lib aced.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="2" - AdditionalLibraryDirectories="..\..\..\..\win\VC80\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/TrinityScript.pdb" SubSystem="2" @@ -320,10 +320,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="TrinityCore.lib zthread.lib" + AdditionalDependencies="TrinityCore.lib ace.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="..\..\..\..\win\VC80\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC80\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" diff --git a/src/bindings/scripts/VC90/90ScriptDev2.vcproj b/src/bindings/scripts/VC90/90ScriptDev2.vcproj index 398e54d6ec4..8f8330db453 100644 --- a/src/bindings/scripts/VC90/90ScriptDev2.vcproj +++ b/src/bindings/scripts/VC90/90ScriptDev2.vcproj @@ -68,10 +68,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zthread.lib" + AdditionalDependencies="trinitycore.lib aced.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="2" - AdditionalLibraryDirectories="..\..\..\..\win\VC90\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/TrinityScript.pdb" SubSystem="2" @@ -152,10 +152,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zthread.lib" + AdditionalDependencies="trinitycore.lib ace.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="..\..\..\..\win\VC90\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" @@ -237,10 +237,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zthread.lib" + AdditionalDependencies="trinitycore.lib aced.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="2" - AdditionalLibraryDirectories="..\..\..\..\win\VC90\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/TrinityScript.pdb" SubSystem="2" @@ -320,10 +320,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zthread.lib" + AdditionalDependencies="trinitycore.lib ace.lib" OutputFile="$(OutDir)/TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="..\..\..\..\win\VC90\zthread__$(PlatformName)_$(ConfigurationName);..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName)" + AdditionalLibraryDirectories="..\..\..\..\win\VC90\trinitycore__$(PlatformName)_$(ConfigurationName);..\..\..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" diff --git a/src/bindings/scripts/include/sc_creature.cpp b/src/bindings/scripts/include/sc_creature.cpp index 0b874773ffc..e575e40fac1 100644 --- a/src/bindings/scripts/include/sc_creature.cpp +++ b/src/bindings/scripts/include/sc_creature.cpp @@ -17,13 +17,26 @@ struct TSpellSummary { uint8 Effects; // set of enum SelectEffect } *SpellSummary; +void SummonList::DoZoneInCombat(uint32 entry) +{ + for(iterator i = begin(); i != end();) + { + Creature *summon = Unit::GetCreature(*m_creature, *i); + ++i; + if(summon && summon->IsAIEnabled + && (!entry || summon->GetEntry() == entry)) + summon->AI()->DoZoneInCombat(); + } +} + void SummonList::DoAction(uint32 entry, uint32 info) { for(iterator i = begin(); i != end();) { Creature *summon = Unit::GetCreature(*m_creature, *i); ++i; - if(summon && summon->IsAIEnabled) + if(summon && summon->IsAIEnabled + && (!entry || summon->GetEntry() == entry)) summon->AI()->DoAction(info); } } @@ -213,6 +226,19 @@ Creature* ScriptedAI::DoSpawnCreature(uint32 id, float x, float y, float z, floa return m_creature->SummonCreature(id,m_creature->GetPositionX() + x,m_creature->GetPositionY() + y,m_creature->GetPositionZ() + z, angle, (TempSummonType)type, despawntime); } +Creature *ScriptedAI::DoSummon(uint32 entry, const float pos[4], uint32 despawntime, TempSummonType type) +{ + return me->SummonCreature(entry, pos[0], pos[1], pos[2], pos[3], type, despawntime); +} + +Creature *ScriptedAI::DoSummon(uint32 entry, WorldObject *obj, float radius, uint32 despawntime, TempSummonType type) +{ + float x, y, z; + obj->GetGroundPointAroundUnit(x, y, z, radius * rand_norm(), rand_norm()*2*M_PI); + return me->SummonCreature(entry, x, y, z, me->GetOrientation(), type, despawntime); +} + + Unit* ScriptedAI::SelectUnit(SelectAggroTarget target, uint32 position) { //ThreatList m_threatlist; @@ -493,6 +519,11 @@ void ScriptedAI::DoTeleportTo(float x, float y, float z, uint32 time) m_creature->SendMonsterMove(x, y, z, time); } +void ScriptedAI::DoTeleportTo(const float pos[4]) +{ + me->NearTeleportTo(pos[0], pos[1], pos[2], pos[3]); +} + void ScriptedAI::DoTeleportPlayer(Unit* pUnit, float x, float y, float z, float o) { if(!pUnit || pUnit->GetTypeId() != TYPEID_PLAYER) @@ -642,7 +673,8 @@ void BossAI::_EnterCombat() void BossAI::JustSummoned(Creature *summon) { summons.Summon(summon); - DoZoneInCombat(summon); + if(me->isInCombat()) + DoZoneInCombat(summon); } void BossAI::SummonedCreatureDespawn(Creature *summon) @@ -667,25 +699,36 @@ void LoadOverridenSQLData() goInfo->trap.radius = 50; } -#define SPELL(x) const_cast<SpellEntry*>(GetSpellStore()->LookupEntry(x)) - void LoadOverridenDBCData() { SpellEntry *spellInfo; - - // Black Temple : Illidan : Parasitic Shadowfiend Passive - if(spellInfo = SPELL(41913)) - spellInfo->EffectApplyAuraName[0] = 4; // proc debuff, and summon infinite fiends - - //temp, not needed in 310 - if(spellInfo = SPELL(28531)) - { - spellInfo->DurationIndex = 21; - spellInfo->Effect[0] = SPELL_EFFECT_APPLY_AREA_AURA_ENEMY; - } - if(spellInfo = SPELL(55799)) + for(uint32 i = 0; i < GetSpellStore()->GetNumRows(); ++i) { - spellInfo->DurationIndex = 21; - spellInfo->Effect[0] = SPELL_EFFECT_APPLY_AREA_AURA_ENEMY; + spellInfo = (SpellEntry*)GetSpellStore()->LookupEntry(i); + if(!spellInfo) + continue; + + switch(i) + { + // Black Temple : Illidan : Parasitic Shadowfiend Passive + case 41013: + spellInfo->EffectApplyAuraName[0] = 4; // proc debuff, and summon infinite fiends + break; + //temp, not needed in 310 + case 28531: + case 55799: + spellInfo->DurationIndex = 21; + spellInfo->Effect[0] = SPELL_EFFECT_APPLY_AREA_AURA_ENEMY; + break; + // Naxxramas: Gothik : Inform Inf range + case 27892: + case 27928: + case 27935: + case 27915: + case 27931: + case 27937: + spellInfo->rangeIndex = 13; + break; + } } } diff --git a/src/bindings/scripts/include/sc_creature.h b/src/bindings/scripts/include/sc_creature.h index 0fb716bbe0e..80016619e8b 100644 --- a/src/bindings/scripts/include/sc_creature.h +++ b/src/bindings/scripts/include/sc_creature.h @@ -23,6 +23,7 @@ class SummonList : private std::list<uint64> void DespawnEntry(uint32 entry); void DespawnAll(); void DoAction(uint32 entry, uint32 info); + void DoZoneInCombat(uint32 entry = 0); private: Creature *m_creature; }; @@ -152,6 +153,7 @@ struct TRINITY_DLL_DECL ScriptedAI : public CreatureAI void DoModifyThreatPercent(Unit *pUnit, int32 pct); void DoTeleportTo(float x, float y, float z, uint32 time = 0); + void DoTeleportTo(const float pos[4]); void DoAction(const int32 param) {} @@ -170,6 +172,8 @@ struct TRINITY_DLL_DECL ScriptedAI : public CreatureAI //Spawns a creature relative to m_creature Creature* DoSpawnCreature(uint32 id, float x, float y, float z, float angle, uint32 type, uint32 despawntime); + Creature *DoSummon(uint32 entry, const float pos[4], uint32 despawntime = 30000, TempSummonType type = TEMPSUMMON_CORPSE_TIMED_DESPAWN); + Creature *DoSummon(uint32 entry, WorldObject *obj, float radius = 5.0f, uint32 despawntime = 30000, TempSummonType type = TEMPSUMMON_CORPSE_TIMED_DESPAWN); //Selects a unit from the creature's current aggro list Unit* SelectUnit(SelectAggroTarget target, uint32 position); diff --git a/src/bindings/scripts/scripts/zone/naxxramas/boss_gothik.cpp b/src/bindings/scripts/scripts/zone/naxxramas/boss_gothik.cpp index 3a9c6a5b47a..7def6c370f4 100644 --- a/src/bindings/scripts/scripts/zone/naxxramas/boss_gothik.cpp +++ b/src/bindings/scripts/scripts/zone/naxxramas/boss_gothik.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2006 - 2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> +/* Copyright (C) 2008 - 2009 Trinity <http://www.trinitycore.org/> * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -14,14 +14,8 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -/* ScriptData -SDName: Boss_Gothik -SD%Complete: 0 -SDComment: Placeholder -SDCategory: Naxxramas -EndScriptData */ - #include "precompiled.h" +#include "def_naxxramas.h" #define SAY_SPEECH -1533040 #define SAY_KILL -1533041 @@ -29,37 +23,336 @@ EndScriptData */ #define SAY_TELEPORT -1533043 //Gothik -#define SPELL_HARVESTSOUL 28679 -#define SPELL_SHADOWBOLT HEROIC(29317,56405) -#define SPELL_SOUL_SIPHON 43591 // cannot find the correct spell +#define SPELL_HARVEST_SOUL 28679 +#define SPELL_SHADOW_BOLT HEROIC(29317,56405) + +#define SPELL_INFORM_LIVE_TRAINEE 27892 +#define SPELL_INFORM_LIVE_KNIGHT 27928 +#define SPELL_INFORM_LIVE_RIDER 27935 +#define SPELL_INFORM_DEAD_TRAINEE 27915 +#define SPELL_INFORM_DEAD_KNIGHT 27931 +#define SPELL_INFORM_DEAD_RIDER 27937 + +#define MOB_LIVE_TRAINEE 16124 +#define MOB_LIVE_KNIGHT 16125 +#define MOB_LIVE_RIDER 16126 +#define MOB_DEAD_TRAINEE 16127 +#define MOB_DEAD_KNIGHT 16148 +#define MOB_DEAD_RIDER 16150 +#define MOB_DEAD_HORSE 16149 + +const struct Waves { uint32 entry, number, time; } +waves[] = +{ + {MOB_LIVE_TRAINEE, 2, 20000}, + {MOB_LIVE_TRAINEE, 2, 20000}, + {MOB_LIVE_TRAINEE, 2, 10000}, + {MOB_LIVE_KNIGHT, 1, 10000}, + {MOB_LIVE_TRAINEE, 2, 15000}, + {MOB_LIVE_KNIGHT, 1, 10000}, + {MOB_LIVE_TRAINEE, 2, 15000}, + {MOB_LIVE_TRAINEE, 2, 0}, + {MOB_LIVE_KNIGHT, 1, 10000}, + {MOB_LIVE_RIDER, 1, 10000}, + {MOB_LIVE_TRAINEE, 2, 5000}, + {MOB_LIVE_KNIGHT, 1, 15000}, + {MOB_LIVE_TRAINEE, 2, 0}, + {MOB_LIVE_RIDER, 1, 10000}, + {MOB_LIVE_KNIGHT, 2, 10000}, + {MOB_LIVE_TRAINEE, 2, 10000}, + {MOB_LIVE_RIDER, 1, 5000}, + {MOB_LIVE_KNIGHT, 1, 5000}, + {MOB_LIVE_TRAINEE, 2, 20000}, + {MOB_LIVE_TRAINEE, 2, 0}, + {MOB_LIVE_KNIGHT, 1, 0}, + {MOB_LIVE_RIDER, 1, 15000}, + {MOB_LIVE_TRAINEE, 2, 29000}, + {0, 0, 0}, +}; + +#define POS_Y_GATE -3360.78f + +enum Events +{ + EVENT_SUMMON = 1, + EVENT_HARVEST, + EVENT_BOLT, +}; + +#define POS_LIVE 3 +#define POS_DEAD 5 + +const float PosSummonLive[POS_LIVE][4] = +{ + {2669.7, -3430.9, 268.56, 1.6}, + {2692.0, -3430.9, 268.56, 1.6}, + {2714.1, -3430.9, 268.56, 1.6}, +}; + +const float PosSummonDead[POS_DEAD][4] = +{ + {2725.1, -3310.0, 268.85, 3.4}, + {2699.3, -3322.8, 268.60, 3.3}, + {2733.1, -3348.5, 268.84, 3.1}, + {2682.8, -3304.2, 268.85, 3.9}, + {2664.8, -3340.7, 268.23, 3.7}, +}; + +const float PosGround[4] = {2691.2, -3362.7, 267.68, 1.7}; +const float PosPlatform[4] = {2640.5, -3360.6, 285.26, 0}; + +struct TRINITY_DLL_DECL boss_gothikAI : public BossAI +{ + boss_gothikAI(Creature *c) : BossAI(c, BOSS_GOTHIK) {} + + uint32 waveCount; + std::vector<Creature*> liveTrigger; + std::vector<Creature*> deadTrigger; + + void Reset() + { + liveTrigger.clear(); + deadTrigger.clear(); + me->setActive(false); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + me->SetReactState(REACT_PASSIVE); + _Reset(); + } + + void EnterCombat(Unit *who) + { + for(uint32 i = 0; i < POS_LIVE; ++i) + if(Creature *trigger = DoSummon(WORLD_TRIGGER, PosSummonLive[i])) + liveTrigger.push_back(trigger); + for(uint32 i = 0; i < POS_DEAD; ++i) + if(Creature *trigger = DoSummon(WORLD_TRIGGER, PosSummonDead[i])) + deadTrigger.push_back(trigger); + + if(liveTrigger.size() < POS_LIVE || deadTrigger.size() < POS_DEAD) + { + error_log("Script Gothik: cannot summon triggers!"); + EnterEvadeMode(); + return; + } + + _EnterCombat(); + me->setActive(true); + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + waveCount = 0; + events.ScheduleEvent(EVENT_SUMMON, 30000); + DoTeleportTo(PosPlatform); + DoScriptText(SAY_SPEECH, me); + if(instance) + instance->SetData(DATA_GOTHIK_GATE, 1); + } + + void JustSummoned(Creature *summon) + { + if(summon->GetEntry() == WORLD_TRIGGER) + summon->setActive(true); + else + { + summon->AI()->DoAction(me->HasReactState(REACT_PASSIVE) ? 1 : 0); + summon->AI()->EnterEvadeMode(); + } + summons.Summon(summon); + } + + void KilledUnit(Unit* victim) + { + if(!(rand()%5)) + DoScriptText(SAY_KILL, me); + } + + void JustDied(Unit* Killer) + { + _JustDied(); + DoScriptText(SAY_DEATH, me); + } + + void SpellHit(Unit *caster, const SpellEntry *spell) + { + uint32 spellId = 0; + switch(spell->Id) + { + case SPELL_INFORM_LIVE_TRAINEE: spellId = SPELL_INFORM_DEAD_TRAINEE; break; + case SPELL_INFORM_LIVE_KNIGHT: spellId = SPELL_INFORM_DEAD_KNIGHT; break; + case SPELL_INFORM_LIVE_RIDER: spellId = SPELL_INFORM_DEAD_RIDER; break; + } + if(spellId && me->isInCombat()) + { + me->HandleEmoteCommand(EMOTE_ONESHOT_SPELLCAST); + me->CastSpell(deadTrigger[rand()%POS_DEAD], spellId, true); + } + } + + void SpellHitTarget(Unit *target, const SpellEntry *spell) + { + if(!me->isInCombat()) + return; + + switch(spell->Id) + { + case SPELL_INFORM_DEAD_TRAINEE: DoSummon(MOB_DEAD_TRAINEE, target, 0); break; + case SPELL_INFORM_DEAD_KNIGHT: DoSummon(MOB_DEAD_KNIGHT, target, 0); break; + case SPELL_INFORM_DEAD_RIDER: DoSummon(MOB_DEAD_RIDER, target, 1.0f); + DoSummon(MOB_DEAD_HORSE, target, 1.0f); break; + } + } + + void UpdateAI(const uint32 diff) + { + if(!me->isInCombat()) + return; + + if(me->getThreatManager().isThreatListEmpty()) + { + EnterEvadeMode(); + return; + } + + if(me->HasReactState(REACT_AGGRESSIVE) && !UpdateVictim()) + return; + + events.Update(diff); + + if(me->hasUnitState(UNIT_STAT_CASTING)) + return; + + while(uint32 eventId = events.ExecuteEvent()) + { + switch(eventId) + { + case EVENT_SUMMON: + if(waves[waveCount].entry) + { + for(uint32 i = 0; i < waves[waveCount].number; ++i) + DoSummon(waves[waveCount].entry, liveTrigger[rand()%POS_LIVE], 1.0f); + events.ScheduleEvent(EVENT_SUMMON, waves[waveCount].time); + ++waveCount; + } + else + { + DoScriptText(SAY_TELEPORT, me); + DoTeleportTo(PosGround); + me->SetReactState(REACT_AGGRESSIVE); + me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + if(instance) + instance->SetData(DATA_GOTHIK_GATE, 0); + summons.DoAction(0, 0); + summons.DoZoneInCombat(); + events.ScheduleEvent(EVENT_BOLT, 1000); + events.ScheduleEvent(EVENT_HARVEST, 15000); + } + break; + case EVENT_BOLT: + DoCast(me->getVictim(), SPELL_SHADOW_BOLT); + events.ScheduleEvent(EVENT_BOLT, 1000); + return; + case EVENT_HARVEST: + DoCast(me->getVictim(), SPELL_HARVEST_SOUL); + events.ScheduleEvent(EVENT_HARVEST, 15000); + return; + } + } + + DoMeleeAttackIfReady(); + } +}; + +struct TRINITY_DLL_DECL mob_gothik_minionAI : public SpellAI +{ + mob_gothik_minionAI(Creature *c) : SpellAI(c) + { + liveSide = me->GetPositionY() < POS_Y_GATE; + } + + bool liveSide; + bool gateClose; + +#define SIDE_CHECK(who) (liveSide == (who->GetPositionY() < POS_Y_GATE)) + + void DoAction(const int32 param) + { + gateClose = param; + } + + void DamageTaken(Unit *attacker, uint32 &damage) + { + if(gateClose && !SIDE_CHECK(attacker)) + damage = 0; + } + + void JustDied(Unit *killer) + { + if(me->isSummon()) + { + if(Unit *owner = ((TempSummon*)me)->GetSummoner()) + SpellAI::JustDied(owner); + } + } + + void EnterEvadeMode() + { + if(!gateClose) + { + SpellAI::EnterEvadeMode(); + return; + } + + if(!_EnterEvadeMode()) + return; -//Unrelenting Trainee -#define SPELL_EAGLECLAW 30285 -#define SPELL_KNOCKDOWN_PASSIVE 6961 + Map *map = me->GetMap(); + if(map->IsDungeon()) + { + Map::PlayerList const &PlayerList = map->GetPlayers(); + for(Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i) + { + if(i->getSource()->isAlive() && SIDE_CHECK(i->getSource())) + { + AttackStart(i->getSource()); + return; + } + } + } -//Unrelenting Deathknight -#define SPELL_CHARGE 22120 -#define SPELL_SHADOW_MARK 27825 + me->GetMotionMaster()->MoveIdle(); + Reset(); + } -//Unrelenting Rider -#define SPELL_UNHOLY_AURA 55606 -#define H_SPELL_UNHOLY_AURA 55608 -#define SPELL_SHADOWBOLT_VOLLEY 27831 //Search thru targets and find those who have the SHADOW_MARK to cast this on -#define H_SPELL_SHADOWBOLT_VOLLEY 55638 + void UpdateAI(const uint32 diff) + { + if(gateClose && (!SIDE_CHECK(me) || me->getVictim() && !SIDE_CHECK(me->getVictim()))) + { + EnterEvadeMode(); + return; + } -//Spectral Trainee -#define SPELL_ARCANE_EXPLOSION 27989 + SpellAI::UpdateAI(diff); + } +}; -//Spectral Deathknight -#define SPELL_WHIRLWIND 28334 -#define SPELL_SUNDER_ARMOR 25051 //cannot find sunder that reduces armor by 2950 -#define SPELL_CLEAVE 20677 -#define SPELL_MANA_BURN 17631 +CreatureAI* GetAI_boss_gothik(Creature *_Creature) +{ + return new boss_gothikAI (_Creature); +} -//Spectral Rider -#define SPELL_LIFEDRAIN 24300 -//USES SAME UNHOLY AURA AS UNRELENTING RIDER +CreatureAI* GetAI_mob_gothik_minion(Creature *_Creature) +{ + return new mob_gothik_minionAI (_Creature); +} -//Spectral Horse -#define SPELL_STOMP 27993 +void AddSC_boss_gothik() +{ + Script *newscript; + newscript = new Script; + newscript->Name="boss_gothik"; + newscript->GetAI = &GetAI_boss_gothik; + newscript->RegisterSelf(); + newscript = new Script; + newscript->Name="mob_gothik_minion"; + newscript->GetAI = &GetAI_mob_gothik_minion; + newscript->RegisterSelf(); +} diff --git a/src/bindings/scripts/scripts/zone/naxxramas/instance_naxxramas.cpp b/src/bindings/scripts/scripts/zone/naxxramas/instance_naxxramas.cpp index 23f44f5daf8..e5913660c3f 100644 --- a/src/bindings/scripts/scripts/zone/naxxramas/instance_naxxramas.cpp +++ b/src/bindings/scripts/scripts/zone/naxxramas/instance_naxxramas.cpp @@ -86,9 +86,10 @@ struct TRINITY_DLL_DECL instance_naxxramas : public InstanceData LoadDoorData(doorData); } + std::set<Creature*> Worshipper; std::set<GameObject*> HeiganEruption[4]; + GameObject *GothikGate; Creature *Sapphiron; - std::set<Creature*> Worshipper; void OnCreatureCreate(Creature *creature, bool add) { @@ -114,6 +115,7 @@ struct TRINITY_DLL_DECL instance_naxxramas : public InstanceData switch(go->GetEntry()) { case GO_BIRTH: if(!add && Sapphiron) Sapphiron->AI()->DoAction(DATA_SAPPHIRON_BIRTH); return; + case GO_GOTHIK_GATE: GothikGate = add ? go : NULL; break; } AddDoor(go, add); @@ -140,6 +142,10 @@ struct TRINITY_DLL_DECL instance_naxxramas : public InstanceData case DATA_HEIGAN_ERUPT: HeiganErupt(value); break; + case DATA_GOTHIK_GATE: + if(GothikGate) + GothikGate->SetGoState(GOState(value)); + break; } } diff --git a/src/bindings/scripts/scripts/zone/tempest_keep/the_eye/boss_alar.cpp b/src/bindings/scripts/scripts/zone/tempest_keep/the_eye/boss_alar.cpp index af44d96d417..dfeb7fea3e6 100644 --- a/src/bindings/scripts/scripts/zone/tempest_keep/the_eye/boss_alar.cpp +++ b/src/bindings/scripts/scripts/zone/tempest_keep/the_eye/boss_alar.cpp @@ -410,7 +410,8 @@ struct TRINITY_DLL_DECL boss_alarAI : public ScriptedAI else { Unit *target = NULL; - if(Phase1 && target && (target = m_creature->SelectNearestTarget(5))) + target = m_creature->SelectNearestTarget(5); + if(Phase1 && target) m_creature->AI()->AttackStart(target); else { diff --git a/src/framework/Platform/Define.h b/src/framework/Platform/Define.h index 59c2418c745..35be370d65b 100644 --- a/src/framework/Platform/Define.h +++ b/src/framework/Platform/Define.h @@ -129,5 +129,11 @@ typedef uint32 DWORD; typedef uint64 OBJECT_HANDLE; +#define MaNGOS Trinity +#define MANGOS_DLL_DECL TRINITY_DLL_DECL +#define MANGOS_DLL_SPEC TRINITY_DLL_SPEC +#define MANGOS_DEBUG TRINITY_DEBUG +#define GetMangosString GetTrinityString + #endif //TRINITY_DEFINE_H diff --git a/src/game/AggressorAI.cpp b/src/game/AggressorAI.cpp index 286138fc991..22ebe87cdc6 100644 --- a/src/game/AggressorAI.cpp +++ b/src/game/AggressorAI.cpp @@ -104,7 +104,7 @@ void SpellAI::UpdateAI(const uint32 diff) break; } } - me->CastSpell(target, spellId, false); + if(target) me->CastSpell(target, spellId, false); events.ScheduleEvent(spellId, AISpellInfo[spellId].cooldown + rand()%AISpellInfo[spellId].cooldown); } else diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index 85109997390..f322d8326e1 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -455,6 +455,9 @@ void Creature::Update(uint32 diff) } else { + // for delayed spells + m_Events.Update( diff ); + m_deathTimer -= diff; if (m_groupLootTimer && lootingGroupLeaderGUID) { diff --git a/src/game/CreatureAI.cpp b/src/game/CreatureAI.cpp index ea65d233a17..0864bc973ab 100644 --- a/src/game/CreatureAI.cpp +++ b/src/game/CreatureAI.cpp @@ -39,6 +39,9 @@ void CreatureAI::DoZoneInCombat(Creature* creature) if (!creature) creature = me; + if(!creature->CanHaveThreatList()) + return; + Map *map = creature->GetMap(); if (!map->IsDungeon()) //use IsDungeon instead of Instanceable, in case battlegrounds will be instantiated { @@ -46,7 +49,7 @@ void CreatureAI::DoZoneInCombat(Creature* creature) return; } - if(!creature->getVictim()) + if(!creature->HasReactState(REACT_PASSIVE) && !creature->getVictim()) { if(Unit *target = creature->SelectNearestTarget()) creature->AI()->AttackStart(target); @@ -54,29 +57,30 @@ void CreatureAI::DoZoneInCombat(Creature* creature) { if(Unit *summoner = ((TempSummon*)creature)->GetSummoner()) { - if(summoner->getVictim() - && (creature->IsFriendlyTo(summoner) || creature->IsHostileTo(summoner->getVictim()))) - creature->AI()->AttackStart(summoner->getVictim()); + Unit *target = summoner->getAttackerForHelper(); + if(!target && summoner->CanHaveThreatList() && !summoner->getThreatManager().isThreatListEmpty()) + target = summoner->getThreatManager().getHostilTarget(); + if(target && (creature->IsFriendlyTo(summoner) || creature->IsHostileTo(target))) + creature->AI()->AttackStart(target); } } } - if (!creature->CanHaveThreatList() || !creature->getVictim()) + if(!creature->HasReactState(REACT_PASSIVE) && !creature->getVictim()) { - sLog.outError("DoZoneInCombat called for creature that either cannot have threat list or has empty threat list (creature entry = %d)", creature->GetTypeId() == TYPEID_UNIT ? ((Creature*)creature)->GetEntry() : 0); + sLog.outError("DoZoneInCombat called for creature that has empty threat list (creature entry = %u)", creature->GetEntry()); return; } Map::PlayerList const &PlayerList = map->GetPlayers(); for(Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i) { - if (Player* i_pl = i->getSource()) - if (i_pl->isAlive()) - { - creature->SetInCombatWith(i_pl); - i_pl->SetInCombatWith(creature); - creature->AddThreat(i_pl, 0.0f); - } + if (i->getSource()->isAlive()) + { + creature->SetInCombatWith(i->getSource()); + i->getSource()->SetInCombatWith(creature); + creature->AddThreat(i->getSource(), 0.0f); + } } } @@ -102,10 +106,10 @@ bool CreatureAI::UpdateVictim() return me->getVictim(); } -void CreatureAI::EnterEvadeMode() +bool CreatureAI::_EnterEvadeMode() { - if(me->IsInEvadeMode()) - return; + if(me->IsInEvadeMode() || !me->isAlive()) + return false; me->RemoveAllAuras(); me->DeleteThreatList(); @@ -113,13 +117,18 @@ void CreatureAI::EnterEvadeMode() me->LoadCreaturesAddon(); me->SetLootRecipient(NULL); - if(me->isAlive()) - { - if(Unit *owner = me->GetCharmerOrOwner()) - me->GetMotionMaster()->MoveFollow(owner, PET_FOLLOW_DIST, PET_FOLLOW_ANGLE, MOTION_SLOT_IDLE); - else - me->GetMotionMaster()->MoveTargetedHome(); - } + return true; +} + +void CreatureAI::EnterEvadeMode() +{ + if(!_EnterEvadeMode()) + return; + + if(Unit *owner = me->GetCharmerOrOwner()) + me->GetMotionMaster()->MoveFollow(owner, PET_FOLLOW_DIST, PET_FOLLOW_ANGLE, MOTION_SLOT_IDLE); + else + me->GetMotionMaster()->MoveTargetedHome(); Reset(); } diff --git a/src/game/CreatureAI.h b/src/game/CreatureAI.h index 605e904c71a..c46dd2a54f2 100644 --- a/src/game/CreatureAI.h +++ b/src/game/CreatureAI.h @@ -168,6 +168,9 @@ class TRINITY_DLL_SPEC CreatureAI : public UnitAI static AISpellInfoType *AISpellInfo; static void FillAISpellInfo(); + + protected: + bool _EnterEvadeMode(); }; enum Permitions diff --git a/src/game/InstanceSaveMgr.h b/src/game/InstanceSaveMgr.h index 2a913e5cedf..29972210f3d 100644 --- a/src/game/InstanceSaveMgr.h +++ b/src/game/InstanceSaveMgr.h @@ -24,7 +24,7 @@ #include "Platform/Define.h" #include "Policies/Singleton.h" -#include "zthread/Mutex.h" +#include "ace/Thread_Mutex.h" #include <list> #include <map> #include "Utilities/UnorderedMap.h" @@ -113,7 +113,7 @@ class InstanceSave bool m_canReset; }; -class TRINITY_DLL_DECL InstanceSaveManager : public Trinity::Singleton<InstanceSaveManager, Trinity::ClassLevelLockable<InstanceSaveManager, ZThread::Mutex> > +class MANGOS_DLL_DECL InstanceSaveManager : public MaNGOS::Singleton<InstanceSaveManager, MaNGOS::ClassLevelLockable<InstanceSaveManager, ACE_Thread_Mutex> > { friend class InstanceSave; public: diff --git a/src/game/Map.cpp b/src/game/Map.cpp index 3280970750b..140904bfb19 100644 --- a/src/game/Map.cpp +++ b/src/game/Map.cpp @@ -120,7 +120,7 @@ void Map::LoadVMap(int gx,int gy) } } -void Map::LoadMap(int gx,int gy) +void Map::LoadMap(int gx,int gy, bool reload) { if( i_InstanceId != 0 ) { @@ -138,6 +138,9 @@ void Map::LoadMap(int gx,int gy) return; } + if(GridMaps[gx][gy] && !reload) + return; + //map already load, delete it before reloading (Is it necessary? Do we really need the ability the reload maps during runtime?) if(GridMaps[gx][gy]) { diff --git a/src/game/Map.h b/src/game/Map.h index d85eb459171..c69fe5f7345 100644 --- a/src/game/Map.h +++ b/src/game/Map.h @@ -23,9 +23,9 @@ #include "Platform/Define.h" #include "Policies/ThreadingModel.h" -#include "zthread/Lockable.h" -#include "zthread/Mutex.h" -#include "zthread/FairReadWriteLock.h" +#include "ace/RW_Thread_Mutex.h" +#include "ace/Thread_Mutex.h" + #include "DBCStructure.h" #include "GridDefines.h" #include "Cell.h" @@ -46,13 +46,8 @@ class WorldObject; class TempSummon; class CreatureGroup; -namespace ZThread -{ - class Lockable; - class ReadWriteLock; -} -typedef ZThread::FairReadWriteLock GridRWLock; +typedef ACE_RW_Thread_Mutex GridRWLock; template<class MUTEX, class LOCK_TYPE> struct RGuard @@ -68,9 +63,9 @@ struct WGuard Trinity::GeneralLock<LOCK_TYPE> i_lock; }; -typedef RGuard<GridRWLock, ZThread::Lockable> GridReadGuard; -typedef WGuard<GridRWLock, ZThread::Lockable> GridWriteGuard; -typedef Trinity::SingleThreaded<GridRWLock>::Lock NullGuard; +typedef RGuard<GridRWLock, ACE_Thread_Mutex> GridReadGuard; +typedef WGuard<GridRWLock, ACE_Thread_Mutex> GridWriteGuard; +typedef MaNGOS::SingleThreaded<GridRWLock>::Lock NullGuard; //****************************************** // Map file format defines @@ -251,7 +246,7 @@ typedef UNORDERED_MAP<Creature*, CreatureMover> CreatureMoveList; typedef std::map<uint32/*leaderDBGUID*/, CreatureGroup*> CreatureGroupHolderType; -class TRINITY_DLL_SPEC Map : public GridRefManager<NGridType>, public Trinity::ObjectLevelLockable<Map, ZThread::Mutex> +class MANGOS_DLL_SPEC Map : public GridRefManager<NGridType>, public MaNGOS::ObjectLevelLockable<Map, ACE_Thread_Mutex> { friend class MapReference; public: @@ -426,7 +421,7 @@ class TRINITY_DLL_SPEC Map : public GridRefManager<NGridType>, public Trinity::O private: void LoadMapAndVMap(int gx, int gy); void LoadVMap(int gx, int gy); - void LoadMap(int gx,int gy); + void LoadMap(int gx,int gy, bool reload = false); GridMap *GetGrid(float x, float y); void SetTimer(uint32 t) { i_gridExpiry = t < MIN_GRID_DELAY ? MIN_GRID_DELAY : t; } @@ -466,7 +461,7 @@ class TRINITY_DLL_SPEC Map : public GridRefManager<NGridType>, public Trinity::O protected: void SetUnloadReferenceLock(const GridPair &p, bool on) { getNGrid(p.x_coord, p.y_coord)->setUnloadReferenceLock(on); } - typedef Trinity::ObjectLevelLockable<Map, ZThread::Mutex>::Lock Guard; + typedef MaNGOS::ObjectLevelLockable<Map, ACE_Thread_Mutex>::Lock Guard; MapEntry const* i_mapEntry; uint8 i_spawnMode; diff --git a/src/game/MapManager.cpp b/src/game/MapManager.cpp index 061e0252a13..d75ba22b19a 100644 --- a/src/game/MapManager.cpp +++ b/src/game/MapManager.cpp @@ -34,9 +34,9 @@ #include "ObjectMgr.h" #include "Language.h" -#define CLASS_LOCK Trinity::ClassLevelLockable<MapManager, ZThread::Mutex> +#define CLASS_LOCK MaNGOS::ClassLevelLockable<MapManager, ACE_Thread_Mutex> INSTANTIATE_SINGLETON_2(MapManager, CLASS_LOCK); -INSTANTIATE_CLASS_MUTEX(MapManager, ZThread::Mutex); +INSTANTIATE_CLASS_MUTEX(MapManager, ACE_Thread_Mutex); extern GridState* si_GridStates[]; // debugging code, should be deleted some day diff --git a/src/game/MapManager.h b/src/game/MapManager.h index 143248de162..b54c1cfbfa1 100644 --- a/src/game/MapManager.h +++ b/src/game/MapManager.h @@ -23,14 +23,14 @@ #include "Platform/Define.h" #include "Policies/Singleton.h" -#include "zthread/Mutex.h" +#include "ace/Thread_Mutex.h" #include "Common.h" #include "Map.h" #include "GridStates.h" class Transport; -class TRINITY_DLL_DECL MapManager : public Trinity::Singleton<MapManager, Trinity::ClassLevelLockable<MapManager, ZThread::Mutex> > +class MANGOS_DLL_DECL MapManager : public MaNGOS::Singleton<MapManager, MaNGOS::ClassLevelLockable<MapManager, ACE_Thread_Mutex> > { friend class Trinity::OperatorNew<MapManager>; @@ -149,7 +149,7 @@ class TRINITY_DLL_DECL MapManager : public Trinity::Singleton<MapManager, Trinit return (iter == i_maps.end() ? NULL : iter->second); } - typedef Trinity::ClassLevelLockable<MapManager, ZThread::Mutex>::Lock Guard; + typedef MaNGOS::ClassLevelLockable<MapManager, ACE_Thread_Mutex>::Lock Guard; uint32 i_gridCleanUpDelay; MapMapType i_maps; IntervalTimer i_timer; diff --git a/src/game/ObjectAccessor.cpp b/src/game/ObjectAccessor.cpp index 1fa0bd6d1ca..da6279e068a 100644 --- a/src/game/ObjectAccessor.cpp +++ b/src/game/ObjectAccessor.cpp @@ -41,9 +41,9 @@ #include <cmath> -#define CLASS_LOCK Trinity::ClassLevelLockable<ObjectAccessor, ZThread::FastMutex> +#define CLASS_LOCK MaNGOS::ClassLevelLockable<ObjectAccessor, ACE_Thread_Mutex> INSTANTIATE_SINGLETON_2(ObjectAccessor, CLASS_LOCK); -INSTANTIATE_CLASS_MUTEX(ObjectAccessor, ZThread::FastMutex); +INSTANTIATE_CLASS_MUTEX(ObjectAccessor, ACE_Thread_Mutex); ObjectAccessor::ObjectAccessor() {} ObjectAccessor::~ObjectAccessor() {} @@ -470,7 +470,7 @@ ObjectAccessor::UpdateObjectVisibility(WorldObject *obj) /// Define the static member of HashMapHolder template <class T> UNORDERED_MAP< uint64, T* > HashMapHolder<T>::m_objectMap; -template <class T> ZThread::FastMutex HashMapHolder<T>::i_lock; +template <class T> ACE_Thread_Mutex HashMapHolder<T>::i_lock; /// Global definitions for the hashmap storage diff --git a/src/game/ObjectAccessor.h b/src/game/ObjectAccessor.h index dd8e02b81ab..f4452b81cab 100644 --- a/src/game/ObjectAccessor.h +++ b/src/game/ObjectAccessor.h @@ -23,7 +23,7 @@ #include "Platform/Define.h" #include "Policies/Singleton.h" -#include "zthread/FastMutex.h" +#include <ace/Thread_Mutex.h> #include "Utilities/UnorderedMap.h" #include "Policies/ThreadingModel.h" @@ -51,8 +51,8 @@ class HashMapHolder public: typedef UNORDERED_MAP< uint64, T* > MapType; - typedef ZThread::FastMutex LockType; - typedef Trinity::GeneralLock<LockType > Guard; + typedef ACE_Thread_Mutex LockType; + typedef MaNGOS::GeneralLock<LockType > Guard; static void Insert(T* o) { m_objectMap[o->GetGUID()] = o; } @@ -80,7 +80,7 @@ class HashMapHolder static MapType m_objectMap; }; -class TRINITY_DLL_DECL ObjectAccessor : public Trinity::Singleton<ObjectAccessor, Trinity::ClassLevelLockable<ObjectAccessor, ZThread::FastMutex> > +class MANGOS_DLL_DECL ObjectAccessor : public MaNGOS::Singleton<ObjectAccessor, MaNGOS::ClassLevelLockable<ObjectAccessor, ACE_Thread_Mutex> > { friend class Trinity::OperatorNew<ObjectAccessor>; @@ -228,8 +228,8 @@ class TRINITY_DLL_DECL ObjectAccessor : public Trinity::Singleton<ObjectAccessor friend struct WorldObjectChangeAccumulator; Player2CorpsesMapType i_player2corpse; - typedef ZThread::FastMutex LockType; - typedef Trinity::GeneralLock<LockType > Guard; + typedef ACE_Thread_Mutex LockType; + typedef MaNGOS::GeneralLock<LockType > Guard; static void _buildChangeObjectForPlayer(WorldObject *, UpdateDataMapType &); static void _buildPacket(Player *, Object *, UpdateDataMapType &); diff --git a/src/game/Player.cpp b/src/game/Player.cpp index b3aad430b32..4efb3703c1f 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -6441,8 +6441,8 @@ void Player::_ApplyItemMods(Item *item, uint8 slot,bool apply) if(slot >= INVENTORY_SLOT_BAG_END || !item) return; - // not apply/remove mods for broken item - if(item->IsBroken()) + // not apply mods for broken item + if(item->IsBroken() && apply) return; ItemPrototype const *proto = item->GetProto(); diff --git a/src/game/SharedDefines.h b/src/game/SharedDefines.h index e592bebf1de..a068815bb1c 100644 --- a/src/game/SharedDefines.h +++ b/src/game/SharedDefines.h @@ -24,9 +24,6 @@ #include "Platform/Define.h" #include <cassert> -#define MaNGOS Trinity -#define GetMangosString GetTrinityString - enum Gender { GENDER_MALE = 0, diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 95547b68621..2c1c50c20ae 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -5612,8 +5612,26 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger // Glyph of Prayer of Healing case 55680: { - basepoints0 = int32(damage * 20 / 100 / 2); // divided in two ticks triggered_spell_id = 56161; + + SpellEntry const* GoPoH = sSpellStore.LookupEntry(triggered_spell_id); + if(!GoPoH) + return false; + + int EffIndex = 0; + for(int i = 0; i < MAX_SPELL_EFFECTS; i++) + { + if(GoPoH->Effect[i] == SPELL_EFFECT_APPLY_AURA) + { + EffIndex = i; + break; + } + } + int32 tickcount = GetSpellMaxDuration(GoPoH) / GoPoH->EffectAmplitude[EffIndex]; + if(!tickcount) + return false; + + basepoints0 = damage * triggerAmount / tickcount / 100; break; } // Improved Shadowform @@ -9958,7 +9976,7 @@ void Unit::SetInCombatState(bool PvP, Unit* enemy) ((Creature*)this)->SetHomePosition(GetPositionX(), GetPositionY(), GetPositionZ(), GetOrientation()); if(enemy) { - if(!((Creature*)this)->HasReactState(REACT_PASSIVE) && ((Creature*)this)->IsAIEnabled) + if(((Creature*)this)->IsAIEnabled) ((Creature*)this)->AI()->EnterCombat(enemy); if(((Creature*)this)->GetFormation()) ((Creature*)this)->GetFormation()->MemberAttackStart((Creature*)this, enemy); diff --git a/src/game/World.h b/src/game/World.h index 27075885368..11a83678d35 100644 --- a/src/game/World.h +++ b/src/game/World.h @@ -626,7 +626,7 @@ class World static float m_VisibleObjectGreyDistance; // CLI command holder to be thread safe - ZThread::LockedQueue<CliCommandHolder*, ZThread::FastMutex> cliCmdQueue; + ACE_Based::LockedQueue<CliCommandHolder*,ACE_Thread_Mutex> cliCmdQueue; SqlResultQueue *m_resultQueue; // next daily quests reset time @@ -637,7 +637,7 @@ class World //sessions that are added async void AddSession_(WorldSession* s); - ZThread::LockedQueue<WorldSession*, ZThread::FastMutex> addSessQueue; + ACE_Based::LockedQueue<WorldSession*, ACE_Thread_Mutex> addSessQueue; //used versions std::string m_DBVersion; diff --git a/src/game/WorldLog.cpp b/src/game/WorldLog.cpp index 52eb1e8b59c..978514ac7d7 100644 --- a/src/game/WorldLog.cpp +++ b/src/game/WorldLog.cpp @@ -27,9 +27,9 @@ #include "Config/ConfigEnv.h" #include "Log.h" -#define CLASS_LOCK Trinity::ClassLevelLockable<WorldLog, ZThread::FastMutex> +#define CLASS_LOCK MaNGOS::ClassLevelLockable<WorldLog, ACE_Thread_Mutex> INSTANTIATE_SINGLETON_2(WorldLog, CLASS_LOCK); -INSTANTIATE_CLASS_MUTEX(WorldLog, ZThread::FastMutex); +INSTANTIATE_CLASS_MUTEX(WorldLog, ACE_Thread_Mutex); #define WORLD_LOG_FILE_STRING "world.log" diff --git a/src/game/WorldLog.h b/src/game/WorldLog.h index 01f34535dd9..e6b72e654f7 100644 --- a/src/game/WorldLog.h +++ b/src/game/WorldLog.h @@ -32,13 +32,13 @@ #include <stdarg.h> /// %Log packets to a file -class TRINITY_DLL_DECL WorldLog : public Trinity::Singleton<WorldLog, Trinity::ClassLevelLockable<WorldLog, ZThread::FastMutex> > +class MANGOS_DLL_DECL WorldLog : public MaNGOS::Singleton<WorldLog, MaNGOS::ClassLevelLockable<WorldLog, ACE_Thread_Mutex> > { friend class Trinity::OperatorNew<WorldLog>; WorldLog(); WorldLog(const WorldLog &); WorldLog& operator=(const WorldLog &); - typedef Trinity::ClassLevelLockable<WorldLog, ZThread::FastMutex>::Lock Guard; + typedef MaNGOS::ClassLevelLockable<WorldLog, ACE_Thread_Mutex>::Lock Guard; /// Close the file in destructor ~WorldLog(); diff --git a/src/game/WorldSession.h b/src/game/WorldSession.h index d514586957a..a8d6db72809 100644 --- a/src/game/WorldSession.h +++ b/src/game/WorldSession.h @@ -719,8 +719,7 @@ class TRINITY_DLL_SPEC WorldSession uint32 m_latency; AccountData m_accountData[NUM_ACCOUNT_DATA_TYPES]; AddonsList m_addonsList; - - ZThread::LockedQueue<WorldPacket*,ZThread::FastMutex> _recvQueue; + ACE_Based::LockedQueue<WorldPacket*, ACE_Thread_Mutex> _recvQueue; }; #endif /// @} diff --git a/src/shared/CMakeLists.txt b/src/shared/CMakeLists.txt index 8ecfccad34f..b271e2b9545 100644 --- a/src/shared/CMakeLists.txt +++ b/src/shared/CMakeLists.txt @@ -14,6 +14,7 @@ SET(shared_STAT_SRCS Log.h ProgressBar.cpp ProgressBar.h + Threading.cpp Timer.h Util.cpp Util.h @@ -22,3 +23,7 @@ SET(shared_STAT_SRCS ) add_library(shared STATIC ${shared_STAT_SRCS}) +target_link_libraries( +shared +${ACE_LIBRARY} +) diff --git a/src/shared/Common.h b/src/shared/Common.h index 5cbd7f285f6..37ced4c8e11 100644 --- a/src/shared/Common.h +++ b/src/shared/Common.h @@ -84,6 +84,7 @@ #include <math.h> #include <errno.h> #include <signal.h> +#include <assert.h> #if PLATFORM == PLATFORM_WINDOWS #define STRCASECMP stricmp @@ -99,10 +100,13 @@ #include <sstream> #include <algorithm> -#include <zthread/FastMutex.h> -#include <zthread/LockedQueue.h> -#include <zthread/Runnable.h> -#include <zthread/Thread.h> +#include "LockedQueue.h" +#include "Threading.h" + +#include <ace/Guard_T.h> +#include <ace/RW_Thread_Mutex.h> +#include <ace/Thread_Mutex.h> + #if PLATFORM == PLATFORM_WINDOWS # define FD_SETSIZE 4096 diff --git a/src/shared/Database/Database.cpp b/src/shared/Database/Database.cpp index 07ece3b0cd9..d5ccc581232 100644 --- a/src/shared/Database/Database.cpp +++ b/src/shared/Database/Database.cpp @@ -110,7 +110,8 @@ bool Database::PExecuteLog(const char * format,...) void Database::SetResultQueue(SqlResultQueue * queue) { - m_queryQueues[ZThread::ThreadImpl::current()] = queue; + m_queryQueues[ACE_Based::Thread::current()] = queue; + } QueryResult* Database::PQuery(const char *format,...) diff --git a/src/shared/Database/Database.h b/src/shared/Database/Database.h index 92a1c991dcc..a9f7285c223 100644 --- a/src/shared/Database/Database.h +++ b/src/shared/Database/Database.h @@ -21,8 +21,7 @@ #ifndef DATABASE_H #define DATABASE_H -#include "zthread/Thread.h" -#include "../src/zthread/ThreadImpl.h" +#include "Threading.h" #include "Utilities/UnorderedMap.h" #include "Database/SqlDelayThread.h" @@ -30,8 +29,8 @@ class SqlTransaction; class SqlResultQueue; class SqlQueryHolder; -typedef UNORDERED_MAP<ZThread::ThreadImpl*, SqlTransaction*> TransactionQueues; -typedef UNORDERED_MAP<ZThread::ThreadImpl*, SqlResultQueue*> QueryQueues; +typedef UNORDERED_MAP<ACE_Based::Thread* , SqlTransaction*> TransactionQueues; +typedef UNORDERED_MAP<ACE_Based::Thread* , SqlResultQueue*> QueryQueues; #define MAX_QUERY_LEN 32*1024 @@ -43,7 +42,7 @@ class TRINITY_DLL_SPEC Database TransactionQueues m_tranQueues; ///< Transaction queues from diff. threads QueryQueues m_queryQueues; ///< Query queues from diff threads SqlDelayThread* m_threadBody; ///< Pointer to delay sql executer - ZThread::Thread* m_delayThread; ///< Pointer to executer thread + ACE_Based::Thread* m_delayThread; ///< Pointer to executer thread public: diff --git a/src/shared/Database/DatabaseImpl.h b/src/shared/Database/DatabaseImpl.h index 3d3c53f0873..7cbd0ed8ba5 100644 --- a/src/shared/Database/DatabaseImpl.h +++ b/src/shared/Database/DatabaseImpl.h @@ -29,7 +29,7 @@ QueryQueues::iterator queue_itr; \ \ { \ - ZThread::ThreadImpl * queryThread = ZThread::ThreadImpl::current(); \ + ACE_Based::Thread * queryThread = ACE_Based::Thread::current(); \ queue_itr = m_queryQueues.find(queryThread); \ if (queue_itr == m_queryQueues.end()) return false; \ } @@ -59,7 +59,7 @@ QueryQueues::iterator queue_itr; \ \ { \ - ZThread::ThreadImpl * queryThread = ZThread::ThreadImpl::current(); \ + ACE_Based::Thread * queryThread = ACE_Based::Thread::current(); \ queue_itr = m_queryQueues.find(queryThread); \ if (queue_itr == m_queryQueues.end()) return false; \ } diff --git a/src/shared/Database/DatabaseMysql.cpp b/src/shared/Database/DatabaseMysql.cpp index 5dc02c0a738..9574d3dc2ac 100644 --- a/src/shared/Database/DatabaseMysql.cpp +++ b/src/shared/Database/DatabaseMysql.cpp @@ -23,7 +23,7 @@ #include "Util.h" #include "Policies/SingletonImp.h" #include "Platform/Define.h" -#include "../src/zthread/ThreadImpl.h" +#include "Threading.h" #include "DatabaseEnv.h" #include "Database/MySQLDelayThread.h" #include "Database/SqlOperations.h" @@ -203,8 +203,8 @@ QueryResult* DatabaseMysql::Query(const char *sql) { // guarded block for thread-safe mySQL request - ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex); - #ifdef TRINITY_DEBUG + ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex); + #ifdef MANGOS_DEBUG uint32 _s = getMSTime(); #endif if(mysql_query(mMysql, sql)) @@ -251,7 +251,7 @@ bool DatabaseMysql::Execute(const char *sql) // don't use queued execution if it has not been initialized if (!m_threadBody) return DirectExecute(sql); - tranThread = ZThread::ThreadImpl::current(); // owner of this transaction + tranThread = ACE_Based::Thread::current(); // owner of this transaction TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { // Statement for transaction @@ -273,8 +273,9 @@ bool DatabaseMysql::DirectExecute(const char* sql) { // guarded block for thread-safe mySQL request - ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex); - #ifdef TRINITY_DEBUG + ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex); + + #ifdef MANGOS_DEBUG uint32 _s = getMSTime(); #endif if(mysql_query(mMysql, sql)) @@ -318,8 +319,9 @@ bool DatabaseMysql::BeginTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread==ZThread::ThreadImpl::current()) + if (tranThread == ACE_Based::Thread::current()) return false; // huh? this thread already started transaction + mMutex.acquire(); if (!_TransactionCmd("START TRANSACTION")) { @@ -329,7 +331,7 @@ bool DatabaseMysql::BeginTransaction() return true; // transaction started } - tranThread = ZThread::ThreadImpl::current(); // owner of this transaction + tranThread = ACE_Based::Thread::current(); // owner of this transaction TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) // If for thread exists queue and also contains transaction @@ -349,7 +351,7 @@ bool DatabaseMysql::CommitTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread!=ZThread::ThreadImpl::current()) + if (tranThread != ACE_Based::Thread::current()) return false; bool _res = _TransactionCmd("COMMIT"); tranThread = NULL; @@ -357,7 +359,7 @@ bool DatabaseMysql::CommitTransaction() return _res; } - tranThread = ZThread::ThreadImpl::current(); + tranThread = ACE_Based::Thread::current(); TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { @@ -377,7 +379,7 @@ bool DatabaseMysql::RollbackTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread!=ZThread::ThreadImpl::current()) + if (tranThread != ACE_Based::Thread::current()) return false; bool _res = _TransactionCmd("ROLLBACK"); tranThread = NULL; @@ -385,7 +387,7 @@ bool DatabaseMysql::RollbackTransaction() return _res; } - tranThread = ZThread::ThreadImpl::current(); + tranThread = ACE_Based::Thread::current(); TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { @@ -408,7 +410,8 @@ void DatabaseMysql::InitDelayThread() assert(!m_delayThread); //New delay thread for delay execute - m_delayThread = new ZThread::Thread(m_threadBody = new MySQLDelayThread(this)); + m_threadBody = new MySQLDelayThread(this); + m_delayThread = new ACE_Based::Thread(*m_threadBody); } void DatabaseMysql::HaltDelayThread() diff --git a/src/shared/Database/DatabaseMysql.h b/src/shared/Database/DatabaseMysql.h index 2fa157e75a5..7f5730f9579 100644 --- a/src/shared/Database/DatabaseMysql.h +++ b/src/shared/Database/DatabaseMysql.h @@ -25,7 +25,8 @@ #include "Database.h" #include "Policies/Singleton.h" -#include "zthread/FastMutex.h" +#include "ace/Thread_Mutex.h" +#include "ace/Guard_T.h" #ifdef WIN32 #define FD_SETSIZE 1024 @@ -65,9 +66,9 @@ class TRINITY_DLL_SPEC DatabaseMysql : public Database // must be call before finish thread run void ThreadEnd(); private: - ZThread::FastMutex mMutex; + ACE_Thread_Mutex mMutex; - ZThread::ThreadImpl* tranThread; + ACE_Based::Thread * tranThread; MYSQL *mMysql; diff --git a/src/shared/Database/DatabasePostgre.cpp b/src/shared/Database/DatabasePostgre.cpp index 79e1c87f5e3..12875b33200 100644 --- a/src/shared/Database/DatabasePostgre.cpp +++ b/src/shared/Database/DatabasePostgre.cpp @@ -23,7 +23,7 @@ #include "Util.h" #include "Policies/SingletonImp.h" #include "Platform/Define.h" -#include "../src/zthread/ThreadImpl.h" +#include "Threading.h" #include "DatabaseEnv.h" #include "Database/PGSQLDelayThread.h" #include "Database/SqlOperations.h" @@ -126,8 +126,8 @@ QueryResult* DatabasePostgre::Query(const char *sql) uint32 fieldCount = 0; // guarded block for thread-safe request - ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex); - #ifdef TRINITY_DEBUG + ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex); + #ifdef MANGOS_DEBUG uint32 _s = getMSTime(); #endif // Send the query @@ -174,9 +174,10 @@ bool DatabasePostgre::Execute(const char *sql) return false; // don't use queued execution if it has not been initialized - if (!m_threadBody) return DirectExecute(sql); + if (!m_threadBody) + return DirectExecute(sql); - tranThread = ZThread::ThreadImpl::current(); // owner of this transaction + tranThread = ACE_Based::Thread::current(); // owner of this transaction TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { // Statement for transaction @@ -197,8 +198,8 @@ bool DatabasePostgre::DirectExecute(const char* sql) return false; { // guarded block for thread-safe request - ZThread::Guard<ZThread::FastMutex> query_connection_guard(mMutex); - #ifdef TRINITY_DEBUG + ACE_Guard<ACE_Thread_Mutex> query_connection_guard(mMutex); + #ifdef MANGOS_DEBUG uint32 _s = getMSTime(); #endif PGresult *res = PQexec(mPGconn, sql); @@ -247,7 +248,7 @@ bool DatabasePostgre::BeginTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread==ZThread::ThreadImpl::current()) + if (tranThread == ACE_Based::Thread::current()) return false; // huh? this thread already started transaction mMutex.acquire(); if (!_TransactionCmd("START TRANSACTION")) @@ -258,7 +259,7 @@ bool DatabasePostgre::BeginTransaction() return true; } // transaction started - tranThread = ZThread::ThreadImpl::current(); // owner of this transaction + tranThread = ACE_Based::Thread::current(); // owner of this transaction TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) // If for thread exists queue and also contains transaction @@ -278,14 +279,14 @@ bool DatabasePostgre::CommitTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread!=ZThread::ThreadImpl::current()) + if (tranThread != ACE_Based::Thread::current()) return false; bool _res = _TransactionCmd("COMMIT"); tranThread = NULL; mMutex.release(); return _res; } - tranThread = ZThread::ThreadImpl::current(); + tranThread = ACE_Based::Thread::current(); TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { @@ -304,14 +305,14 @@ bool DatabasePostgre::RollbackTransaction() // don't use queued execution if it has not been initialized if (!m_threadBody) { - if (tranThread!=ZThread::ThreadImpl::current()) + if (tranThread != ACE_Based::Thread::current()) return false; bool _res = _TransactionCmd("ROLLBACK"); tranThread = NULL; mMutex.release(); return _res; } - tranThread = ZThread::ThreadImpl::current(); + tranThread = ACE_Based::Thread::current(); TransactionQueues::iterator i = m_tranQueues.find(tranThread); if (i != m_tranQueues.end() && i->second != NULL) { @@ -334,7 +335,8 @@ void DatabasePostgre::InitDelayThread() assert(!m_delayThread); //New delay thread for delay execute - m_delayThread = new ZThread::Thread(m_threadBody = new PGSQLDelayThread(this)); + m_threadBody = new PGSQLDelayThread(this); + m_delayThread = new ACE_Based::Thread(*m_threadBody); } void DatabasePostgre::HaltDelayThread() diff --git a/src/shared/Database/DatabasePostgre.h b/src/shared/Database/DatabasePostgre.h index c7242add572..53f0802f86c 100644 --- a/src/shared/Database/DatabasePostgre.h +++ b/src/shared/Database/DatabasePostgre.h @@ -22,7 +22,6 @@ #define _DatabasePostgre_H #include "Policies/Singleton.h" -#include "zthread/FastMutex.h" #include <stdarg.h> #ifdef WIN32 @@ -63,10 +62,8 @@ class DatabasePostgre : public Database // must be call before finish thread run void ThreadEnd(); private: - ZThread::FastMutex mMutex; - ZThread::FastMutex tranMutex; - - ZThread::ThreadImpl* tranThread; + ACE_Thread_Mutex mMutex; + ACE_Based::Thread * tranThread; PGconn *mPGconn; diff --git a/src/shared/Database/QueryResult.h b/src/shared/Database/QueryResult.h index 01da45ed281..39228dd4ba9 100644 --- a/src/shared/Database/QueryResult.h +++ b/src/shared/Database/QueryResult.h @@ -40,7 +40,7 @@ class TRINITY_DLL_SPEC QueryResult if(iter->second == name) return iter->first; } - assert(false && "unknown field name"); + ASSERT(false && "unknown field name"); return uint32(-1); } diff --git a/src/shared/Database/SqlDelayThread.cpp b/src/shared/Database/SqlDelayThread.cpp index 27f58510a0a..9a92fd5dd63 100644 --- a/src/shared/Database/SqlDelayThread.cpp +++ b/src/shared/Database/SqlDelayThread.cpp @@ -37,7 +37,7 @@ void SqlDelayThread::run() { // if the running state gets turned off while sleeping // empty the queue before exiting - ZThread::Thread::sleep(10); + ACE_Based::Thread::Sleep(10); while (!m_sqlQueue.empty()) { s = m_sqlQueue.next(); diff --git a/src/shared/Database/SqlDelayThread.h b/src/shared/Database/SqlDelayThread.h index cbae0c1e5eb..3c24d3525b7 100644 --- a/src/shared/Database/SqlDelayThread.h +++ b/src/shared/Database/SqlDelayThread.h @@ -21,21 +21,22 @@ #ifndef __SQLDELAYTHREAD_H #define __SQLDELAYTHREAD_H -#include "zthread/Thread.h" -#include "zthread/Runnable.h" -#include "zthread/FastMutex.h" -#include "zthread/LockedQueue.h" +#include "ace/Thread_Mutex.h" +#include "LockedQueue.h" +#include "Threading.h" + class Database; class SqlOperation; -class SqlDelayThread : public ZThread::Runnable +class SqlDelayThread : public ACE_Based::Runnable { - typedef ZThread::LockedQueue<SqlOperation*, ZThread::FastMutex> SqlQueue; + typedef ACE_Based::LockedQueue<SqlOperation*, ACE_Thread_Mutex> SqlQueue; + private: SqlQueue m_sqlQueue; ///< Queue of SQL statements Database* m_dbEngine; ///< Pointer to used Database engine - bool m_running; + volatile bool m_running; SqlDelayThread(); public: diff --git a/src/shared/Database/SqlOperations.h b/src/shared/Database/SqlOperations.h index 61eef4bb7c4..e91d83b6611 100644 --- a/src/shared/Database/SqlOperations.h +++ b/src/shared/Database/SqlOperations.h @@ -23,9 +23,8 @@ #include "Common.h" -#include "zthread/LockedQueue.h" -#include "zthread/FastMutex.h" -#include "zthread/Thread.h" +#include "ace/Thread_Mutex.h" +#include "LockedQueue.h" #include <queue> #include "Utilities/Callback.h" @@ -72,7 +71,7 @@ class SqlResultQueue; /// queue for thread class SqlQueryHolder; /// groups several async quries class SqlQueryHolderEx; /// points to a holder, added to the delay thread -class SqlResultQueue : public ZThread::LockedQueue<Trinity::IQueryCallback*, ZThread::FastMutex> +class SqlResultQueue : public ACE_Based::LockedQueue<MaNGOS::IQueryCallback* , ACE_Thread_Mutex> { public: SqlResultQueue() {} diff --git a/src/shared/LockedQueue.h b/src/shared/LockedQueue.h new file mode 100644 index 00000000000..b085dd09b83 --- /dev/null +++ b/src/shared/LockedQueue.h @@ -0,0 +1,144 @@ +/* + * Copyright (C) 2009 MaNGOS <http://getmangos.com/> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef LOCKEDQUEUE_H +#define LOCKEDQUEUE_H + +#include <ace/Guard_T.h> +#include <ace/Thread_Mutex.h> +#include <deque> +#include <assert.h> +#include "Errors.h" + +namespace ACE_Based +{ + + template <class T, class LockType, typename StorageType=std::deque<T> > + class LockedQueue + { + + //! Serialize access to the Queue + LockType _lock; + + //! Storage backing the queue + StorageType _queue; + + //! Cancellation flag + volatile bool _canceled; + + public: + + //! Create a LockedQueue + LockedQueue() : _canceled(false) {} + + //! Destroy a LockedQueue + virtual ~LockedQueue() { } + + /** + * @see Queue::add(const T& item) + */ + void add(const T& item) + { + + ACE_Guard<LockType> g(_lock); + + ASSERT(!_canceled); + // throw Cancellation_Exception(); + + _queue.push_back(item); + + } + + /** + * @see Queue::next() + */ + T next() + { + + ACE_Guard<LockType> g(_lock); + + ASSERT (!_queue.empty() || !_canceled); + // throw Cancellation_Exception(); + + T item = _queue.front(); + _queue.pop_front(); + + return item; + + } + + T front() + { + ACE_Guard<LockType> g(_lock); + + ASSERT (!_queue.empty()); + // throw NoSuchElement_Exception(); + + return _queue.front(); + } + + /** + * @see Queue::cancel() + */ + void cancel() + { + + ACE_Guard<LockType> g(_lock); + + _canceled = true; + + } + + /** + * @see Queue::isCanceled() + */ + bool isCanceled() + { + + // Faster check since the queue will not become un-canceled + if(_canceled) + return true; + + ACE_Guard<LockType> g(_lock); + + return _canceled; + + } + + /** + * @see Queue::size() + */ + size_t size() + { + + ACE_Guard<LockType> g(_lock); + return _queue.size(); + + } + + bool empty() + { + + ACE_Guard<LockType> g(_lock); + return _queue.empty(); + } + + }; + +} +#endif diff --git a/src/shared/Log.h b/src/shared/Log.h index 654f3c0f04c..23555995020 100644 --- a/src/shared/Log.h +++ b/src/shared/Log.h @@ -82,7 +82,7 @@ enum ColorTypes const int Colors = int(WHITE)+1; -class Log : public Trinity::Singleton<Log, Trinity::ClassLevelLockable<Log, ZThread::FastMutex> > +class Log : public Trinity::Singleton<Log, Trinity::ClassLevelLockable<Log, ACE_Thread_Mutex> > { friend class Trinity::OperatorNew<Log>; Log(); diff --git a/src/shared/Makefile.am b/src/shared/Makefile.am index 6b99351cb26..60af5b8a4b5 100644 --- a/src/shared/Makefile.am +++ b/src/shared/Makefile.am @@ -38,6 +38,7 @@ libmangosshared_a_SOURCES = \ Common.cpp \ Common.h \ Errors.h \ + LockedQueue.h \ Log.cpp \ Log.h \ MemoryLeaks.cpp \ @@ -45,6 +46,8 @@ libmangosshared_a_SOURCES = \ ProgressBar.cpp \ ProgressBar.h \ Timer.h \ + Threading.cpp \ + Threading.h \ Util.cpp \ Util.h \ WorldPacket.h \ diff --git a/src/shared/MemoryLeaks.h b/src/shared/MemoryLeaks.h index fcea1f557b1..c8b8fb8e1b1 100644 --- a/src/shared/MemoryLeaks.h +++ b/src/shared/MemoryLeaks.h @@ -31,9 +31,9 @@ //# include <stdlib.h> //# include <crtdbg.h> #else -# define _CRTDBG_MAP_ALLOC -# include <stdlib.h> -# include <crtdbg.h> +//# define _CRTDBG_MAP_ALLOC +//# include <stdlib.h> +//# include <crtdbg.h> #endif #endif diff --git a/src/shared/Threading.cpp b/src/shared/Threading.cpp new file mode 100644 index 00000000000..496e86353ca --- /dev/null +++ b/src/shared/Threading.cpp @@ -0,0 +1,205 @@ +/* + * Copyright (C) 2009 MaNGOS <http://getmangos.com/> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "Threading.h" +#include <ace/OS_NS_unistd.h> +#include <ace/Sched_Params.h> +#include <vector> + +using namespace ACE_Based; + +ThreadPriority::ThreadPriority() +{ + for (int i = Idle; i < MAXPRIORITYNUM; ++i) + m_priority[i] = ACE_THR_PRI_OTHER_DEF; + + m_priority[Idle] = ACE_Sched_Params::priority_min(ACE_SCHED_OTHER); + m_priority[Realtime] = ACE_Sched_Params::priority_max(ACE_SCHED_OTHER); + + std::vector<int> _tmp; + + ACE_Sched_Params::Policy _policy = ACE_SCHED_OTHER; + ACE_Sched_Priority_Iterator pr_iter(_policy); + + while (pr_iter.more()) + { + _tmp.push_back(pr_iter.priority()); + pr_iter.next(); + } + + ASSERT (!_tmp.empty()); + + if(_tmp.size() >= MAXPRIORITYNUM) + { + const size_t max_pos = _tmp.size(); + size_t min_pos = 1; + size_t norm_pos = 0; + for (size_t i = 0; i < max_pos; ++i) + { + if(_tmp[i] == ACE_THR_PRI_OTHER_DEF) + { + norm_pos = i + 1; + break; + } + } + + //since we have only 7(seven) values in enum Priority + //and 3 we know already (Idle, Normal, Realtime) so + //we need to split each list [Idle...Normal] and [Normal...Realtime] + //into ¹ piesces + const size_t _divider = 4; + size_t _div = (norm_pos - min_pos) / _divider; + if(_div == 0) + _div = 1; + + min_pos = (norm_pos - 1); + + m_priority[Low] = _tmp[min_pos -= _div]; + m_priority[Lowest] = _tmp[min_pos -= _div ]; + + _div = (max_pos - norm_pos) / _divider; + if(_div == 0) + _div = 1; + + min_pos = norm_pos - 1; + + m_priority[High] = _tmp[min_pos += _div]; + m_priority[Highest] = _tmp[min_pos += _div]; + } +} + +int ThreadPriority::getPriority(Priority p) const +{ + if(p < Idle) + p = Idle; + + if(p > Realtime) + p = Realtime; + + return m_priority[p]; +} + +#define THREADFLAG (THR_NEW_LWP | THR_SCHED_DEFAULT| THR_JOINABLE) + +Thread::Thread() : m_task(0), m_iThreadId(0), m_hThreadHandle(0) +{ + +} + +Thread::Thread(Runnable& instance) : m_task(&instance), m_iThreadId(0), m_hThreadHandle(0) +{ + bool _start = start(); + ASSERT (_start); +} + +Thread::~Thread() +{ + //Wait(); +} + +//initialize Thread's class static member +Thread::ThreadStorage Thread::m_ThreadStorage; +ThreadPriority Thread::m_TpEnum; + +bool Thread::start() +{ + if(m_task == 0 || m_iThreadId != 0) + return false; + + return (ACE_Thread::spawn(&Thread::ThreadTask, (void*)m_task, THREADFLAG, &m_iThreadId, &m_hThreadHandle) == 0); +} + +bool Thread::wait() +{ + if(!m_hThreadHandle || !m_task) + return false; + + ACE_THR_FUNC_RETURN _value = ACE_THR_FUNC_RETURN(-1); + int _res = ACE_Thread::join(m_hThreadHandle, &_value); + + m_iThreadId = 0; + m_hThreadHandle = 0; + + return (_res == 0); +} + +void Thread::destroy() +{ + ACE_Thread::kill(m_iThreadId, -1); +} + +void Thread::suspend() +{ + ACE_Thread::suspend(m_hThreadHandle); +} + +void Thread::resume() +{ + ACE_Thread::resume(m_hThreadHandle); +} + +ACE_THR_FUNC_RETURN Thread::ThreadTask(void * param) +{ + Runnable * _task = (Runnable*)param; + _task->run(); + + return (ACE_THR_FUNC_RETURN)0; +} + +ACE_thread_t Thread::currentId() +{ + return ACE_Thread::self(); +} + +ACE_hthread_t Thread::currentHandle() +{ + ACE_hthread_t _handle; + ACE_Thread::self(_handle); + + return _handle; +} + +Thread * Thread::current() +{ + Thread * _thread = m_ThreadStorage.ts_object(); + if(!_thread) + { + _thread = new Thread(); + _thread->m_iThreadId = Thread::currentId(); + _thread->m_hThreadHandle = Thread::currentHandle(); + + Thread * _oldValue = m_ThreadStorage.ts_object(_thread); + if(_oldValue) + delete _oldValue; + } + + return _thread; +} + +void Thread::setPriority(Priority type) +{ + int _priority = m_TpEnum.getPriority(type); + int _ok = ACE_Thread::setprio(m_hThreadHandle, _priority); + //remove this ASSERT in case you don't want to know is thread priority change was successful or not + ASSERT (_ok == 0); +} + +void Thread::Sleep(unsigned long msecs) +{ + ACE_OS::sleep(ACE_Time_Value(0, 1000 * msecs)); +} diff --git a/src/shared/Threading.h b/src/shared/Threading.h new file mode 100644 index 00000000000..eac3c0e8efb --- /dev/null +++ b/src/shared/Threading.h @@ -0,0 +1,99 @@ +/* + * Copyright (C) 2009 MaNGOS <http://getmangos.com/> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef THREADING_H +#define THREADING_H + +#include <ace/Thread.h> +#include <ace/TSS_T.h> +#include <assert.h> +#include "Errors.h" + +namespace ACE_Based +{ + + class Runnable + { + public: + virtual ~Runnable() {} + virtual void run() = 0; + }; + + enum Priority + { + Idle, + Lowest, + Low, + Normal, + High, + Highest, + Realtime, + }; + +#define MAXPRIORITYNUM (Realtime + 1) + + class ThreadPriority + { + public: + ThreadPriority(); + int getPriority(Priority p) const; + + private: + int m_priority[MAXPRIORITYNUM]; + }; + + class Thread + { + public: + Thread(); + Thread(Runnable& instance); + ~Thread(); + + bool start(); + bool wait(); + void destroy(); + + void suspend(); + void resume(); + + void setPriority(Priority type); + + static void Sleep(unsigned long msecs); + static ACE_thread_t currentId(); + static ACE_hthread_t currentHandle(); + static Thread * current(); + + private: + Thread(const Thread&); + Thread& operator=(const Thread&); + + static ACE_THR_FUNC_RETURN ThreadTask(void * param); + + ACE_thread_t m_iThreadId; + ACE_hthread_t m_hThreadHandle; + Runnable * m_task; + + typedef ACE_TSS<Thread> ThreadStorage; + //global object - container for Thread class representation of every thread + static ThreadStorage m_ThreadStorage; + //use this object to determine current OS thread priority values mapped to enum Priority{} + static ThreadPriority m_TpEnum; + }; + +} +#endif diff --git a/src/shared/Util.cpp b/src/shared/Util.cpp index 767b65e441c..ac57fc3c9e9 100644 --- a/src/shared/Util.cpp +++ b/src/shared/Util.cpp @@ -23,40 +23,34 @@ #include "sockets/socket_include.h" #include "utf8cpp/utf8.h" #include "mersennetwister/MersenneTwister.h" -#include "zthread/ThreadLocal.h" +#include <ace/TSS_T.h> -typedef ZThread::ThreadLocal<MTRand> MTRandTSS; - -/* NOTE: Not sure if static initialization is ok for TSS objects , - * as I see zthread uses custom implementation of the TSS - * ,and in the consturctor there is no code ,so I suppose its ok - * If its not ok ,change it to use singleton. - */ +typedef ACE_TSS<MTRand> MTRandTSS; static MTRandTSS mtRand; int32 irand (int32 min, int32 max) { - return int32 (mtRand.get ().randInt (max - min)) + min; + return int32 (mtRand->randInt (max - min)) + min; } uint32 urand (uint32 min, uint32 max) { - return mtRand.get ().randInt (max - min) + min; + return mtRand->randInt (max - min) + min; } int32 rand32 () { - return mtRand.get ().randInt (); + return mtRand->randInt (); } double rand_norm(void) { - return mtRand.get ().randExc (); + return mtRand->randExc (); } double rand_chance (void) { - return mtRand.get ().randExc (100.0); + return mtRand->randExc (100.0); } Tokens StrSplit(const std::string &src, const std::string &sep) diff --git a/src/trinitycore/CliRunnable.cpp b/src/trinitycore/CliRunnable.cpp index 91f37cd1b48..d53ee8c24be 100644 --- a/src/trinitycore/CliRunnable.cpp +++ b/src/trinitycore/CliRunnable.cpp @@ -155,7 +155,7 @@ bool ChatHandler::HandleCharacterDeleteCommand(const char* args) } /// Exit the realm -bool ChatHandler::HandleServerExitCommand(const char* args) +bool ChatHandler::HandleServerExitCommand(const char* /*args*/) { SendSysMessage(LANG_COMMAND_EXIT); World::StopNow(SHUTDOWN_EXIT_CODE); @@ -163,7 +163,7 @@ bool ChatHandler::HandleServerExitCommand(const char* args) } /// Display info on users currently in the realm -bool ChatHandler::HandleAccountOnlineListCommand(const char* args) +bool ChatHandler::HandleAccountOnlineListCommand(const char* /*args*/) { ///- Get the list of accounts ID logged to the realm QueryResult *resultDB = CharacterDatabase.Query("SELECT name,account FROM characters WHERE online > 0"); diff --git a/src/trinitycore/CliRunnable.h b/src/trinitycore/CliRunnable.h index 20ff58f27ba..cf745bbb195 100644 --- a/src/trinitycore/CliRunnable.h +++ b/src/trinitycore/CliRunnable.h @@ -26,7 +26,7 @@ #define __CLIRUNNABLE_H /// Command Line Interface handling thread -class CliRunnable : public ZThread::Runnable +class CliRunnable : public ACE_Based::Runnable { public: void run(); diff --git a/src/trinitycore/Makefile.am b/src/trinitycore/Makefile.am index 7e1cd086d3c..f0ac432dab1 100644 --- a/src/trinitycore/Makefile.am +++ b/src/trinitycore/Makefile.am @@ -35,8 +35,13 @@ trinity_worldd_SOURCES = \ WorldRunnable.h ## Link world daemon against the shared library +<<<<<<< HEAD:src/mangosd/Makefile.am trinity_worldd_LDADD = ../bindings/scripts/libtrinityscript.la ../game/libmangosgame.a ../shared/Database/libmangosdatabase.a ../shared/Config/libmangosconfig.a ../shared/Auth/libmangosauth.a ../shared/libmangosshared.a ../shared/vmap/libmangosvmaps.a ../framework/libmangosframework.a ../../dep/src/sockets/libmangossockets.a ../../dep/src/zthread/libZThread.la ../../dep/src/g3dlite/libg3dlite.a trinity_worldd_LDFLAGS = -L../../dep/src/sockets -L../../dep/src/zthread -L../../dep/src/g3dlite -L../bindings/scripts/ -L$(libdir) $(TRINI_LIBS) -export-dynamic +======= +mangos_worldd_LDADD = ../bindings/universal/libmangosscript.la ../game/libmangosgame.a ../shared/Database/libmangosdatabase.a ../shared/Config/libmangosconfig.a ../shared/Auth/libmangosauth.a ../shared/libmangosshared.a ../shared/vmap/libmangosvmaps.a ../framework/libmangosframework.a ../../dep/src/sockets/libmangossockets.a ../../dep/src/g3dlite/libg3dlite.a +mangos_worldd_LDFLAGS = -L../../dep/src/sockets -L../../dep/src/g3dlite -L../bindings/universal/ -L$(libdir) $(MANGOS_LIBS) -export-dynamic +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:src/mangosd/Makefile.am ## Additional files to include when running 'make dist' # Include world daemon configuration diff --git a/src/trinitycore/Master.cpp b/src/trinitycore/Master.cpp index 6a952b936d3..2e2d75d5c3c 100644 --- a/src/trinitycore/Master.cpp +++ b/src/trinitycore/Master.cpp @@ -60,7 +60,7 @@ INSTANTIATE_SINGLETON_1( Master ); volatile uint32 Master::m_masterLoopCounter = 0; -class FreezeDetectorRunnable : public ZThread::Runnable +class FreezeDetectorRunnable : public ACE_Based::Runnable { public: FreezeDetectorRunnable() { _delaytime = 0; } @@ -79,7 +79,7 @@ public: w_lastchange = 0; while(!World::IsStopped()) { - ZThread::Thread::sleep(1000); + ACE_Based::Thread::Sleep(1000); uint32 curtime = getMSTime(); //DEBUG_LOG("anti-freeze: time=%u, counters=[%u; %u]",curtime,Master::m_masterLoopCounter,World::m_worldLoopCounter); @@ -115,7 +115,7 @@ public: } }; -class RARunnable : public ZThread::Runnable +class RARunnable : public ACE_Based::Runnable { public: uint32 numLoops, loopCounter; @@ -181,7 +181,7 @@ public: { while (!World::IsStopped()) { - ZThread::Thread::sleep (static_cast<unsigned long> (socketSelecttime / 1000)); + ACE_Based::Thread::Sleep (static_cast<unsigned long> (socketSelecttime / 1000)); checkping (); } } @@ -237,8 +237,8 @@ int Master::Run() _HookSignals(); ///- Launch WorldRunnable thread - ZThread::Thread t(new WorldRunnable); - t.setPriority ((ZThread::Priority )2); + ACE_Based::Thread t(*new WorldRunnable); + t.setPriority ((ACE_Based::Priority )2); // set server online LoginDatabase.PExecute("UPDATE realmlist SET color = 0, population = 0 WHERE id = '%d'",realmID); @@ -250,10 +250,10 @@ int Master::Run() #endif { ///- Launch CliRunnable thread - ZThread::Thread td1(new CliRunnable); + ACE_Based::Thread td1(*new CliRunnable); } - ZThread::Thread td2(new RARunnable); + ACE_Based::Thread td2(*new RARunnable); ///- Handle affinity for multiple processors and process priority on Windows #ifdef WIN32 @@ -314,8 +314,8 @@ int Master::Run() { FreezeDetectorRunnable *fdr = new FreezeDetectorRunnable(); fdr->SetDelayTime(freeze_delay*1000); - ZThread::Thread t(fdr); - t.setPriority(ZThread::High); + ACE_Based::Thread t(*fdr); + t.setPriority(ACE_Based::High); } ///- Launch the world listener socket diff --git a/src/trinitycore/WorldRunnable.cpp b/src/trinitycore/WorldRunnable.cpp index e49e4ad74b8..bd4d3170c52 100644 --- a/src/trinitycore/WorldRunnable.cpp +++ b/src/trinitycore/WorldRunnable.cpp @@ -76,7 +76,7 @@ void WorldRunnable::run() if (diff <= WORLD_SLEEP_CONST+prevSleepTime) { prevSleepTime = WORLD_SLEEP_CONST+prevSleepTime-diff; - ZThread::Thread::sleep(prevSleepTime); + ACE_Based::Thread::Sleep(prevSleepTime); } else prevSleepTime = 0; diff --git a/src/trinitycore/WorldRunnable.h b/src/trinitycore/WorldRunnable.h index 8df3a6a0c89..07ce246b04f 100644 --- a/src/trinitycore/WorldRunnable.h +++ b/src/trinitycore/WorldRunnable.h @@ -26,7 +26,7 @@ #define __WORLDRUNNABLE_H /// Heartbeat thread for the World -class WorldRunnable : public ZThread::Runnable +class WorldRunnable : public ACE_Based::Runnable { public: void run(); diff --git a/src/trinityrealm/AuthSocket.cpp b/src/trinityrealm/AuthSocket.cpp index c5c81593737..8c9eab653ec 100644 --- a/src/trinityrealm/AuthSocket.cpp +++ b/src/trinityrealm/AuthSocket.cpp @@ -173,7 +173,7 @@ typedef struct AuthHandler #endif /// Launch a thread to transfer a patch to the client -class PatcherRunnable: public ZThread::Runnable +class PatcherRunnable: public ACE_Based::Runnable { public: PatcherRunnable(class AuthSocket *); @@ -236,7 +236,8 @@ AuthSocket::AuthSocket(ISocketHandler &h) : TcpSocket(h) /// Close patch file descriptor before leaving AuthSocket::~AuthSocket() { - ZThread::Guard<ZThread::Mutex> g(patcherLock); + ACE_Guard<ACE_Thread_Mutex> g(patcherLock); + if(pPatch) fclose(pPatch); } @@ -912,7 +913,7 @@ bool AuthSocket::_HandleXferResume() ibuf.Read((char*)&start,sizeof(start)); fseek(pPatch,start,0); - ZThread::Thread u(new PatcherRunnable(this)); + ACE_Based::Thread u(*new PatcherRunnable(this)); return true; } @@ -924,7 +925,6 @@ bool AuthSocket::_HandleXferCancel() ///- Close and delete the socket ibuf.Remove(1); //clear input buffer - //ZThread::Thread::sleep(15); SetCloseAndDelete(); return true; @@ -946,8 +946,7 @@ bool AuthSocket::_HandleXferAccept() ibuf.Remove(1); //clear input buffer fseek(pPatch,0,0); - ZThread::Thread u(new PatcherRunnable(this)); - + ACE_Based::Thread u(*new PatcherRunnable(this)); return true; } @@ -965,7 +964,8 @@ PatcherRunnable::PatcherRunnable(class AuthSocket * as) /// Send content of patch file to the client void PatcherRunnable::run() { - ZThread::Guard<ZThread::Mutex> g(mySocket->patcherLock); + ACE_Guard<ACE_Thread_Mutex> g(mySocket->patcherLock); + XFER_DATA_STRUCT xfdata; xfdata.opcode = XFER_DATA; @@ -974,7 +974,7 @@ void PatcherRunnable::run() ///- Wait until output buffer is reasonably empty while(mySocket->Ready() && mySocket->IsLag()) { - ZThread::Thread::sleep(1); + ACE_Based::Thread::Sleep(1); } ///- And send content of the patch file to the client xfdata.data_size=fread(&xfdata.data,1,ChunkSize,mySocket->pPatch); diff --git a/src/trinityrealm/AuthSocket.h b/src/trinityrealm/AuthSocket.h index 3cae54c7789..43b880a1e74 100644 --- a/src/trinityrealm/AuthSocket.h +++ b/src/trinityrealm/AuthSocket.h @@ -33,7 +33,6 @@ #include "sockets/Utility.h" #include "sockets/Parse.h" #include "sockets/Socket.h" -#include "zthread/Mutex.h" /// Handle login commands class AuthSocket: public TcpSocket @@ -61,7 +60,7 @@ class AuthSocket: public TcpSocket void _SetVSFields(const std::string& rI); FILE *pPatch; - ZThread::Mutex patcherLock; + ACE_Thread_Mutex patcherLock; bool IsLag(); private: diff --git a/src/trinityrealm/Makefile.am b/src/trinityrealm/Makefile.am index a14b50c847a..197d6ebf8c4 100644 --- a/src/trinityrealm/Makefile.am +++ b/src/trinityrealm/Makefile.am @@ -32,8 +32,13 @@ trinity_realmd_SOURCES = \ RealmList.h ## Link realm list daemon against the shared library +<<<<<<< HEAD:src/realmd/Makefile.am trinity_realmd_LDADD = ../shared/Database/libmangosdatabase.a ../shared/Config/libmangosconfig.a ../shared/Auth/libmangosauth.a ../shared/libmangosshared.a ../framework/libmangosframework.a ../../dep/src/sockets/libmangossockets.a ../../dep/src/zthread/libZThread.la trinity_realmd_LDFLAGS = -L../../dep/src/sockets -L../../dep/src/zthread -L$(libdir) $(TRINI_LIBS) +======= +mangos_realmd_LDADD = ../shared/Database/libmangosdatabase.a ../shared/Config/libmangosconfig.a ../shared/Auth/libmangosauth.a ../shared/libmangosshared.a ../framework/libmangosframework.a ../../dep/src/sockets/libmangossockets.a +mangos_realmd_LDFLAGS = -L../../dep/src/sockets -L$(libdir) $(MANGOS_LIBS) +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:src/realmd/Makefile.am ## Additional files to include when running 'make dist' # Include realm list daemon configuration diff --git a/win/TrinityCore&Script VC71.sln b/win/TrinityCore&Script VC71.sln index 8c4432075b4..2eee999cede 100644 --- a/win/TrinityCore&Script VC71.sln +++ b/win/TrinityCore&Script VC71.sln @@ -14,10 +14,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shared", "VC71\shared.vcpro {DE0380F9-C910-4E99-A841-93550D0E61D7} = {DE0380F9-C910-4E99-A841-93550D0E61D7} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zthread", "VC71\zthread.vcproj", "{262199E8-EEDF-4700-A1D1-E9CC901CF480}" - ProjectSection(ProjectDependencies) = postProject - EndProjectSection -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "VC71\zlib.vcproj", "{8F1DEA42-6A5B-4B62-839D-C141A7BFACF2}" ProjectSection(ProjectDependencies) = postProject EndProjectSection diff --git a/win/TrinityCore&Script VC80.sln b/win/TrinityCore&Script VC80.sln index 167b00a4b8b..cb880001dc2 100644 --- a/win/TrinityCore&Script VC80.sln +++ b/win/TrinityCore&Script VC80.sln @@ -23,8 +23,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityCore", "VC80\Trinity {563E9905-3657-460C-AE63-0AC39D162E23} = {563E9905-3657-460C-AE63-0AC39D162E23} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zthread", "VC80\zthread.vcproj", "{262199E8-EEDF-4700-A1D1-E9CC901CF480}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "VC80\zlib.vcproj", "{8F1DEA42-6A5B-4B62-839D-C141A7BFACF2}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "framework", "VC80\framework.vcproj", "{BF6F5D0E-33A5-4E23-9E7D-DD481B7B5B9E}" diff --git a/win/TrinityCore&Script VC90.sln b/win/TrinityCore&Script VC90.sln index 2904ca6f20a..a81cbfc570e 100644 --- a/win/TrinityCore&Script VC90.sln +++ b/win/TrinityCore&Script VC90.sln @@ -23,8 +23,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityCore", "VC90\Trinity {1DC6C4DA-A028-41F3-877D-D5400C594F88} = {1DC6C4DA-A028-41F3-877D-D5400C594F88} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zthread", "VC90\zthread.vcproj", "{262199E8-EEDF-4700-A1D1-E9CC901CF480}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "VC90\zlib.vcproj", "{8F1DEA42-6A5B-4B62-839D-C141A7BFACF2}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "framework", "VC90\framework.vcproj", "{BF6F5D0E-33A5-4E23-9E7D-DD481B7B5B9E}" diff --git a/win/VC71/ScriptsInterfaces.vcproj b/win/VC71/ScriptsInterfaces.vcproj index 5d229de138a..813f477dd35 100644 --- a/win/VC71/ScriptsInterfaces.vcproj +++ b/win/VC71/ScriptsInterfaces.vcproj @@ -33,10 +33,17 @@ Name="VCCustomBuildTool"/> <Tool Name="VCLinkerTool" +<<<<<<< HEAD:win/VC71/script.vcproj AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRTD.LIB msvcrtd.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="2" AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" +======= + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" + LinkIncremental="1" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:win/VC71/script.vcproj GenerateDebugInformation="TRUE" ProgramDatabaseFile="$(OutDir)/TrinityScript.pdb" SubSystem="2" @@ -83,10 +90,17 @@ Name="VCCustomBuildTool"/> <Tool Name="VCLinkerTool" +<<<<<<< HEAD:win/VC71/script.vcproj AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRT.LIB msvcrt.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" +======= + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib ace.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" + LinkIncremental="1" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:win/VC71/script.vcproj GenerateDebugInformation="FALSE" SubSystem="2" OptimizeReferences="2" diff --git a/win/VC71/TrinityCore.vcproj b/win/VC71/TrinityCore.vcproj index 1da3ad630dd..df6ab1c709e 100644 --- a/win/VC71/TrinityCore.vcproj +++ b/win/VC71/TrinityCore.vcproj @@ -4,7 +4,7 @@ Version="7.10" Name="TrinityCore" ProjectGUID="{D1EA3EE9-4DCF-4CB9-BA6E-B9321E0D552A}" - RootNamespace="mangosd" + RootNamespace="trinitycore" SccProjectName="" SccLocalPath=""> <Platforms> @@ -58,7 +58,7 @@ ImportLibrary="$(OutDir)\trinitycore.lib"/> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb"/> + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb"/> <Tool Name="VCPostBuildEventTool" CommandLine="copy ..\..\dep\lib\$(PlatformName)_$(ConfigurationName)\*.dll ..\..\bin\$(PlatformName)_$(ConfigurationName) @@ -131,7 +131,7 @@ copy ..\..\src\trinitycore\trinitycore.conf.dist ..\..\bin\$(PlatformName)_$(Con FixedBaseAddress="1"/> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb"/> + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb"/> <Tool Name="VCPostBuildEventTool" CommandLine="copy ..\..\dep\lib\$(PlatformName)_$(ConfigurationName)\*.dll ..\..\bin\$(PlatformName)_$(ConfigurationName) diff --git a/win/VC71/TrinityRealm.vcproj b/win/VC71/TrinityRealm.vcproj index 472b893197d..5ce3c6c0e6e 100644 --- a/win/VC71/TrinityRealm.vcproj +++ b/win/VC71/TrinityRealm.vcproj @@ -4,7 +4,7 @@ Version="7.10" Name="TrinityRealm" ProjectGUID="{563E9905-3657-460C-AE63-0AC39D162E23}" - RootNamespace="realmd" + RootNamespace="TrinityRealm" SccProjectName="" SccLocalPath=""> <Platforms> @@ -15,7 +15,7 @@ <Configuration Name="Release|Win32" OutputDirectory=".\trinityrealm__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)\" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="FALSE" @@ -23,17 +23,17 @@ <Tool Name="VCCLCompilerTool" InlineFunctionExpansion="1" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN",WIN32,NDEBUG,_CONSOLE" StringPooling="TRUE" RuntimeLibrary="2" EnableFunctionLevelLinking="TRUE" EnableEnhancedInstructionSet="1" RuntimeTypeInfo="TRUE" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="TRUE" Detect64BitPortabilityProblems="TRUE" @@ -44,11 +44,16 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" +<<<<<<< HEAD:win/VC71/TrinityRealm.vcproj AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" +======= + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:win/VC71/TrinityRealm.vcproj LinkIncremental="1" SuppressStartupBanner="TRUE" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="TRUE" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="TRUE" @@ -57,7 +62,7 @@ LargeAddressAware="2"/> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb"/> + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb"/> <Tool Name="VCPostBuildEventTool" CommandLine="copy ..\..\src\trinityrealm\trinityrealm.conf.dist ..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.conf.dist"/> @@ -83,7 +88,7 @@ <Configuration Name="Debug|Win32" OutputDirectory=".\trinityrealm__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="FALSE" @@ -91,16 +96,16 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="FALSE" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="TRUE" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="TRUE" Detect64BitPortabilityProblems="TRUE" @@ -111,11 +116,17 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" +<<<<<<< HEAD:win/VC71/TrinityRealm.vcproj AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="2" +======= + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" + LinkIncremental="1" +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:win/VC71/TrinityRealm.vcproj SuppressStartupBanner="TRUE" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="TRUE" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="TRUE" @@ -125,7 +136,7 @@ FixedBaseAddress="1"/> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb"/> + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb"/> <Tool Name="VCPostBuildEventTool" CommandLine="copy ..\..\src\trinityrealm\trinityrealm.conf.dist ..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.conf.dist"/> diff --git a/win/VC71/shared.vcproj b/win/VC71/shared.vcproj index 2bd75f70231..81da9f674f8 100644 --- a/win/VC71/shared.vcproj +++ b/win/VC71/shared.vcproj @@ -44,6 +44,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="TRUE"/> <Tool Name="VCMIDLTool"/> @@ -98,6 +99,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="TRUE"/> <Tool Name="VCMIDLTool"/> @@ -374,6 +376,7 @@ <File RelativePath="..\..\src\shared\Common.h"> </File> +<<<<<<< HEAD:win/VC71/shared.vcproj <File RelativePath="..\..\src\shared\revision.h" > @@ -399,6 +402,38 @@ Outputs="revision.h" /> </FileConfiguration> +======= + <File + RelativePath="..\..\src\shared\LockedQueue.h"> + </File> + <File + RelativePath="..\..\src\shared\revision.h"> + <FileConfiguration + Name="Release|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Extract revision" + CommandLine="cd "$(SolutionDir)..\src\shared" +"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.." +" + AdditionalDependencies="$(SolutionDir)../.svn/entries;$(SolutionDir)../_svn/entries;$(SolutionDir)../.git/FETCH_HEAD" + Outputs="revision.h"/> + </FileConfiguration> + <FileConfiguration + Name="Debug|Win32"> + <Tool + Name="VCCustomBuildTool" + Description="Extract revision" + CommandLine="cd "$(SolutionDir)..\src\shared" +"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.." +" + AdditionalDependencies="$(SolutionDir)../.svn/entries;$(SolutionDir)../_svn/entries;$(SolutionDir)../.git/FETCH_HEAD" + Outputs="revision.h"/> + </FileConfiguration> + </File> + <File + RelativePath="..\..\src\shared\revision_nr.h"> +>>>>>>> 00c7d15a78b1dcdbf888b768c55424183b2231e4:win/VC71/shared.vcproj </File> <File RelativePath="..\..\src\shared\ServiceWin32.cpp"> @@ -409,6 +444,12 @@ <File RelativePath="..\..\src\shared\SystemConfig.h"> </File> + <File + RelativePath="..\..\src\shared\Threading.cpp"> + </File> + <File + RelativePath="..\..\src\shared\Threading.h"> + </File> </Files> <Globals> </Globals> diff --git a/win/VC71/zthread.vcproj b/win/VC71/zthread.vcproj deleted file mode 100644 index 723c90ed7a5..00000000000 --- a/win/VC71/zthread.vcproj +++ /dev/null @@ -1,381 +0,0 @@ -<?xml version="1.0" encoding="windows-1251"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="7.10" - Name="zthread" - ProjectGUID="{262199E8-EEDF-4700-A1D1-E9CC901CF480}" - SccProjectName="" - SccLocalPath=""> - <Platforms> - <Platform - Name="Win32"/> - </Platforms> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2"> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB" - MinimalRebuild="TRUE" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - RuntimeTypeInfo="TRUE" - UsePrecompiledHeader="2" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="TRUE" - DebugInformationFormat="3"/> - <Tool - Name="VCCustomBuildTool"/> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib"/> - <Tool - Name="VCMIDLTool"/> - <Tool - Name="VCPostBuildEventTool"/> - <Tool - Name="VCPreBuildEventTool"/> - <Tool - Name="VCPreLinkEventTool"/> - <Tool - Name="VCResourceCompilerTool"/> - <Tool - Name="VCWebServiceProxyGeneratorTool"/> - <Tool - Name="VCXMLDataGeneratorTool"/> - <Tool - Name="VCManagedWrapperGeneratorTool"/> - <Tool - Name="VCAuxiliaryManagedWrapperGeneratorTool"/> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2"> - <Tool - Name="VCCLCompilerTool" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB" - RuntimeLibrary="2" - EnableEnhancedInstructionSet="1" - RuntimeTypeInfo="TRUE" - UsePrecompiledHeader="2" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="TRUE" - DebugInformationFormat="3"/> - <Tool - Name="VCCustomBuildTool"/> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib"/> - <Tool - Name="VCMIDLTool"/> - <Tool - Name="VCPostBuildEventTool"/> - <Tool - Name="VCPreBuildEventTool"/> - <Tool - Name="VCPreLinkEventTool"/> - <Tool - Name="VCResourceCompilerTool"/> - <Tool - Name="VCWebServiceProxyGeneratorTool"/> - <Tool - Name="VCXMLDataGeneratorTool"/> - <Tool - Name="VCManagedWrapperGeneratorTool"/> - <Tool - Name="VCAuxiliaryManagedWrapperGeneratorTool"/> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> - <File - RelativePath="..\..\dep\src\zthread\AtomicCount.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ConcurrentExecutor.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Condition.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ConditionImpl.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\config.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\CountingSemaphore.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Debug.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\DeferredInterruptionScope.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\FastLock.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\FastMutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\FastRecursiveLock.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\FastRecursiveMutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\IntrusivePtr.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Monitor.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Monitor.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Mutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\MutexImpl.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\PoolExecutor.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityCondition.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityInheritanceMutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityMutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\PrioritySemaphore.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutex.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutexImpl.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutexImpl.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Scheduling.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Semaphore.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\SemaphoreImpl.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\State.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Status.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\SynchronousExecutor.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Thread.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadedExecutor.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadImpl.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadImpl.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadLocalImpl.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadOps.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadOps.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadQueue.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadQueue.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\Time.cxx"> - </File> - <File - RelativePath="..\..\dep\src\zthread\TimeStrategy.h"> - </File> - <File - RelativePath="..\..\dep\src\zthread\TSS.h"> - </File> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> - <File - RelativePath="..\..\dep\include\zthread\AtomicCount.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Barrier.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\BiasedReadWriteLock.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\BlockingQueue.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\BoundedQueue.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Cancelable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ClassLockable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ConcurrentExecutor.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Condition.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Config.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\CountedPtr.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\CountingSemaphore.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Exceptions.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Executor.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\FairReadWriteLock.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\FastMutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\FastRecursiveMutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Guard.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\GuardedClass.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Lockable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\LockedQueue.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\MonitoredQueue.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Mutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\NonCopyable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\PoolExecutor.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Priority.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityCondition.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityInheritanceMutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityMutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\PrioritySemaphore.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Queue.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ReadWriteLock.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\RecursiveMutex.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Runnable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Semaphore.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Singleton.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\SynchronousExecutor.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Task.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Thread.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadedExecutor.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadLocal.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadLocalImpl.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Time.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\Waitable.h"> - </File> - <File - RelativePath="..\..\dep\include\zthread\ZThread.h"> - </File> - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> diff --git a/win/VC80/ScriptsInterfaces.vcproj b/win/VC80/ScriptsInterfaces.vcproj index 72c7626138d..d4329a747cc 100644 --- a/win/VC80/ScriptsInterfaces.vcproj +++ b/win/VC80/ScriptsInterfaces.vcproj @@ -65,10 +65,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" - LinkIncremental="2" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + LinkIncremental="1" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" @@ -148,10 +148,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" - LinkIncremental="2" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + LinkIncremental="1" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)TrinityScript.pdb" SubSystem="2" @@ -209,7 +209,7 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="WIN32;_DEBUG;TRINITY_DEBUG;_WINDOWS;_USRDLL;SCRIPT" MinimalRebuild="true" BasicRuntimeChecks="3" @@ -230,14 +230,14 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="mangosd.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\MaNGOSScript.dll" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\mangosd__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_debug";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="$(OutDir)\MaNGOSScript.pdb" + ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" - ImportLibrary="$(OutDir)\MaNGOSScript.lib" + ImportLibrary="$(OutDir)\TrinityScript.lib" TargetMachine="1" /> <Tool @@ -292,7 +292,7 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="WIN32;_DEBUG;TRINITY_DEBUG;_WINDOWS;_USRDLL;SCRIPT" MinimalRebuild="true" BasicRuntimeChecks="3" @@ -313,14 +313,14 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="mangosd.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\MaNGOSScript.dll" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\mangosd__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_debug";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="$(OutDir)\MaNGOSScript.pdb" + ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" - ImportLibrary="$(OutDir)\MaNGOSScript.lib" + ImportLibrary="$(OutDir)\TrinityScript.lib" TargetMachine="17" /> <Tool @@ -394,10 +394,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib ace.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" @@ -477,10 +477,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib ace.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" diff --git a/win/VC80/TrinityCore.vcproj b/win/VC80/TrinityCore.vcproj index 2d252123d11..3548c707cc5 100644 --- a/win/VC80/TrinityCore.vcproj +++ b/win/VC80/TrinityCore.vcproj @@ -4,7 +4,7 @@ Version="8,00" Name="TrinityCore" ProjectGUID="{A3A04E47-43A2-4C08-90B3-029CEF558594}" - RootNamespace="mangosd" + RootNamespace="trinitycore" > <Platforms> <Platform @@ -41,7 +41,7 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\..\..\bin\Release\mangosd.tlb" + TypeLibraryName=".\..\..\bin\Release\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -120,8 +120,8 @@ </Configuration> <Configuration Name="Debug|Win32" - OutputDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" @@ -142,22 +142,22 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\trinitycore;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE;ENABLE_CLI" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.pch" - AssemblerListingLocation=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\mangosd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.pch" + AssemblerListingLocation=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -179,18 +179,18 @@ Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.exe" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.exe" Version="" LinkIncremental="1" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.map" SubSystem="1" LargeAddressAware="2" - ImportLibrary="$(OutDir)\mangosd.lib" + ImportLibrary="$(OutDir)\trinitycore.lib" FixedBaseAddress="1" /> <Tool @@ -221,8 +221,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|Win32" - OutputDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" @@ -243,22 +243,22 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\trinitycore;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE;ENABLE_CLI" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.pch" - AssemblerListingLocation=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\mangosd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.pch" + AssemblerListingLocation=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -280,18 +280,18 @@ Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.exe" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.exe" Version="" LinkIncremental="1" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.map" SubSystem="1" LargeAddressAware="2" - ImportLibrary="$(OutDir)\mangosd.lib" + ImportLibrary="$(OutDir)\trinitycore.lib" FixedBaseAddress="1" /> <Tool @@ -345,7 +345,7 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\..\..\bin\Release\mangosd.tlb" + TypeLibraryName=".\..\..\bin\Release\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -446,7 +446,7 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -547,7 +547,7 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" diff --git a/win/VC80/TrinityRealm.vcproj b/win/VC80/TrinityRealm.vcproj index dfd64134a48..8be0bdf2829 100644 --- a/win/VC80/TrinityRealm.vcproj +++ b/win/VC80/TrinityRealm.vcproj @@ -4,7 +4,7 @@ Version="8,00" Name="TrinityRealm" ProjectGUID="{563E9905-3657-460C-AE63-0AC39D162E23}" - RootNamespace="realmd" + RootNamespace="TrinityRealm" > <Platforms> <Platform @@ -41,20 +41,20 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" InlineFunctionExpansion="1" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN",WIN32,NDEBUG,_CONSOLE" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" EnableEnhancedInstructionSet="1" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -78,11 +78,11 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -141,20 +141,20 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" InlineFunctionExpansion="1" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN",WIN32,NDEBUG,_CONSOLE" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" EnableEnhancedInstructionSet="0" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -177,11 +177,11 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -239,19 +239,19 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -275,11 +275,11 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -339,19 +339,19 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -374,11 +374,11 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -415,8 +415,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|Win32" - OutputDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" @@ -437,22 +437,22 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -473,15 +473,15 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.exe" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_debug";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.map" SubSystem="1" LargeAddressAware="2" FixedBaseAddress="1" @@ -513,8 +513,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|x64" - OutputDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" @@ -536,22 +536,22 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="true" @@ -571,15 +571,15 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.exe" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_debug";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.map" SubSystem="1" TargetMachine="17" FixedBaseAddress="1" diff --git a/win/VC80/shared.vcproj b/win/VC80/shared.vcproj index f27a928691a..9ae4929de01 100644 --- a/win/VC80/shared.vcproj +++ b/win/VC80/shared.vcproj @@ -79,6 +79,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -161,6 +162,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -239,6 +241,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -317,6 +320,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib user32.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_debug" SuppressStartupBanner="true" /> <Tool @@ -397,6 +401,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -477,6 +482,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib user32.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_debug" SuppressStartupBanner="true" /> <Tool @@ -836,6 +842,10 @@ > </File> <File + RelativePath="..\..\src\shared\LockedQueue.h" + > + </File> + <File RelativePath="..\..\src\shared\revision.h" > <FileConfiguration @@ -895,6 +905,14 @@ RelativePath="..\..\src\shared\SystemConfig.h" > </File> + <File + RelativePath="..\..\src\shared\Threading.cpp" + > + </File> + <File + RelativePath="..\..\src\shared\Threading.h" + > + </File> </Files> <Globals> </Globals> diff --git a/win/VC90/ScriptsInterfaces.vcproj b/win/VC90/ScriptsInterfaces.vcproj index 34ad97341e5..7037cffdf68 100644 --- a/win/VC90/ScriptsInterfaces.vcproj +++ b/win/VC90/ScriptsInterfaces.vcproj @@ -67,10 +67,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" @@ -150,10 +150,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" @@ -230,10 +230,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib ace.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" @@ -312,10 +312,10 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="trinitycore.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib ace.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\trinitycore__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="false" SubSystem="2" OptimizeReferences="2" @@ -372,7 +372,7 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="WIN32;_DEBUG;TRINITY_DEBUG;_WINDOWS;_USRDLL;SCRIPT" MinimalRebuild="true" BasicRuntimeChecks="3" @@ -395,16 +395,16 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="mangosd.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\MaNGOSScript.dll" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\mangosd__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_debug";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="$(OutDir)\MaNGOSScript.pdb" + ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" - ImportLibrary="$(OutDir)\MaNGOSScript.lib" + ImportLibrary="$(OutDir)\TrinityScript.lib" TargetMachine="1" /> <Tool @@ -455,7 +455,7 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\src\shared;..\..\src\framework;..\..\dep\include;..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="WIN32;_DEBUG;TRINITY_DEBUG;_WINDOWS;_USRDLL;SCRIPT" MinimalRebuild="true" BasicRuntimeChecks="3" @@ -478,16 +478,16 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="mangosd.lib zlib.lib zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\MaNGOSScript.dll" + AdditionalDependencies="trinitycore.lib zlib.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib aced.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityScript.dll" LinkIncremental="1" - AdditionalLibraryDirectories="".\mangosd__$(PlatformName)_$(ConfigurationName)";"..\..\dep\lib\$(PlatformName)_debug";".\zlib__$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories=";.\trinitycore__$(PlatformName)_$(ConfigurationName);.\zlib__$(PlatformName)_$(ConfigurationName);..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="$(OutDir)\MaNGOSScript.pdb" + ProgramDatabaseFile="$(OutDir)\TrinityScript.pdb" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" - ImportLibrary="$(OutDir)\MaNGOSScript.lib" + ImportLibrary="$(OutDir)\TrinityScript.lib" TargetMachine="17" /> <Tool diff --git a/win/VC90/TrinityCore.vcproj b/win/VC90/TrinityCore.vcproj index 876af9c0cd4..c93fa3eda09 100644 --- a/win/VC90/TrinityCore.vcproj +++ b/win/VC90/TrinityCore.vcproj @@ -4,7 +4,7 @@ Version="9,00" Name="TrinityCore" ProjectGUID="{A3A04E47-43A2-4C08-90B3-029CEF558594}" - RootNamespace="mangosd" + RootNamespace="trinitycore" Keyword="Win32Proj" TargetFrameworkVersion="0" > @@ -42,7 +42,7 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\..\..\bin\Release\mangosd.tlb" + TypeLibraryName=".\..\..\bin\Release\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -143,7 +143,7 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\..\..\bin\Release\mangosd.tlb" + TypeLibraryName=".\..\..\bin\Release\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -242,7 +242,7 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -344,7 +344,7 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" @@ -423,8 +423,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|Win32" - OutputDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" @@ -444,23 +444,23 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\trinitycore;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE;ENABLE_CLI" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.pch" - AssemblerListingLocation=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\mangosd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.pch" + AssemblerListingLocation=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="false" @@ -483,21 +483,21 @@ Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.exe" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.exe" Version="" LinkIncremental="1" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.map" SubSystem="1" LargeAddressAware="2" RandomizedBaseAddress="1" FixedBaseAddress="1" DataExecutionPrevention="0" - ImportLibrary="$(OutDir)\mangosd.lib" + ImportLibrary="$(OutDir)\trinitycore.lib" /> <Tool Name="VCALinkTool" @@ -524,8 +524,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|x64" - OutputDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\mangosd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\trinitycore__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" @@ -546,23 +546,23 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.tlb" + TypeLibraryName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\mangosd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include,..\..\src\framework,..\..\src\shared,..\..\src\game,..\..\src\trinitycore;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.13.0-DEV";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE;ENABLE_CLI" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\mangosd.pch" - AssemblerListingLocation=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\mangosd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\mangosd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\trinitycore.pch" + AssemblerListingLocation=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\trinitycore__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="false" @@ -584,20 +584,20 @@ <Tool Name="VCLinkerTool" AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.exe" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.exe" Version="" LinkIncremental="1" SuppressStartupBanner="true" AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\mangosd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\trinitycore.map" SubSystem="1" RandomizedBaseAddress="1" FixedBaseAddress="1" DataExecutionPrevention="0" - ImportLibrary="$(OutDir)\mangosd.lib" + ImportLibrary="$(OutDir)\trinitycore.lib" TargetMachine="17" /> <Tool diff --git a/win/VC90/TrinityRealm.vcproj b/win/VC90/TrinityRealm.vcproj index e8854c107c6..98f1979ab1d 100644 --- a/win/VC90/TrinityRealm.vcproj +++ b/win/VC90/TrinityRealm.vcproj @@ -4,7 +4,7 @@ Version="9,00" Name="TrinityRealm" ProjectGUID="{563E9905-3657-460C-AE63-0AC39D162E23}" - RootNamespace="realmd" + RootNamespace="TrinityRealm" Keyword="Win32Proj" > <Platforms> @@ -41,20 +41,20 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" InlineFunctionExpansion="1" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN",WIN32,NDEBUG,_CONSOLE" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" EnableEnhancedInstructionSet="1" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -79,11 +79,11 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -140,20 +140,20 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" InlineFunctionExpansion="1" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN",WIN32,NDEBUG,_CONSOLE" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" EnableEnhancedInstructionSet="0" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -177,11 +177,11 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRT.LIB msvcrt.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -237,20 +237,20 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -275,11 +275,11 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -337,20 +337,20 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\realmd.pch" + PrecompiledHeaderFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" AssemblerListingLocation=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ObjectFile=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" ProgramDataBaseFileName=".\trinityrealm__$(PlatformName)_$(ConfigurationName)\" @@ -374,11 +374,11 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_$(ConfigurationName)";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_$(ConfigurationName)" GenerateDebugInformation="true" ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" @@ -414,8 +414,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|Win32" - OutputDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" @@ -435,23 +435,23 @@ /> <Tool Name="VCMIDLTool" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="false" @@ -473,15 +473,15 @@ <Tool Name="VCLinkerTool" AdditionalOptions="/MACHINE:I386" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.exe" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_debug";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.map" SubSystem="1" LargeAddressAware="2" RandomizedBaseAddress="1" @@ -512,8 +512,8 @@ </Configuration> <Configuration Name="Debug_NoPCH|x64" - OutputDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\realmd__$(PlatformName)_$(ConfigurationName)" + OutputDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)" ConfigurationType="1" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" @@ -534,23 +534,23 @@ <Tool Name="VCMIDLTool" TargetEnvironment="3" - TypeLibraryName=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.tlb" + TypeLibraryName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.tlb" /> <Tool Name="VCCLCompilerTool" AdditionalOptions="/MP" Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\realmd;..\..\dep\ACE_wrappers" + AdditionalIncludeDirectories="..\..\dep\include;..\..\src\framework;..\..\src\shared;..\..\src\TrinityRealm;..\..\dep\ACE_wrappers" PreprocessorDefinitions="VERSION="0.12.0-SVN";WIN32;_DEBUG;TRINITY_DEBUG;_CONSOLE" IgnoreStandardIncludePath="false" BasicRuntimeChecks="3" RuntimeLibrary="3" EnableFunctionLevelLinking="true" RuntimeTypeInfo="true" - PrecompiledHeaderFile=".\realmd__$(PlatformName)_$(ConfigurationName)\realmd.pch" - AssemblerListingLocation=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ObjectFile=".\realmd__$(PlatformName)_$(ConfigurationName)\" - ProgramDataBaseFileName=".\realmd__$(PlatformName)_$(ConfigurationName)\" + PrecompiledHeaderFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\TrinityRealm.pch" + AssemblerListingLocation=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ObjectFile=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" + ProgramDataBaseFileName=".\TrinityRealm__$(PlatformName)_$(ConfigurationName)\" WarningLevel="3" SuppressStartupBanner="true" Detect64BitPortabilityProblems="false" @@ -571,15 +571,15 @@ /> <Tool Name="VCLinkerTool" - AdditionalDependencies="zthread.lib libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" - OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.exe" + AdditionalDependencies="libmySQL.lib libeay32.lib ws2_32.lib winmm.lib odbc32.lib odbccp32.lib advapi32.lib dbghelp.lib MSVCPRTD.LIB msvcrtd.lib" + OutputFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.exe" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories=""..\..\dep\lib\$(PlatformName)_debug";".\zthread__$(PlatformName)_$(ConfigurationName)"" + AdditionalLibraryDirectories="..\..\dep\lib\$(PlatformName)_debug" GenerateDebugInformation="true" - ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.pdb" + ProgramDatabaseFile="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.pdb" GenerateMapFile="true" - MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\realmd.map" + MapFileName="..\..\bin\$(PlatformName)_$(ConfigurationName)\TrinityRealm.map" SubSystem="1" RandomizedBaseAddress="1" FixedBaseAddress="1" diff --git a/win/VC90/shared.vcproj b/win/VC90/shared.vcproj index 11aaff1251b..ddc64f094f5 100644 --- a/win/VC90/shared.vcproj +++ b/win/VC90/shared.vcproj @@ -80,6 +80,7 @@ <Tool Name="VCLibrarianTool" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -162,6 +163,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -241,6 +243,7 @@ <Tool Name="VCLibrarianTool" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -322,6 +325,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_$(ConfigurationName)" SuppressStartupBanner="true" /> <Tool @@ -401,6 +405,7 @@ <Tool Name="VCLibrarianTool" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_debug" SuppressStartupBanner="true" /> <Tool @@ -482,6 +487,7 @@ Name="VCLibrarianTool" AdditionalDependencies=".\g3dlite__$(PlatformName)_$(ConfigurationName)\g3dlite.lib" OutputFile=".\shared__$(PlatformName)_$(ConfigurationName)\shared.lib" + AdditionalLibraryDirectories="dep\lib\$(PlatformName)_debug" SuppressStartupBanner="true" /> <Tool @@ -845,6 +851,10 @@ > </File> <File + RelativePath="..\..\src\shared\LockedQueue.h" + > + </File> + <File RelativePath="..\..\src\shared\revision.h" > <FileConfiguration @@ -926,6 +936,14 @@ RelativePath="..\..\src\shared\SystemConfig.h" > </File> + <File + RelativePath="..\..\src\shared\Threading.cpp" + > + </File> + <File + RelativePath="..\..\src\shared\Threading.h" + > + </File> </Files> <Globals> </Globals> diff --git a/win/VC90/zthread.vcproj b/win/VC90/zthread.vcproj deleted file mode 100644 index a381daa3198..00000000000 --- a/win/VC90/zthread.vcproj +++ /dev/null @@ -1,799 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="9,00" - Name="zthread" - ProjectGUID="{262199E8-EEDF-4700-A1D1-E9CC901CF480}" - RootNamespace="zthread" - Keyword="Win32Proj" - > - <Platforms> - <Platform - Name="Win32" - /> - <Platform - Name="x64" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - EnableFunctionLevelLinking="true" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Debug|x64" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - TargetEnvironment="3" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - EnableFunctionLevelLinking="true" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="/MP" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - RuntimeLibrary="2" - EnableEnhancedInstructionSet="1" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Release|x64" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - TargetEnvironment="3" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="/MP" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - RuntimeLibrary="2" - EnableEnhancedInstructionSet="0" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Debug_NoPCH|Win32" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - EnableFunctionLevelLinking="true" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Debug_NoPCH|x64" - OutputDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - IntermediateDirectory=".\zthread__$(PlatformName)_$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - TargetEnvironment="3" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\dep\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE" - MinimalRebuild="true" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - EnableFunctionLevelLinking="true" - RuntimeTypeInfo="true" - UsePrecompiledHeader="0" - PrecompiledHeaderFile=".\zthread__$(PlatformName)_$(ConfigurationName)\zthread.pch" - WarningLevel="3" - Detect64BitPortabilityProblems="false" - DebugInformationFormat="3" - CallingConvention="0" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)/zthread.lib" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\dep\src\zthread\AtomicCount.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ConcurrentExecutor.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Condition.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ConditionImpl.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\config.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\CountingSemaphore.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Debug.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\DeferredInterruptionScope.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\FastLock.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\FastMutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\FastRecursiveLock.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\FastRecursiveMutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\IntrusivePtr.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Monitor.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Monitor.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Mutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\MutexImpl.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\PoolExecutor.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityCondition.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityInheritanceMutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\PriorityMutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\PrioritySemaphore.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutex.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutexImpl.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\RecursiveMutexImpl.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Scheduling.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Semaphore.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\SemaphoreImpl.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\State.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Status.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\SynchronousExecutor.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Thread.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadedExecutor.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadImpl.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadImpl.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadLocalImpl.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadOps.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadOps.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadQueue.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\ThreadQueue.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\Time.cxx" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\TimeStrategy.h" - > - </File> - <File - RelativePath="..\..\dep\src\zthread\TSS.h" - > - </File> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - <File - RelativePath="..\..\dep\include\zthread\AtomicCount.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Barrier.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\BiasedReadWriteLock.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\BlockingQueue.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\BoundedQueue.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Cancelable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ClassLockable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ConcurrentExecutor.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Condition.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Config.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\CountedPtr.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\CountingSemaphore.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Exceptions.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Executor.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\FairReadWriteLock.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\FastMutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\FastRecursiveMutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Guard.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\GuardedClass.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Lockable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\LockedQueue.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\MonitoredQueue.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Mutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\NonCopyable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\PoolExecutor.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Priority.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityCondition.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityInheritanceMutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\PriorityMutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\PrioritySemaphore.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Queue.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ReadWriteLock.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\RecursiveMutex.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Runnable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Semaphore.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Singleton.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\SynchronousExecutor.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Task.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Thread.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadedExecutor.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadLocal.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ThreadLocalImpl.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Time.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\Waitable.h" - > - </File> - <File - RelativePath="..\..\dep\include\zthread\ZThread.h" - > - </File> - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> |