summaryrefslogtreecommitdiff
path: root/indra/llcommon/CMakeLists.txt
AgeCommit message (Collapse)Author
2013-01-11SH-3406 WIP convert fast timers to lltrace systemRichard Linden
moved thread local storage to its own cpp file
2013-01-09SH-3468 WIP add memory tracking base classRichard Linden
fix for linux build issues
2013-01-04Automated merge with http://bitbucket.org/lindenlab/viewer-developmentRichard Linden
2013-01-03SH-3406 WIP convert fast timers to lltrace systemRichard Linden
made fast timer stack thread local added LLThreadLocalSingleton made LLThreadLocalPointer obey pointer rules for const added LLThreadLocalSingletonPointer for fast thread local pointers
2012-12-07SH-3406 WIP convert fast timers to lltrace systemRichard Linden
improved unit tests for LLUnit renamed LLUnit to LLUnitImplicit with LLUnit being reserved for explicit units
2012-12-06SH-3406 WIP convert fast timers to lltrace systemRichard Linden
added unit tests for LLUnit
2012-11-16Some Mac header #defines macros like check and equivalent -- gack!!Nat Goodspeed
Given that third-party libraries (such as Boost) can and do use those names, properly namespace-scoped, it's unpardonable to break any such innocent usage with a macro. Given the pervasiveness of the need, introduce a header file with the requisite #undef directives.
2012-11-01SH-3405 FIX convert existing stats to lltrace systemRichard Linden
final removal of remaining LLStat code
2012-10-22SH-3405 WIP convert existing stats to lltrace systemRichard Linden
sanitized param block code to accept isValid and isProvided at any point added predicates to control serialization
2012-10-04SH-3275 WIP Update viewer metrics system to be more flexibleRichard Linden
moved threadrecorder classes into separate file added Count trace type, which tracks value increases and decreases and can report churn as well as overall growth rate
2012-10-03SH-3405 WIP convert existing stats to lltrace systemRichard Linden
SH-3403 FIX implement unit conversion LLUnit implements unit tracking and conversion added support for LLUnit to LLTrace duplicated most llstats into LLTrace equivalents
2012-10-02SH-3404 create sampler classRichard Linden
renamed LLTrace::ThreadTrace to LLTrace::ThreadRecorder renamed LLTrace::Sampler to LLTrace::Recording
2012-09-30SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
factored out lltrace::sampler into separate file added rudimentary lltrace support to llstatgraph made llstatgraph use param blocks more effectively moves initial set of stats over to lltrace removed windows.h #defines for min and max
2012-09-24SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
moved LLThreadLocalPtr to llapr fixed various startup race conditions for LLThreadLocalPtr
2012-09-21SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
added LLThreadLocalPtr broke llmutex out into llmutex.h got primary sampling buffer under thread local storage
2012-09-06Automated merge with http://bitbucket.org/lindenlab/viewer-developmentRichard Linden
2012-09-05SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
first pass at LLTrace framework
2012-08-24Automated merge with http://bitbucket.org/lindenlab/viewer-catRichard Linden
2012-08-08Move llhandle.h into llcommon; same generality as llpointer.h.Nat Goodspeed
Leaving llhandle.h in llui restricts the set of viewer project directories which could potentially use it, and there's nothing whatsoever UI-specific about it.
2012-08-06llfasttimer cleanupRichard Linden
removed unnecessary cache miss from fast timers renamed llfasttimer_class back to llfasttimer
2012-07-20MAINT-570 Remove unused memory tracking system LLMemTypeDave Parks
2012-04-11Merge daggy fix c167ae699e17 for Linux UI issues.Nat Goodspeed
2012-04-11Fix Linux UI issues introduced by moving llinitparam to llcommon.Nat Goodspeed
In a number of places, the viewer uses a lookup based on std::type_info*. We used to use std::map<std::type_info*, whatever>. But on Linux, &typeid(SomeType) can produce different pointer values, depending on the dynamic load module in which the code is executed. Introduce LLTypeInfoLookup<T>, with an API that deliberately mimics std::map<std::type_info*, T>. LLTypeInfoLookup::find() first tries an efficient search for the specified std::type_info*. But if that fails, it scans the underlying container for a match on the std::type_info::name() string. If found, it caches the new std::type_info* to optimize subsequent lookups with the same pointer. Use LLTypeInfoLookup instead of std::map<std::type_info*, ...> in llinitparam.h and llregistry.h. Introduce LLSortedVector<KEY, VALUE>, a std::vector<std::pair<KEY, VALUE>> maintained in sorted order with binary-search lookup. It presents a subset of the std::map<KEY, VALUE> API.
2012-03-16Introduce LLLeapListener, associating one with each LLLeap object.Nat Goodspeed
Every LEAP plugin gets its own LLLeapListener, managing its own collection of listeners to various LLEventPumps. LLLeapListener's command LLEventPump now has a UUID for a name, both for uniqueness and to make it tough for a plugin to mess with any other.
2012-03-01Add LLLeap class, initial implementation, initial unit tests.Nat Goodspeed
Instantiating LLLeap with a command to execute a particular child process sets up machinery to speak LLSD Event API Plugin protocol with that child process. LLLeap is an LLInstanceTracker subclass, so the code that instantiates need not hold the pointer. LLLeap monitors child-process termination and deletes itself when done.
2012-02-24Get rid of indra/llcommon/tests/setpython.py.Nat Goodspeed
run_build_test.py already has the capability to set environment variables, and we may as well direct it to set PYTHON to the running Python interpreter. That completely eliminates one level of process wrapper.
2012-01-20Automated merge with http://hg.lindenlab.com/richard/viewer-initparam-llcommonNat Goodspeed
2012-01-20Per Richard, replace LLProcessLauncher with LLProcess.Nat Goodspeed
LLProcessLauncher had the somewhat fuzzy mandate of (1) accumulating parameters with which to launch a child process and (2) sometimes tracking the lifespan of the ensuing child process. But a valid LLProcessLauncher object might or might not have ever been associated with an actual child process. LLProcess specifically tracks a child process. In effect, it's a fairly thin wrapper around a process HANDLE (on Windows) or pid_t (elsewhere), with lifespan management thrown in. A static LLProcess::create() method launches a new child; create() accepts an LLSD bundle with child parameters. So building up a parameter bundle is deferred to LLSD rather than conflated with the process management object. Reconcile all known LLProcessLauncher consumers in the viewer code base, notably the class unit tests.
2012-01-20moved LLSDParam to llcommon so that LLSD<->Param Block conversion are usable ↵Richard Linden
by everyone
2012-01-20removed LLXUIXML libraryRichard Linden
moved LLInitParam, and LLRegistry to llcommon moved LLUIColor, LLTrans, and LLXUIParser to llui reviewed by Nat
2012-01-17Add first couple of LLProcessLauncher tests.Nat Goodspeed
Run INTEGRATION_TEST_llprocesslauncher using setpython.py so we can find the Python interpreter of interest. Introduce python() function to run a Python script specified using NamedTempFile conventions. Introduce a convention by which we can read output from a Python script using only the limited pre-January-2012 LLProcessLauncher API. Introduce python_out() function to leverage that convention. Exercise a couple of LLProcessLauncher methods using all the above.
2012-01-05Introduce LLStreamQueue to buffer nonblocking I/O.Nat Goodspeed
Add unit tests to verify basic functionality.
2011-12-21Add unit-test module for LLProcessLauncher.Nat Goodspeed
As always with llcommon, this is expressed as an "integration test" to sidestep a circular dependency: the llcommon build depends on its unit tests, but all our unit tests depend on llcommon. Initial test code is more for human verification than automated verification: does APR's child-process management in fact support nonblocking operations?
2011-10-14Merge backout of b782a75c99e6Dave Parks
2011-10-14Backed out changeset b782a75c99e6Dave Parks
2011-09-13mergeBrad Payne (Vir Linden)
2011-09-07Merge. Fixed issue with LLProxy code related to changes to the LLSocket ↵Logan Dethrow
interface.
2011-09-06mergeBrad Payne (Vir Linden)
2011-09-01Clarified the reason for adding the deleteSingleton method to LLSingleton. ↵Logan Dethrow
Added a simple unit test to verify the functionality of the deleteSingleton method.
2011-08-31MergeXiaohong Bao
2011-08-10merge viewer-development to mesh-developmentBrad Payne (Vir Linden)
2011-08-02Sh-2129 Viewer caps implementation for resource cost selected. Also cleanup ↵prep linden
of old code related to earlier accounting work.
2011-07-17Decided against using Boost.Filesystem, remove from linkNat Goodspeed
2011-07-15Merge from viewer-developmentXiaohong Bao
2011-07-14New llsdserialize_test logic needs Boost.Filesystem library.Nat Goodspeed
That, in turn, needs Boost.System library.
2011-07-13Introduce support for C++ integration tests running Python scripts.Nat Goodspeed
This is in its infancy; tested on Mac; needs to be ironed out on Windows and Linux. Goal is to test at least some cross-language LLSD serialization.
2011-05-20SH-1252 and SH-1253 WIP.prep linden
2011-05-07storm-1237: merge experience team issuesOz Linden
2011-05-05Remove Pth library from viewer build.Nat Goodspeed
This library was only needed on the Mac, and only with the OS X 10.4 SDK. As of October 2010, we no longer build the viewer with that SDK. The 10.5 SDK we're currently using directly supports the functionality for which we originally brought in Pth.
2011-05-04EXP-779 FIX -- Help > About Second Life Reports Kernel Version Twice, ↵Leslie Linden
Instead of OS Version Modified Mac OS_VERSION string to include OS X version number in addition to Kernel version info. DARWIN llcommon build now depends on Carbon in order to provide this functionality. Reviewed by Richard.