Merge new boost and add OS X 10.8 mods
commit
98e02a5d76
5
.hgtags
5
.hgtags
|
|
@ -414,3 +414,8 @@ a676b4d6c037b39fe5b8e42cf8839a9303936089 DRTVWR-289
|
|||
28fa8b944a0c1869636ab00cc400f5aa71f6fa3c DRTVWR-290
|
||||
7f09bbc28c297f14b67961be7b6575445fa160e8 DRTVWR-291
|
||||
b23419a2748483c98f3b84b630468a21c88feba5 DRTVWR-292
|
||||
1567de5700c273b583dac41b64275c223287306e 3.4.5-beta4
|
||||
1cce8447f8f574673e3f47d6fe584262e6964fe2 DRTVWR-296
|
||||
0a5d409161ef2a89b28c9a741051dd2dedc707d6 DRTVWR-297
|
||||
852b69ef0b5fe6b13b69cc2217282cc64de6afab 3.4.5-beta5
|
||||
a49c715243a36a8a380504d14cb7416b3039c956 3.4.5-release
|
||||
|
|
|
|||
|
|
@ -186,9 +186,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>ac37d0038c91b0672fa31a02731f0eac</string>
|
||||
<string>06dd7af75e1eb179aed54fd58d8688af</string>
|
||||
<key>url</key>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/268347/arch/Darwin/installer/boost-1.52.0-darwin-20121218.tar.bz2</string>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/270698/arch/Darwin/installer/boost-1.52.0-darwin-20130221.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin</string>
|
||||
|
|
@ -198,9 +198,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>146ed8a8c2ef8ab3f0a6c4f214fc5c22</string>
|
||||
<string>50c8b50b7cced52cc5656fb44e9b12cf</string>
|
||||
<key>url</key>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/268347/arch/Linux/installer/boost-1.52.0-linux-20121218.tar.bz2</string>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/270698/arch/Linux/installer/boost-1.52.0-linux-20130222.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux</string>
|
||||
|
|
@ -210,9 +210,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>3ea60f17d986b7e8a3351298734bdca4</string>
|
||||
<string>742fc9675b033df7f9c6f215ff250f6c</string>
|
||||
<key>url</key>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/268347/arch/CYGWIN/installer/boost-1.52.0-windows-20121218.tar.bz2</string>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-boost/rev/270698/arch/CYGWIN/installer/boost-1.52.0-windows-20130221.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>windows</string>
|
||||
|
|
|
|||
|
|
@ -1251,6 +1251,7 @@ Whimsy Winx
|
|||
Whirly Fizzle
|
||||
STORM-1895
|
||||
MAINT-873
|
||||
STORM-1930
|
||||
Whoops Babii
|
||||
VWR-631
|
||||
VWR-1640
|
||||
|
|
|
|||
|
|
@ -192,12 +192,7 @@ endif (LINUX)
|
|||
|
||||
|
||||
if (DARWIN)
|
||||
# NOTE (per http://lists.apple.com/archives/darwin-dev/2008/Jan/msg00232.html):
|
||||
# > Why the bus error? What am I doing wrong?
|
||||
# This is a known issue where getcontext(3) is writing past the end of the
|
||||
# ucontext_t struct when _XOPEN_SOURCE is not defined (rdar://problem/5578699 ).
|
||||
# As a workaround, define _XOPEN_SOURCE before including ucontext.h.
|
||||
add_definitions(-DLL_DARWIN=1 -D_XOPEN_SOURCE)
|
||||
add_definitions(-DLL_DARWIN=1)
|
||||
set(CMAKE_CXX_LINK_FLAGS "-Wl,-headerpad_max_install_names,-search_paths_first")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_CXX_LINK_FLAGS}")
|
||||
set(DARWIN_extra_cstar_flags "-mlong-branch -g")
|
||||
|
|
|
|||
|
|
@ -7,11 +7,12 @@ set(Boost_FIND_REQUIRED ON)
|
|||
if (STANDALONE)
|
||||
include(FindBoost)
|
||||
|
||||
set(BOOST_CONTEXT_LIBRARY boost_context-mt)
|
||||
set(BOOST_FILESYSTEM_LIBRARY boost_filesystem-mt)
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY boost_program_options-mt)
|
||||
set(BOOST_REGEX_LIBRARY boost_regex-mt)
|
||||
set(BOOST_SIGNALS_LIBRARY boost_signals-mt)
|
||||
set(BOOST_SYSTEM_LIBRARY boost_system-mt)
|
||||
set(BOOST_FILESYSTEM_LIBRARY boost_filesystem-mt)
|
||||
set(BOOST_THREAD_LIBRARY boost_thread-mt)
|
||||
else (STANDALONE)
|
||||
use_prebuilt_binary(boost)
|
||||
|
|
@ -20,6 +21,12 @@ else (STANDALONE)
|
|||
|
||||
if (WINDOWS)
|
||||
if(MSVC80)
|
||||
set(BOOST_CONTEXT_LIBRARY
|
||||
optimized libboost_context-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_context-vc80-mt-gd-${BOOST_VERSION})
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized libboost_filesystem-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_filesystem-vc80-mt-gd-${BOOST_VERSION})
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY
|
||||
optimized libboost_program_options-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_program_options-vc80-mt-gd-${BOOST_VERSION})
|
||||
|
|
@ -32,59 +39,74 @@ else (STANDALONE)
|
|||
set(BOOST_SYSTEM_LIBRARY
|
||||
optimized libboost_system-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_system-vc80-mt-gd-${BOOST_VERSION})
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized libboost_filesystem-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_filesystem-vc80-mt-gd-${BOOST_VERSION})
|
||||
set(BOOST_THREAD_LIBRARY
|
||||
optimized libboost_thread-vc80-mt-${BOOST_VERSION}
|
||||
debug libboost_thread-vc80-mt-gd-${BOOST_VERSION})
|
||||
else(MSVC80)
|
||||
# MSVC 10.0 config
|
||||
set(BOOST_CONTEXT_LIBRARY
|
||||
optimized libboost_context-mt
|
||||
debug libboost_context-mt-gd)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized libboost_filesystem-mt
|
||||
debug libboost_filesystem-mt-gd)
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY
|
||||
optimized libboost_program_options-mt
|
||||
debug libboost_program_options-mt-gd)
|
||||
set(BOOST_REGEX_LIBRARY
|
||||
optimized libboost_regex-mt
|
||||
debug libboost_regex-mt-gd)
|
||||
set(BOOST_SIGNALS_LIBRARY
|
||||
optimized libboost_signals-mt
|
||||
debug libboost_signals-mt-gd)
|
||||
set(BOOST_SYSTEM_LIBRARY
|
||||
optimized libboost_system-mt
|
||||
debug libboost_system-mt-gd)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized libboost_filesystem-mt
|
||||
debug libboost_filesystem-mt-gd)
|
||||
set(BOOST_THREAD_LIBRARY
|
||||
optimized libboost_thread-mt
|
||||
debug libboost_thread-mt-gd)
|
||||
endif (MSVC80)
|
||||
elseif (LINUX)
|
||||
set(BOOST_CONTEXT_LIBRARY
|
||||
optimized boost_context-mt
|
||||
debug boost_context-mt-d)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized boost_filesystem-mt
|
||||
debug boost_filesystem-mt-d)
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY
|
||||
optimized boost_program_options-mt
|
||||
debug boost_program_options-mt-d)
|
||||
set(BOOST_REGEX_LIBRARY
|
||||
optimized boost_regex-mt
|
||||
debug boost_regex-mt-d)
|
||||
set(BOOST_SIGNALS_LIBRARY
|
||||
optimized boost_signals-mt
|
||||
debug boost_signals-mt-d)
|
||||
set(BOOST_SYSTEM_LIBRARY
|
||||
optimized boost_system-mt
|
||||
debug boost_system-mt-d)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized boost_filesystem-mt
|
||||
debug boost_filesystem-mt-d)
|
||||
set(BOOST_THREAD_LIBRARY
|
||||
optimized boost_thread-mt
|
||||
debug boost_thread-mt-d)
|
||||
elseif (DARWIN)
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY
|
||||
optimized boost_program_options-mt
|
||||
debug boost_program_options-mt-d)
|
||||
set(BOOST_CONTEXT_LIBRARY
|
||||
optimized boost_context-mt
|
||||
debug boost_context-mt-d)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized boost_filesystem-mt
|
||||
debug boost_filesystem-mt-d)
|
||||
set(BOOST_PROGRAM_OPTIONS_LIBRARY
|
||||
optimized boost_program_options-mt
|
||||
debug boost_program_options-mt-d)
|
||||
set(BOOST_REGEX_LIBRARY
|
||||
optimized boost_regex-mt
|
||||
debug boost_regex-mt-d)
|
||||
set(BOOST_SIGNALS_LIBRARY
|
||||
optimized boost_signals-mt
|
||||
debug boost_signals-mt-d)
|
||||
set(BOOST_SYSTEM_LIBRARY
|
||||
optimized boost_system-mt
|
||||
debug boost_system-mt-d)
|
||||
set(BOOST_FILESYSTEM_LIBRARY
|
||||
optimized boost_filesystem-mt
|
||||
debug boost_filesystem-mt-d)
|
||||
set(BOOST_THREAD_LIBRARY
|
||||
optimized boost_thread-mt
|
||||
debug boost_thread-mt-d)
|
||||
|
|
|
|||
|
|
@ -254,12 +254,13 @@ elseif(LINUX)
|
|||
libapr-1.so.0
|
||||
libaprutil-1.so.0
|
||||
libatk-1.0.so
|
||||
libboost_context-mt.so.${BOOST_VERSION}.0
|
||||
libboost_filesystem-mt.so.${BOOST_VERSION}.0
|
||||
libboost_program_options-mt.so.${BOOST_VERSION}.0
|
||||
libboost_regex-mt.so.${BOOST_VERSION}.0
|
||||
libboost_thread-mt.so.${BOOST_VERSION}.0
|
||||
libboost_filesystem-mt.so.${BOOST_VERSION}.0
|
||||
libboost_signals-mt.so.${BOOST_VERSION}.0
|
||||
libboost_system-mt.so.${BOOST_VERSION}.0
|
||||
libboost_thread-mt.so.${BOOST_VERSION}.0
|
||||
libbreakpad_client.so.0
|
||||
libcollada14dom.so
|
||||
libcrypto.so.1.0.0
|
||||
|
|
|
|||
|
|
@ -104,15 +104,20 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||
OUTPUT_VARIABLE XCODE_VERSION )
|
||||
|
||||
# To support a different SDK update these Xcode settings:
|
||||
if (XCODE_VERSION GREATER 4.5)
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.8)
|
||||
set(CMAKE_OSX_SYSROOT macosx10.8)
|
||||
else (XCODE_VERSION GREATER 4.5)
|
||||
if (XCODE_VERSION GREATER 4.2)
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.6)
|
||||
set(CMAKE_OSX_SYSROOT macosx10.6)
|
||||
else (XCODE_VERSION GREATER 4.2)
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.5)
|
||||
set(CMAKE_OSX_SYSROOT macosx10.6)
|
||||
endif (XCODE_VERSION GREATER 4.2)
|
||||
endif (XCODE_VERSION GREATER 4.5)
|
||||
|
||||
set(CMAKE_OSX_SYSROOT macosx10.6)
|
||||
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvmgcc42")
|
||||
|
||||
set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT dwarf-with-dsym)
|
||||
|
||||
# NOTE: To attempt an i386/PPC Universal build, add this on the configure line:
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@ std::string LLCoros::getNameByID(const void* self_id) const
|
|||
// passed to us comes.
|
||||
for (CoroMap::const_iterator mi(mCoros.begin()), mend(mCoros.end()); mi != mend; ++mi)
|
||||
{
|
||||
namespace coro_private = boost::coroutines::detail;
|
||||
namespace coro_private = boost::dcoroutines::detail;
|
||||
if (static_cast<void*>(coro_private::coroutine_accessor::get_impl(const_cast<coro&>(*mi->second)).get())
|
||||
== self_id)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
#if ! defined(LL_LLCOROS_H)
|
||||
#define LL_LLCOROS_H
|
||||
|
||||
#include <boost/coroutine/coroutine.hpp>
|
||||
#include <boost/dcoroutine/coroutine.hpp>
|
||||
#include "llsingleton.h"
|
||||
#include <boost/ptr_container/ptr_map.hpp>
|
||||
#include <string>
|
||||
|
|
@ -78,8 +78,8 @@
|
|||
class LL_COMMON_API LLCoros: public LLSingleton<LLCoros>
|
||||
{
|
||||
public:
|
||||
/// Canonical boost::coroutines::coroutine signature we use
|
||||
typedef boost::coroutines::coroutine<void()> coro;
|
||||
/// Canonical boost::dcoroutines::coroutine signature we use
|
||||
typedef boost::dcoroutines::coroutine<void()> coro;
|
||||
/// Canonical 'self' type
|
||||
typedef coro::self self;
|
||||
|
||||
|
|
|
|||
|
|
@ -29,8 +29,8 @@
|
|||
#if ! defined(LL_LLEVENTCORO_H)
|
||||
#define LL_LLEVENTCORO_H
|
||||
|
||||
#include <boost/coroutine/coroutine.hpp>
|
||||
#include <boost/coroutine/future.hpp>
|
||||
#include <boost/dcoroutine/coroutine.hpp>
|
||||
#include <boost/dcoroutine/future.hpp>
|
||||
#include <boost/optional.hpp>
|
||||
#include <string>
|
||||
#include <stdexcept>
|
||||
|
|
@ -206,13 +206,13 @@ LLSD postAndWait(SELF& self, const LLSD& event, const LLEventPumpOrPumpName& req
|
|||
const LLEventPumpOrPumpName& replyPump, const LLSD& replyPumpNamePath=LLSD())
|
||||
{
|
||||
// declare the future
|
||||
boost::coroutines::future<LLSD> future(self);
|
||||
boost::dcoroutines::future<LLSD> future(self);
|
||||
// make a callback that will assign a value to the future, and listen on
|
||||
// the specified LLEventPump with that callback
|
||||
std::string listenerName(LLEventDetail::listenerNameForCoro(self));
|
||||
LLTempBoundListener connection(
|
||||
replyPump.getPump().listen(listenerName,
|
||||
voidlistener(boost::coroutines::make_callback(future))));
|
||||
voidlistener(boost::dcoroutines::make_callback(future))));
|
||||
// skip the "post" part if requestPump is default-constructed
|
||||
if (requestPump)
|
||||
{
|
||||
|
|
@ -257,7 +257,7 @@ namespace LLEventDetail
|
|||
* This helper is specifically for the two-pump version of waitForEventOn().
|
||||
* We use a single future object, but we want to listen on two pumps with it.
|
||||
* Since we must still adapt from (the callable constructed by)
|
||||
* boost::coroutines::make_callback() (void return) to provide an event
|
||||
* boost::dcoroutines::make_callback() (void return) to provide an event
|
||||
* listener (bool return), we've adapted LLVoidListener for the purpose. The
|
||||
* basic idea is that we construct a distinct instance of WaitForEventOnHelper
|
||||
* -- binding different instance data -- for each of the pumps. Then, when a
|
||||
|
|
@ -331,16 +331,16 @@ LLEventWithID postAndWait2(SELF& self, const LLSD& event,
|
|||
const LLSD& replyPump1NamePath=LLSD())
|
||||
{
|
||||
// declare the future
|
||||
boost::coroutines::future<LLEventWithID> future(self);
|
||||
boost::dcoroutines::future<LLEventWithID> future(self);
|
||||
// either callback will assign a value to this future; listen on
|
||||
// each specified LLEventPump with a callback
|
||||
std::string name(LLEventDetail::listenerNameForCoro(self));
|
||||
LLTempBoundListener connection0(
|
||||
replyPump0.getPump().listen(name + "a",
|
||||
LLEventDetail::wfeoh(boost::coroutines::make_callback(future), 0)));
|
||||
LLEventDetail::wfeoh(boost::dcoroutines::make_callback(future), 0)));
|
||||
LLTempBoundListener connection1(
|
||||
replyPump1.getPump().listen(name + "b",
|
||||
LLEventDetail::wfeoh(boost::coroutines::make_callback(future), 1)));
|
||||
LLEventDetail::wfeoh(boost::dcoroutines::make_callback(future), 1)));
|
||||
// skip the "post" part if requestPump is default-constructed
|
||||
if (requestPump)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -73,6 +73,12 @@ using namespace llsd;
|
|||
# include <mach/mach_host.h>
|
||||
# include <mach/task.h>
|
||||
# include <mach/task_info.h>
|
||||
|
||||
// disable warnings about Gestalt calls being deprecated
|
||||
// until Apple get's on the ball and provides an alternative
|
||||
//
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
|
||||
#elif LL_LINUX
|
||||
# include <errno.h>
|
||||
# include <sys/utsname.h>
|
||||
|
|
@ -1394,3 +1400,10 @@ BOOL gzip_file(const std::string& srcfile, const std::string& dstfile)
|
|||
if (dst != NULL) gzclose(dst);
|
||||
return retval;
|
||||
}
|
||||
|
||||
#if LL_DARWIN
|
||||
// disable warnings about Gestalt calls being deprecated
|
||||
// until Apple get's on the ball and provides an alternative
|
||||
//
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -64,10 +64,10 @@
|
|||
// Boost.Coroutine #include is the *first* #include of the platform header.
|
||||
// That means that client code must generally #include Boost.Coroutine headers
|
||||
// before anything else.
|
||||
#include <boost/coroutine/coroutine.hpp>
|
||||
#include <boost/dcoroutine/coroutine.hpp>
|
||||
// Normally, lleventcoro.h obviates future.hpp. We only include this because
|
||||
// we implement a "by hand" test of future functionality.
|
||||
#include <boost/coroutine/future.hpp>
|
||||
#include <boost/dcoroutine/future.hpp>
|
||||
#include <boost/bind.hpp>
|
||||
#include <boost/range.hpp>
|
||||
|
||||
|
|
@ -87,7 +87,7 @@
|
|||
/*****************************************************************************
|
||||
* from the banana.cpp example program borrowed for test<1>()
|
||||
*****************************************************************************/
|
||||
namespace coroutines = boost::coroutines;
|
||||
namespace coroutines = boost::dcoroutines;
|
||||
using coroutines::coroutine;
|
||||
|
||||
template<typename Iter>
|
||||
|
|
@ -122,7 +122,7 @@ typedef coroutine<std::string::iterator(void)> match_coroutine_type;
|
|||
* Test helpers
|
||||
*****************************************************************************/
|
||||
// I suspect this will be typical of coroutines used in Linden software
|
||||
typedef boost::coroutines::coroutine<void()> coroutine_type;
|
||||
typedef boost::dcoroutines::coroutine<void()> coroutine_type;
|
||||
|
||||
/// Simulate an event API whose response is immediate: sent on receipt of the
|
||||
/// initial request, rather than after some delay. This is the case that
|
||||
|
|
@ -173,10 +173,10 @@ namespace tut
|
|||
// ... do whatever preliminary stuff must happen ...
|
||||
|
||||
// declare the future
|
||||
boost::coroutines::future<LLSD> future(self);
|
||||
boost::dcoroutines::future<LLSD> future(self);
|
||||
// tell the future what to wait for
|
||||
LLTempBoundListener connection(
|
||||
LLEventPumps::instance().obtain("source").listen("coro", voidlistener(boost::coroutines::make_callback(future))));
|
||||
LLEventPumps::instance().obtain("source").listen("coro", voidlistener(boost::dcoroutines::make_callback(future))));
|
||||
ensure("Not yet", ! future);
|
||||
// attempting to dereference ("resolve") the future causes the calling
|
||||
// coroutine to wait for it
|
||||
|
|
|
|||
|
|
@ -993,12 +993,7 @@ extern void glGetBufferPointervARB (GLenum, GLenum, GLvoid* *);
|
|||
}
|
||||
#endif
|
||||
|
||||
#if __MAC_OS_X_VERSION_MAX_ALLOWED <= 1070
|
||||
#include <OpenGL/gl.h>
|
||||
#else
|
||||
#include <AGL/gl.h>
|
||||
#endif
|
||||
|
||||
|
||||
#endif // LL_MESA / LL_WINDOWS / LL_DARWIN
|
||||
|
||||
|
|
|
|||
|
|
@ -244,12 +244,15 @@ bool LLRenderTarget::addColorAttachment(U32 color_fmt)
|
|||
mTex.push_back(tex);
|
||||
mInternalFormat.push_back(color_fmt);
|
||||
|
||||
#if !LL_DARWIN
|
||||
if (gDebugGL)
|
||||
{ //bind and unbind to validate target
|
||||
bindTarget();
|
||||
flush();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,6 +47,11 @@
|
|||
|
||||
#include "llerrorcontrol.h"
|
||||
|
||||
#if LL_DARWIN
|
||||
// FSPathMakeRef, FSObjectCopy, deprecations...
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
||||
enum
|
||||
{
|
||||
kEventClassCustom = 'Cust',
|
||||
|
|
@ -1255,3 +1260,7 @@ void *updatethreadproc(void*)
|
|||
|
||||
return(NULL);
|
||||
}
|
||||
|
||||
#if LL_DARWIN
|
||||
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -232,12 +232,8 @@ private:
|
|||
mMovieHandle = NULL;
|
||||
};
|
||||
|
||||
if ( mGWorldHandle )
|
||||
{
|
||||
DisposeGWorld( mGWorldHandle );
|
||||
mGWorldHandle = NULL;
|
||||
};
|
||||
|
||||
mGWorldHandle = NULL;
|
||||
|
||||
setStatus(STATUS_NONE);
|
||||
|
||||
return true;
|
||||
|
|
@ -273,6 +269,7 @@ private:
|
|||
//std::cerr << "<--- Sending size change request to application with name: " << mTextureSegmentName << " - size is " << width << " x " << height << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// sanitize destination size
|
||||
Rect dest_rect = rectFromSize(mWidth, mHeight);
|
||||
|
|
@ -281,12 +278,10 @@ private:
|
|||
int depth_bits = mDepth * 8;
|
||||
long rowbytes = mDepth * mTextureWidth;
|
||||
|
||||
GWorldPtr old_gworld_handle = mGWorldHandle;
|
||||
|
||||
if(mPixels != NULL)
|
||||
{
|
||||
// We have pixels. Set up a GWorld pointing at the texture.
|
||||
OSErr result = NewGWorldFromPtr( &mGWorldHandle, depth_bits, &dest_rect, NULL, NULL, 0, (Ptr)mPixels, rowbytes);
|
||||
OSErr result = QTNewGWorldFromPtr( &mGWorldHandle, depth_bits, &dest_rect, NULL, NULL, 0, (Ptr)mPixels, rowbytes);
|
||||
if ( noErr != result )
|
||||
{
|
||||
// TODO: unrecoverable?? throw exception? return something?
|
||||
|
|
@ -297,7 +292,7 @@ private:
|
|||
{
|
||||
// We don't have pixels. Create a fake GWorld we can point the movie at when it's not safe to render normally.
|
||||
Rect tempRect = rectFromSize(1, 1);
|
||||
OSErr result = NewGWorld( &mGWorldHandle, depth_bits, &tempRect, NULL, NULL, 0);
|
||||
OSErr result = QTNewGWorld( &mGWorldHandle, depth_bits, &tempRect, NULL, NULL, 0);
|
||||
if ( noErr != result )
|
||||
{
|
||||
// TODO: unrecoverable?? throw exception? return something?
|
||||
|
|
@ -305,14 +300,8 @@ private:
|
|||
}
|
||||
}
|
||||
|
||||
SetMovieGWorld( mMovieHandle, mGWorldHandle, GetGWorldDevice( mGWorldHandle ) );
|
||||
|
||||
// If the GWorld was already set up, delete it.
|
||||
if(old_gworld_handle != NULL)
|
||||
{
|
||||
DisposeGWorld( old_gworld_handle );
|
||||
}
|
||||
|
||||
SetMovieGWorld( mMovieHandle, mGWorldHandle, NULL );
|
||||
|
||||
// Set up the movie display matrix
|
||||
{
|
||||
// scale movie to fit rect and invert vertically to match opengl image format
|
||||
|
|
@ -579,28 +568,7 @@ private:
|
|||
}
|
||||
|
||||
};
|
||||
|
||||
int getDataWidth() const
|
||||
{
|
||||
if ( mGWorldHandle )
|
||||
{
|
||||
int depth = mDepth;
|
||||
|
||||
if (depth < 1)
|
||||
depth = 1;
|
||||
|
||||
// ALWAYS use the row bytes from the PixMap if we have a GWorld because
|
||||
// sometimes it's not the same as mMediaDepth * mMediaWidth !
|
||||
PixMapHandle pix_map_handle = GetGWorldPixMap( mGWorldHandle );
|
||||
return QTGetPixMapHandleRowBytes( pix_map_handle ) / depth;
|
||||
}
|
||||
else
|
||||
{
|
||||
// TODO : return LLMediaImplCommon::getaDataWidth();
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
void seek( F64 time )
|
||||
{
|
||||
if ( mMovieController )
|
||||
|
|
|
|||
|
|
@ -38,6 +38,10 @@
|
|||
#include <QuickTime/QuickTime.h>
|
||||
#include <AudioUnit/AudioUnit.h>
|
||||
|
||||
#if LL_DARWIN
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
||||
struct VolumeCatcherStorage;
|
||||
|
||||
class VolumeCatcherImpl
|
||||
|
|
@ -265,3 +269,6 @@ void VolumeCatcher::pump()
|
|||
// No periodic tasks are necessary for this implementation.
|
||||
}
|
||||
|
||||
#if LL_DARWIN
|
||||
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1829,6 +1829,7 @@ target_link_libraries(${VIEWER_BINARY_NAME}
|
|||
${viewer_LIBRARIES}
|
||||
${BOOST_PROGRAM_OPTIONS_LIBRARY}
|
||||
${BOOST_REGEX_LIBRARY}
|
||||
${BOOST_CONTEXT_LIBRARY}
|
||||
${DBUSGLIB_LIBRARIES}
|
||||
${OPENGL_LIBRARIES}
|
||||
${FMODWRAPPER_LIBRARY} # must come after LLAudio
|
||||
|
|
|
|||
|
|
@ -66,19 +66,21 @@ std::vector<std::string>* doLoadDialog(const std::vector<std::string>* allowed_t
|
|||
|
||||
if (fileTypes)
|
||||
{
|
||||
|
||||
[panel setAllowedFileTypes:fileTypes];
|
||||
|
||||
result = [panel runModalForTypes:fileTypes];
|
||||
result = [panel runModal];
|
||||
}
|
||||
else
|
||||
{
|
||||
result = [panel runModalForDirectory:NSHomeDirectory() file:nil];
|
||||
// I suggest it's better to open the last path and let this default to home dir as necessary
|
||||
// for consistency with other OS X apps
|
||||
//
|
||||
//[panel setDirectoryURL: fileURLWithPath(NSHomeDirectory()) ];
|
||||
result = [panel runModal];
|
||||
}
|
||||
|
||||
if (result == NSOKButton)
|
||||
{
|
||||
NSArray *filesToOpen = [panel filenames];
|
||||
NSArray *filesToOpen = [panel URLs];
|
||||
int i, count = [filesToOpen count];
|
||||
|
||||
if (count > 0)
|
||||
|
|
@ -114,11 +116,14 @@ std::string* doSaveDialog(const std::string* file,
|
|||
NSString *fileName = [NSString stringWithCString:file->c_str() encoding:[NSString defaultCStringEncoding]];
|
||||
|
||||
std::string *outfile = NULL;
|
||||
|
||||
if([panel runModalForDirectory:nil file:fileName] ==
|
||||
NSURL* url = [NSURL fileURLWithPath:fileName];
|
||||
[panel setDirectoryURL: url];
|
||||
if([panel runModal] ==
|
||||
NSFileHandlingPanelOKButton)
|
||||
{
|
||||
outfile= new std::string( [ [panel filename] UTF8String ] );
|
||||
{
|
||||
NSURL* url = [panel URL];
|
||||
NSString* p = [url path];
|
||||
outfile = new std::string( [p UTF8String] );
|
||||
// write the file
|
||||
}
|
||||
return outfile;
|
||||
|
|
|
|||
|
|
@ -215,17 +215,19 @@ public:
|
|||
|
||||
~LLMeshHeaderResponder()
|
||||
{
|
||||
if (!mProcessed && !LLApp::isQuitting())
|
||||
{ //something went wrong, retry
|
||||
llwarns << "Timeout or service unavailable, retrying." << llendl;
|
||||
LLMeshRepository::sHTTPRetryCount++;
|
||||
LLMeshRepoThread::HeaderRequest req(mMeshParams);
|
||||
LLMutexLock lock(gMeshRepo.mThread->mMutex);
|
||||
gMeshRepo.mThread->mHeaderReqQ.push(req);
|
||||
if (!LLApp::isQuitting())
|
||||
{
|
||||
if (!mProcessed)
|
||||
{ //something went wrong, retry
|
||||
llwarns << "Timeout or service unavailable, retrying." << llendl;
|
||||
LLMeshRepository::sHTTPRetryCount++;
|
||||
LLMeshRepoThread::HeaderRequest req(mMeshParams);
|
||||
LLMutexLock lock(gMeshRepo.mThread->mMutex);
|
||||
gMeshRepo.mThread->mHeaderReqQ.push(req);
|
||||
}
|
||||
|
||||
LLMeshRepoThread::decActiveHeaderRequests();
|
||||
}
|
||||
|
||||
LLMeshRepoThread::decActiveHeaderRequests();
|
||||
}
|
||||
|
||||
virtual void completedRaw(U32 status, const std::string& reason,
|
||||
|
|
@ -252,13 +254,16 @@ public:
|
|||
|
||||
~LLMeshLODResponder()
|
||||
{
|
||||
if (!mProcessed && !LLApp::isQuitting())
|
||||
if (!LLApp::isQuitting())
|
||||
{
|
||||
llwarns << "Killed without being processed, retrying." << llendl;
|
||||
LLMeshRepository::sHTTPRetryCount++;
|
||||
gMeshRepo.mThread->lockAndLoadMeshLOD(mMeshParams, mLOD);
|
||||
if (!mProcessed)
|
||||
{
|
||||
llwarns << "Killed without being processed, retrying." << llendl;
|
||||
LLMeshRepository::sHTTPRetryCount++;
|
||||
gMeshRepo.mThread->lockAndLoadMeshLOD(mMeshParams, mLOD);
|
||||
}
|
||||
LLMeshRepoThread::decActiveLODRequests();
|
||||
}
|
||||
LLMeshRepoThread::decActiveLODRequests();
|
||||
}
|
||||
|
||||
virtual void completedRaw(U32 status, const std::string& reason,
|
||||
|
|
|
|||
|
|
@ -33,8 +33,6 @@
|
|||
// in viewer.
|
||||
// It is used to precompile headers for improved build speed.
|
||||
|
||||
#include <boost/coroutine/coroutine.hpp>
|
||||
|
||||
#include "linden_common.h"
|
||||
|
||||
// Work around stupid Microsoft STL warning
|
||||
|
|
|
|||
|
|
@ -147,11 +147,24 @@
|
|||
height="12"
|
||||
layout="topleft"
|
||||
left_delta="87"
|
||||
name="ShadersPrefText3"
|
||||
name="ShadersPrefText2"
|
||||
top_delta="0"
|
||||
width="80">
|
||||
Mid
|
||||
</text>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
halign="center"
|
||||
height="12"
|
||||
layout="topleft"
|
||||
left_delta="87"
|
||||
name="ShadersPrefText3"
|
||||
top_delta="0"
|
||||
width="80">
|
||||
High
|
||||
</text>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ endif(LL_TESTS)
|
|||
include(LLCommon)
|
||||
include(LLMath)
|
||||
include(LLXML)
|
||||
include(Boost)
|
||||
|
||||
include_directories(
|
||||
${LLCOMMON_INCLUDE_DIRS}
|
||||
|
|
@ -40,12 +41,18 @@ target_link_libraries(lllogin
|
|||
${LLCOMMON_LIBRARIES}
|
||||
${LLMATH_LIBRARIES}
|
||||
${LLXML_LIBRARIES}
|
||||
${BOOST_CONTEXT_LIBRARY}
|
||||
)
|
||||
|
||||
if(LL_TESTS)
|
||||
SET(lllogin_TEST_SOURCE_FILES
|
||||
lllogin.cpp
|
||||
)
|
||||
set_source_files_properties(
|
||||
lllogin.cpp
|
||||
PROPERTIES
|
||||
LL_TEST_ADDITIONAL_LIBRARIES "${BOOST_CONTEXT_LIBRARY}"
|
||||
)
|
||||
|
||||
LL_ADD_PROJECT_UNIT_TESTS(lllogin "${lllogin_TEST_SOURCE_FILES}")
|
||||
endif(LL_TESTS)
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
#include <boost/coroutine/coroutine.hpp>
|
||||
#include "linden_common.h"
|
||||
#include "llsd.h"
|
||||
#include "llsdutil.h"
|
||||
|
|
|
|||
|
|
@ -144,18 +144,7 @@ std::string LLUpdateChecker::Implementation::buildUrl(std::string const & protoc
|
|||
#ifdef LL_WINDOWS
|
||||
static const char * platform = "win";
|
||||
#elif LL_DARWIN
|
||||
long versMin;
|
||||
Gestalt(gestaltSystemVersionMinor, &versMin);
|
||||
|
||||
static const char *platform;
|
||||
if (versMin == 5) //OS 10.5
|
||||
{
|
||||
platform = "mac_legacy";
|
||||
}
|
||||
else
|
||||
{
|
||||
platform = "mac";
|
||||
}
|
||||
static const char * platform = "mac";
|
||||
#else
|
||||
static const char * platform = "lnx";
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue