summaryrefslogtreecommitdiff
path: root/indra/llcorehttp
AgeCommit message (Collapse)Author
2022-04-17Switch to target_include_directoriesNicky
All 3Ps include dirs are treated as SYSTEM, this will stop compilers stop emitting warnings from those files and greatly helps having high warning levels and not being swamped by warnings that come from external libraries.
2022-04-16Now there is a oslibrary target get rid of some more obsolete vars:Nicky
LEGACY_STDIO_LIBS (was only used for Windows) PTHREAD_LIBRARY (only Linux) LLDATABASE_LIBRARIES (that one was supposed for Linux, but never needed anyway)
2022-04-16Create a new target ll::oslibrary to link against libs specific to the OS ↵Nicky
compiled on. This gets rid of the a few OS specific set and uses variables (which some even seemed mostly duplicate like WINDOWS_LIBRARIES ans UI_LIBRARIES) and it also solves the problem of having them to tack on every target, as of no they come as a transitive dependency from llcommon
2022-04-15SL-17219 WIP - Texture pipeline overhaulDave Parks
2022-04-13Rework cmake, the original plan was to maybe be able to use conan targets ↵Nicky
with the same name (that's why 3ps had names like apr::apr), but it's safer and saner to put the LL 3ps under the ll:: prefix. This also allows means it is possible to get rid of that bad "if( TRAGET ...) return() endif()" pattern and rather use include_guard().
2022-04-06Move CMake files to modernized cmake syntax, step 1.Nicky
Change projects to cmake targetsto get rid of havig to hardcore include directories and link libraries in consumer projects.
2022-02-28Merge branch 'master' into DRTVWR-543-maintAndrey Lihatskiy
2021-12-10SL-15742: Convert build scripts to Python 3Bennett Goble
This changeset makes it possible to build the Second Life viewer using Python 3. It is designed to be used with an equivalent Autobuild branch so that a developer can compile without needing Python 2 on their machine. Breaking change: Python 2 support ending Rather than supporting two versions of Python, including one that was discontinued at the beginning of the year, this branch focuses on pouring future effort into Python 3 only. As a result, scripts do not need to be backwards compatible. This means that build environments, be they on personal computers and on build agents, need to have a compatible interpreter. Notes - SLVersionChecker will still use Python 2 on macOS - Fixed the message template url used by template_verifier.py
2021-10-22Merge branch 'master' into DRTVWR-543-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/CMakeLists.txt # indra/llcommon/CMakeLists.txt # indra/newview/CMakeLists.txt # indra/newview/llappviewerwin32.h
2021-09-08SL-15211 SL-14541 Update OpenSSL libraryAndrey Kleshchev
Moving a copy of OpenSSL 1.1.1 to D543 from D520 to have less conflicts with zlib-ng integration later
2021-09-08SL-14541 Replace zlib with zlib-ngAndrey Kleshchev
2021-09-08SL-14541 removed breakpad, win_crash_loggerAndrey Kleshchev
# Conflicts: # autobuild.xml # indra/CMakeLists.txt # indra/newview/CMakeLists.txt # indra/newview/llappviewerwin32.h # indra/win_crash_logger/llcrashloggerwindows.cpp Cherry picked from DRTVWR-520
2021-09-03SL-15902 Cleanup gSecAPIHandlerMnikolenko ProductEngine
2021-08-12Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
# Conflicts: # autobuild.xml # build.sh # indra/CMakeLists.txt # indra/newview/CMakeLists.txt # indra/newview/llappviewermacosx.cpp # indra/newview/llappviewerwin32.h # indra/newview/viewer_manifest.py # indra/win_crash_logger/llcrashloggerwindows.cpp
2021-06-03SL-15272 Bugsplat crashes at condition wait()Andrey Kleshchev
Made sure all waits will be triggered, won't loop back and that in case of http queue it had some time to trigger
2021-05-27SL-15211 Remove unsused functionsAndrey Kleshchev
CRYPTO_set_id_callback and CRYPTO_set_locking_callback are no-op in ssl 1.1.x
2021-05-21Merge branch 'sl-10297' into DRTVWR-516-maintAndrey Lihatskiy
2021-05-12SL-10297: Merge branch 'sl-10297-oz' into sl-10297.Nat Goodspeed
Bring in Oz's tweaks to the way BugSplat is engaged and tested, plus a few other miscellaneous goodies.
2021-04-30Merge branch 'master' into DRTVWR-520-apple-notarizationAndrey Lihatskiy
2021-04-29Merge master (DRTVWR-515) into DRTVWR-516-maintAndrey Kleshchev
# Conflicts: # autobuild.xml # doc/contributions.txt # indra/llcommon/llcoros.cpp # indra/llmessage/llcoproceduremanager.cpp # indra/newview/llfloaterfixedenvironment.cpp # indra/newview/llfloaterimsessiontab.cpp
2021-03-17SL-14541 follow-up xcode buildfixAndrey Lihatskiy
2021-02-01Merge branch 'master' of https://bitbucket.org/lindenlab/viewer/src/master ↵Andrey Kleshchev
into DRTVWR-515-maint # Conflicts: # autobuild.xml (llca) # indra/llwindow/llwindow.h (SL-13507 vs SL-5894) # indra/newview/llscenemonitor.cpp (SL-14422) # indra/newview/llvovolume.cpp (SL-12069)
2021-02-01Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
2021-01-18SL-14597 Missed libraries for http testAndrey Kleshchev
2020-11-11Merge branch 'master' into DRTVWR-513-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/llui/llfolderviewmodel.h # indra/newview/lltexturecache.cpp # indra/newview/llviewermenu.h # indra/newview/skins/default/xui/en/menu_wearable_list_item.xml
2020-09-28Merge branch 'master' into DRTVWR-516-maintAndrey Lihatskiy
# Conflicts: # indra/newview/llvocache.cpp
2020-09-28Merge branch 'master' into DRTVWR-515-maintAndrey Lihatskiy
# Conflicts: # indra/newview/llpanelprimmediacontrols.cpp
2020-09-28Merge branch 'master' into DRTVWR-513-maintAndrey Lihatskiy
# Conflicts: # indra/newview/llgroupmgr.cpp
2020-09-23Fix line endingsAndrey Kleshchev
2020-09-11Revert SL-13927 commit 8c8eac256bdb51fdf9e6e297280b2017d26c3588.Andrey Kleshchev
Got into D503 by accident
2020-09-11SL-13927 Turn SSL verification On for all SL services in viewerAndrey Kleshchev
2020-09-11SL-13927 Turn SSL verification On for all SL services in viewerAndrey Kleshchev
2020-09-09SL-13919 SSL verification should take mVerifyPeer flag into accountAndrey Kleshchev
2020-08-24SL-10297 merged 6.4.7Oz Linden
2020-08-11Merge branch 'DRTVWR-501-maint' into DRTVWR-503-maintAndrey Lihatskiy
# Conflicts: # indra/cmake/DirectX.cmake # indra/newview/llviewerparcelmedia.cpp # indra/newview/viewer_manifest.py
2020-07-21Merge branch 'master' into DRTVWR-513-maintAndrey Lihatskiy
# Conflicts: # indra/llcommon/llerror.cpp # indra/newview/llappviewerwin32.cpp # indra/newview/llimprocessing.cpp # indra/newview/llviewerjoystick.cpp
2020-06-15SL-10297: merge up to master at 6.4.3Oz Linden
2020-05-29SL-13348 Thread crashing singleton #1Andrey Kleshchev
2020-05-06DRTVWR-476: Merge branch 'master' of lindenlab/viewer into DRTVWR-476-boost-1.72Nat Goodspeed
2020-04-09DRTVWR-476: #include "boost/noncopyable.hpp" in another consumer.Nat Goodspeed
2020-04-09DRTVWR-476: #include "boost/noncopyable.hpp" in httpcommon.h.Nat Goodspeed
Apparently, in previous Boost versions, boost::noncopyable was sneaking into the namespace via other headers. Now the compiler complains about its absence without an explicit #include.
2020-03-25DRTVWR-476: Disable test_httprequest.hpp on Mac Release builds.Nat Goodspeed
For reasons not yet diagnosed, specifically in Mac Release builds, the tests in test_httprequest.hpp consistently crash with a backtrace suggesting that the worker thread is calling LLCore::HttpLibcurl::completeRequest() after the foreground thread calls HttpRequest::destroyService(). Weirdly, even executing a tut::skip() call in every test<n>() function up to the point of the crash does not eliminate the crash.
2020-03-25DRTVWR-476: Remove special llcorehttp test memory manager.Nat Goodspeed
NickyD discovered that the substitute default allocator used for llcorehttp tests was returning badly-aligned storage, which caused access violations on alignment-sensitive data such as std::atomic. Thanks Nicky!! Moreover, the llcorehttp test assertions regarding memory usage, well- intentioned though they are, have been causing us trouble for years. Many have already been disabled. The problem is that use of test_allocator.h affected *everything* defined with that header file's declarations visible. That inevitably included specific functions in other subsystems. Those functions then (unintentionally) consumed the special allocator, throwing off the memory tracking and making certain memory-related assertions consistently fail. This is a particular, observable bad effect of One Definition Rule violations. Within a given program, C++ allows multiple definitions for the same entity, but requires that all such definitions be the same. Partial visibility of the global operator new() and operator delete() overrides meant that some definitions of certain entities used the default global allocator, some used llcorehttp's. There may have been other, more subtle bad effects of these ODR violations. If one wanted to reimplement verification of the memory consumption of llcorehttp classes: * Each llcorehttp class (for which memory tracking was desired) should declare class-specific operator new() and operator delete() methods. Naturally, these would all consume a central llcorehttp-specific allocator, but that allocator should *not* be named global operator new(). * Presumably that would require runtime indirection to allow using the default allocator in production while substituting the special allocator for tests. * Recording and verifying the memory consumption in each test should be performed in the test-object constructor and destructor, rather than being sprinkled throughout the test<n>() methods. * With that mechanism in place, the test object should provide methods to adjust (or entirely disable) memory verification for a particular test. * The test object should also provide a "yes, we're still consuming llcorehttp memory" method to be used for spot checks in the middle of tests -- instead of sprinkling in explicit comparisons as before. * In fact, the llcorehttp test object in each test_*.hpp file should be derived from a central llcorehttp test-object base class providing those methods.
2020-03-25DRTVWR-476: Add LLCOREHTTP_TESTS CMake var, OFF by default on Mac.Nat Goodspeed
Hopefully this is temporary until we solve the problem of crashy llcorehttp test executable on Mac.
2020-03-25[DRTVWR-476] - revertAnchor
2020-03-25[DRTVWR-476] - disable llcorehttp test on macAnchor
2020-03-25[DRTVWR-476] - temporarily disable llcorehttptest on macAnchor
2020-03-25[DRTVWR-476] - fix linkingAnchor
2020-03-25DRTVWR-476: pthread_self() also needs CRYPTO_THREADID_set_pointer()Nat Goodspeed
2020-03-25DRTVWR-476: Remove throw(T) from operator new(), operator delete().Nat Goodspeed
llcorehttp's test_allocator.{h,cpp} overrides global operator new(), operator new[](), operator delete() and operator delete[](). The two operator new() functions used to be declared with throw(std::bad_alloc). Worse, for VS 2013 and previous, we needed _THROW0() and _THROW1(std::bad_alloc) instead, requiring #if logic. But with dynamic throw declarations deprecated, we must actually remove those. That obviates the THROW_BAD_ALLOC() / THROW_NOTHING() workarounds in test_allocator.cpp.