sourcemod/core
David Anderson f76cb94511 Pare down ThreadSupport and remove ancient thread code.
This patch removes almost all of the existing platform-specific
ThreadSupport code, as well as code derived from it. It is now
implemented on top of C++11 threads and is much simpler.

This is the first inclusion of STL in SourceMod. Mac and Windows are
allowed to dynamically link to their respective implementations. On
Linux, libstdc++ is statically linked, except in the cases where it was
already dynamically linked (csgo, blade).

IEventSignal has been retained because sourcemod-curl-extension relies
on it. As written, it is impossible to use as a condition variable,
because the caller does not have access to the underlying mutex. There
is no way to make this API safe or non-racy, so extensions relying on
it should switch to C++11 threads.

ThreadWorker is now pared down and does not interact or inherit from
BaseWorker in any way. Basic functionality has been tested. Since it is
not used anywhere in SourceMod, or seemingly in any repository on
GitHub, it's unclear whether it should even exist. But it has been
tested in this patch.

This change bumps the minimum macOS version to OS X 10.7, and the
minimum C++ standard level to C++14.
2020-05-13 00:35:29 -07:00
..
logic Pare down ThreadSupport and remove ancient thread code. 2020-05-13 00:35:29 -07:00
AMBuilder Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
CellRecipientFilter.h Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
ChatTriggers.cpp Allow setting multiple chat trigger characters (PR #449, bug 4341, bug 5668) 2016-10-04 16:34:42 +01:00
ChatTriggers.h Allow setting multiple chat trigger characters (PR #449, bug 4341, bug 5668) 2016-10-04 16:34:42 +01:00
command_args.h Move CCommandArgs into its own header. 2015-08-31 00:07:37 -07:00
concmd_cleaner.cpp Fix unnecessary ConCommand cache misses (#1256) 2020-05-08 15:28:45 -07:00
concmd_cleaner.h Remove bad-console-read protection logic for Metamod:Source 1.7 and earlier. 2015-09-09 18:59:31 -07:00
ConCmdManager.cpp Add base CommandIterator implementation (#819) 2018-07-10 17:39:31 -04:00
ConCmdManager.h Add base CommandIterator implementation (#819) 2018-07-10 17:39:31 -04:00
ConCommandBaseIterator.h Added support for Alien Swarm (bug 4530, r=dvander). 2010-07-27 17:32:32 -05:00
ConsoleDetours.cpp Use newer MM:S api for Ep1/Original engine. (#548) 2017-01-11 21:25:00 -05:00
ConsoleDetours.h Move ConCommand hooks into GameHooks and switch callbacks to ICommandArgs. 2015-09-09 18:40:04 -07:00
ConVarManager.cpp Fix unnecessary ConVar cache misses (#1177) 2020-02-11 00:39:19 -08:00
ConVarManager.h Fix unnecessary ConVar cache misses (#1177) 2020-02-11 00:39:19 -08:00
CoreConfig.cpp Out with the old ConVar accessibility hacks, in with the new. 2018-05-06 12:59:33 -04:00
CoreConfig.h Replace the AddRootConsoleCommand API to not expose internal structures. 2015-08-30 21:01:03 -07:00
EventManager.cpp 64-bit support for CSGO on Linux and macOS (#705) 2017-12-20 01:56:23 -06:00
EventManager.h Individualize NameHashSet Hashing & Revisit #709 (#740) 2018-07-10 17:38:40 -04:00
frame_hooks.cpp Move DBManager and DB natives from core to logic (bug 5953, r=fyren). 2013-10-09 08:43:08 -04:00
frame_hooks.h Initial import of updater extension, currently incomplete - just getting it in the tree (bug 3530). 2009-02-02 15:41:25 -05:00
GameHooks.cpp Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
GameHooks.h Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
HalfLife2.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
HalfLife2.h Fix heap corruption in CUtlVector destructor (#1165) 2020-02-08 15:36:21 -08:00
Logger.cpp Split intercom.h into separate headers and reduce shared header inclusion. 2015-08-31 10:00:49 -07:00
Logger.h Move Logger and Core natives to Logic 2014-08-13 14:24:35 -07:00
logic_bridge.cpp Fix matchmaking_ds bin not being found for gamedata (#1006). (#1028) 2019-06-01 14:30:22 -04:00
logic_bridge.h Split intercom.h into separate headers and reduce shared header inclusion. 2015-08-31 10:00:49 -07:00
MenuManager.cpp Fix typo in menu manager drawing no spacer (#581) 2017-02-04 08:16:27 -05:00
MenuManager.h Remove MenuManager use of memtables (bug 5899 part 2, r=fyren). 2013-08-31 11:50:28 -07:00
MenuStyle_Base.cpp Add basic support for Black Mesa. 2015-05-06 21:12:13 -04:00
MenuStyle_Base.h Update AMTL. 2018-05-31 21:23:59 -07:00
MenuStyle_Radio.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
MenuStyle_Radio.h Root Menu Handles during Display. 2015-02-21 17:10:26 -08:00
MenuStyle_Valve.cpp Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
MenuStyle_Valve.h Root Menu Handles during Display. 2015-02-21 17:10:26 -08:00
MenuVoting.cpp Fixed client console vote output missing newlines (bug 5205, r=psychonic). 2012-05-26 18:25:28 -04:00
MenuVoting.h Added voting output (bug 1997, r=dvander) 2009-09-17 18:54:40 +12:00
NextMap.cpp Replace ke::SafeSprintf with ke::SafeStrcpy (#784) 2018-03-19 20:12:51 +00:00
NextMap.h Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
PlayerManager.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
PlayerManager.h engine: Implement message buffering. (#1071) 2020-02-27 16:21:31 -08:00
provider.h Update to the latest AMTL: remove PassRef. 2015-11-08 13:51:22 -08:00
sm_autonatives.cpp Move scared guts of core into logic (bug 5680, r=fyren). 2013-03-29 11:37:29 -07:00
sm_autonatives.h Move scared guts of core into logic (bug 5680, r=fyren). 2013-03-29 11:37:29 -07:00
sm_convar.h Out with the old ConVar accessibility hacks, in with the new. 2018-05-06 12:59:33 -04:00
sm_fastlink.h Added detection for clang compiler and fixed various warnings triggered by it (bug 4878, r=dvander). 2011-04-23 21:53:53 -05:00
sm_globals.h Add support for retrieving game server Steam Id (bug 6404). (#495) 2016-04-26 23:17:08 -04:00
sm_memtable.h Refactor Trie natives to use HashMap instead of KTrie; add iteration API (bug 5892, r=ds). 2013-08-29 10:09:02 -07:00
sm_stringutil.cpp Remove blanket includes from sm_stringutil. 2015-09-09 15:18:24 -07:00
sm_stringutil.h Remove blanket includes from sm_stringutil. 2015-09-09 15:18:24 -07:00
smn_bitbuffer.cpp Implement a new stack and error handling model for the SourcePawn VM. 2015-03-04 23:45:30 -08:00
smn_commandline.cpp Fix default value always being when calling ParmValue(string,string). 2017-04-22 21:28:44 -04:00
smn_console.cpp Fix unnecessary ConCommand cache misses (#1256) 2020-05-08 15:28:45 -07:00
smn_entities.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
smn_events.cpp Add getter for Event.BroadcastDisabled (#946) 2019-01-03 19:42:42 +00:00
smn_halflife.cpp Revert "csgo: enable SayText + raise msg limits (#1118)" (#1209) 2020-03-08 13:27:13 +00:00
smn_hudtext.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
smn_keyvalues.cpp Add Cookie methodmap (#1012) 2019-05-30 18:27:14 -07:00
smn_keyvalues.h Add KeyValues.ExportToString (#706) 2017-10-28 12:47:00 +01:00
smn_nextmap.cpp - Added ForceChangeLevel and Map History to nextmap api 2008-07-13 05:13:37 +00:00
smn_player.cpp Move adminsys and more natives from core to logic. 2014-05-29 13:31:12 -04:00
smn_protobuf.cpp pb: Add natives to work with 64 bit values (#943) 2019-03-04 09:06:43 -08:00
smn_usermsgs.cpp Remove support for Source 1 Dota 2. (#496) 2016-04-26 23:18:47 -04:00
smn_usermsgs.h Added initial support for protobuf usermessages on CS:GO (bug 5579, r=asherkin). 2013-01-22 21:43:12 -05:00
smn_vector.cpp Added preliminary support for Left 4 Dead; some things may not yet work. 2008-11-14 09:18:30 -06:00
sourcemm_api.cpp Migrate extensions to common AMTL string funcs (#785) 2018-03-25 13:00:53 -07:00
sourcemm_api.h Out with the old ConVar accessibility hacks, in with the new. 2018-05-06 12:59:33 -04:00
sourcemod.cpp Burninate IDataPack (#864) 2018-08-13 23:03:48 +01:00
sourcemod.h Burninate IDataPack (#864) 2018-08-13 23:03:48 +01:00
TimerSys.cpp Fix timelimit not correct for Black Mesa (#1262) 2020-05-06 22:59:43 +00:00
TimerSys.h Move scared guts of core into logic (bug 5680, r=fyren). 2013-03-29 11:37:29 -07:00
UserMessagePBHelpers.h Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
UserMessages.cpp Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
UserMessages.h Update for latest Blade Symphony SDK 2020-03-11 22:36:25 +00:00
version.rc Overhauled versioning information (bug 5453, r=dvander). 2012-08-26 01:33:54 +01:00
vprof_tool.cpp Add a command to dump profiling output. 2014-08-09 13:32:05 -05:00
vprof_tool.h Update to the latest AMTL version. 2015-08-27 01:01:18 -04:00