Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
commit
8f85cbf04c
|
|
@ -27,6 +27,12 @@ Other examples:
|
|||
autobuild build -A64 -c ReleaseFS --no-configure -- --clean # Clean rebuild
|
||||
autobuild build -A64 -c ReleaseFS -- --package # Complete a build and package it into a tarball
|
||||
|
||||
When using the --package switch you can set the XZ_DEFAULTS variable to -T0 to use all available CPU cores
|
||||
to create the .tar.xz file. This can significantly reduce the time needed to create the archive, but it will
|
||||
use a lot more memory. For example:
|
||||
export XZ_DEFAULTS="-T0"
|
||||
autobuild build -A64 -c ReleaseFS_open -- --package
|
||||
|
||||
If you want to build with clang you can call autobuild like this:
|
||||
CC=clang CXX=clang++ autobuild configure -A64 -c ReleaseFS
|
||||
|
||||
|
|
|
|||
|
|
@ -6,24 +6,18 @@ if (LINUX)
|
|||
|
||||
include_directories( ${GLIB_INCLUDE_DIRS} )
|
||||
|
||||
set( PULSE_AUDIO True )
|
||||
foreach( PULSE_FILE pulse/introspect.h pulse/context.h pulse/subscribe.h pulse/glib-mainloop.h )
|
||||
find_path( PULSE_FILE_FOUND ${PULSE_FILE} NO_CACHE)
|
||||
if( NOT PULSE_FILE_FOUND )
|
||||
find_path( PULSE_FILE_${PULSE_FILE}_FOUND ${PULSE_FILE} NO_CACHE)
|
||||
if( NOT PULSE_FILE_${PULSE_FILE}_FOUND )
|
||||
message( "Looking for ${PULSE_FILE} ... not found")
|
||||
set( PULSE_AUDIO False )
|
||||
message( FATAL_ERROR "Pulse header not found" )
|
||||
else()
|
||||
message( "Looking for ${PULSE_FILE} ... found")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if( NOT PULSE_AUDIO )
|
||||
message( "Building without linux volume catcher" )
|
||||
set(LINUX_VOLUME_CATCHER dummy_volume_catcher.cpp)
|
||||
else()
|
||||
message( "Building with linux volume catcher" )
|
||||
set(LINUX_VOLUME_CATCHER linux_volume_catcher.cpp)
|
||||
endif()
|
||||
message( "Building with linux volume catcher" )
|
||||
set(LINUX_VOLUME_CATCHER linux_volume_catcher.cpp)
|
||||
|
||||
endif()
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ include(LLMath)
|
|||
include(LLMessage)
|
||||
include(LLFileSystem)
|
||||
|
||||
include_directories(
|
||||
include_directories( SYSTEM
|
||||
${LLAUDIO_INCLUDE_DIRS}
|
||||
${LLCOMMON_INCLUDE_DIRS}
|
||||
${LLMATH_INCLUDE_DIRS}
|
||||
|
|
|
|||
|
|
@ -47,6 +47,12 @@
|
|||
#include <set>
|
||||
#include <boost/range.hpp>
|
||||
|
||||
// <FS:ND> Suppress warnings about the string fiddling
|
||||
#if LL_LINUX
|
||||
#pragma GCC diagnostic ignored "-Wstringop-truncation"
|
||||
#endif
|
||||
// </FS:ND>
|
||||
|
||||
// U32
|
||||
LLSD ll_sd_from_U32(const U32 val)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -648,7 +648,7 @@ std::string LLDir::getExpandedFilename(ELLPath location, const std::string& subd
|
|||
llassert(0);
|
||||
}
|
||||
|
||||
if (prefix.empty())
|
||||
if (prefix.empty() && location != LL_PATH_NONE) // <FS:Beq/> avoid pointless warning when LL_PATH_NONE is used.
|
||||
{
|
||||
LL_WARNS() << ELLPathToString(location)
|
||||
<< ", '" << subdir1 << "', '" << subdir2 << "', '" << in_filename
|
||||
|
|
|
|||
|
|
@ -35,6 +35,12 @@
|
|||
#include "llstring.h"
|
||||
#include "llstringtable.h"
|
||||
|
||||
// <FS:ND> Suppress warnings about the string fiddling
|
||||
#if LL_LINUX
|
||||
#pragma GCC diagnostic ignored "-Wstringop-truncation"
|
||||
#endif
|
||||
// </FS:ND>
|
||||
|
||||
// Anonymous enumeration to provide constants in this file.
|
||||
// *NOTE: These values may be used in sscanf statements below as their
|
||||
// value-1, so search for '2047' if you cange NV_BUFFER_LEN or '63' if
|
||||
|
|
|
|||
|
|
@ -106,13 +106,13 @@ const unsigned short *copyFromPBoard()
|
|||
CursorRef createImageCursor(const char *fullpath, int hotspotX, int hotspotY)
|
||||
{
|
||||
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
|
||||
|
||||
// extra retain on the NSCursor since we want it to live for the lifetime of the app.
|
||||
NSCursor *cursor =
|
||||
[[[NSCursor alloc]
|
||||
initWithImage:
|
||||
[[[NSImage alloc] initWithContentsOfFile:
|
||||
[NSString stringWithFormat:@"%s", fullpath]
|
||||
[NSString stringWithUTF8String:fullpath]
|
||||
]autorelease]
|
||||
hotSpot:NSMakePoint(hotspotX, hotspotY)
|
||||
]retain];
|
||||
|
|
|
|||
|
|
@ -1712,7 +1712,7 @@ void LLWindowMacOSX::hideCursor()
|
|||
|
||||
void LLWindowMacOSX::showCursor()
|
||||
{
|
||||
if(mCursorHidden)
|
||||
if(mCursorHidden || !isCGCursorVisible())
|
||||
{
|
||||
// LL_INFOS() << "showCursor: showing" << LL_ENDL;
|
||||
mCursorHidden = FALSE;
|
||||
|
|
|
|||
|
|
@ -873,6 +873,15 @@ void FSPanelLogin::loadLoginPage()
|
|||
std::string force_login_url = gSavedSettings.getString("ForceLoginURL");
|
||||
if ( force_login_url.length() > 0 )
|
||||
{
|
||||
LLNotificationsUtil::add("WarnForceLoginURL", LLSD(), LLSD(), [](const LLSD¬if, const LLSD&resp)
|
||||
{
|
||||
S32 opt = LLNotificationsUtil::getSelectedOption(notif, resp);
|
||||
if (opt == 0)
|
||||
{
|
||||
gSavedSettings.setString("ForceLoginURL", "");
|
||||
loadLoginPage();
|
||||
}
|
||||
});
|
||||
login_page = LLURI(force_login_url);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -202,7 +202,6 @@ namespace FSPerfStats
|
|||
{
|
||||
FSZone;
|
||||
// LL_INFOS("perfstats") << "processing update:" << LL_ENDL;
|
||||
using ST = StatType_t;
|
||||
// Note: nullptr is used as the key for global stats
|
||||
#ifdef FS_HAS_TELEMETRY_SUPPORT
|
||||
static char avstr[36];
|
||||
|
|
|
|||
|
|
@ -247,14 +247,14 @@ void viewerappapi_init(ViewerAppAPI *server)
|
|||
gBusNodeInfo = g_dbus_node_info_new_for_xml (DBUS_SERVER, NULL);
|
||||
g_assert (gBusNodeInfo != NULL);
|
||||
|
||||
auto owner_id = g_bus_own_name(G_BUS_TYPE_SESSION,
|
||||
VIEWERAPI_SERVICE,
|
||||
G_BUS_NAME_OWNER_FLAGS_NONE,
|
||||
busAcquired,
|
||||
nameAcquired,
|
||||
nameLost,
|
||||
NULL,
|
||||
NULL);
|
||||
g_bus_own_name(G_BUS_TYPE_SESSION,
|
||||
VIEWERAPI_SERVICE,
|
||||
G_BUS_NAME_OWNER_FLAGS_NONE,
|
||||
busAcquired,
|
||||
nameAcquired,
|
||||
nameLost,
|
||||
NULL,
|
||||
NULL);
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -272,8 +272,6 @@ bool LLAppViewerLinux::initSLURLHandler()
|
|||
//virtual
|
||||
bool LLAppViewerLinux::sendURLToOtherInstance(const std::string& url)
|
||||
{
|
||||
bool success = false;
|
||||
|
||||
auto *pBus = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, nullptr);
|
||||
|
||||
if( !pBus )
|
||||
|
|
|
|||
|
|
@ -615,9 +615,11 @@ void LLManip::renderTickValue(const LLVector3& pos, F32 value, const std::string
|
|||
gGL.scalef(inv_zoom_amt, inv_zoom_amt, inv_zoom_amt);
|
||||
}
|
||||
|
||||
LLColor4 shadow_color = LLColor4::black;
|
||||
shadow_color.mV[VALPHA] = color.mV[VALPHA] * 0.5f;
|
||||
|
||||
// <FS:ND> Unused and GCC does not like this ...
|
||||
//LLColor4 shadow_color = LLColor4::black;
|
||||
//shadow_color.mV[VALPHA] = color.mV[VALPHA] * 0.5f;
|
||||
// </FS:ND
|
||||
|
||||
if (fractional_portion != 0)
|
||||
{
|
||||
fraction_string = llformat("%c%02d%s", LLResMgr::getInstance()->getDecimalPoint(), fractional_portion, suffix.c_str());
|
||||
|
|
|
|||
|
|
@ -28,6 +28,11 @@
|
|||
#include "llurl.h"
|
||||
#include "llerror.h"
|
||||
|
||||
#if LL_LINUX
|
||||
#pragma GCC diagnostic ignored "-Wstringop-truncation"
|
||||
#endif
|
||||
|
||||
|
||||
LLURL::LLURL()
|
||||
{
|
||||
init("");
|
||||
|
|
|
|||
|
|
@ -493,7 +493,16 @@ void LLViewerJoystick::initDevice(void * preffered_device /*LPDIRECTINPUTDEVICE8
|
|||
#if LIB_NDOF
|
||||
mLastDeviceUUID = guid;
|
||||
|
||||
#ifdef LL_LINUX
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wstringop-truncation"
|
||||
#endif
|
||||
strncpy(mNdofDev->product, name.c_str(), sizeof(mNdofDev->product));
|
||||
#ifdef LL_LINUX
|
||||
#pragma GCC diagnostic pop
|
||||
#endif
|
||||
|
||||
mNdofDev->product[ sizeof(mNdofDev->product)-1 ] = 0;
|
||||
mNdofDev->manufacturer[0] = '\0';
|
||||
|
||||
initDevice(preffered_device);
|
||||
|
|
|
|||
|
|
@ -5536,8 +5536,12 @@ Falls Sie diesen Nutzungsbestimmungen nicht zustimmen, sollten keinerlei finanzi
|
|||
</notification>
|
||||
<notification name="AttachedRiggedObjectToHUD">
|
||||
Der Anhang „[NAME]“ enthält geriggtes Mesh, ist aber am HUD-Punkt „[HUD_POINT]“ angehängt. Das bedeutet, dass Sie es korrekt sehen werden, alle anderen werden es hingegen gar nicht sehen. Denken Sie darüber nach, den Anhang zu entfernen und an einem regulären Punkt am Körper anzuhängen.
|
||||
<usetemplate
|
||||
ignoretext="Warn me when a rigged attachment is worn on a HUD attachment point"
|
||||
name="notifyignore"/>
|
||||
</notification>
|
||||
<usetemplate ignoretext="Warnen, wenn ein geriggtes Mesh an einem HUD-Punkt angehängt wird." name="notifyignore"/>
|
||||
</notification>
|
||||
<notification name="WarnForceLoginURL">
|
||||
URL der Startseite des Anmeldebildschirms wird für Testzwecke übersteuert.
|
||||
|
||||
URL auf Standard zurücksetzen?
|
||||
<usetemplate name="okcancelbuttons" notext="Nächstes Mal erinnern" yestext="Zurücksetzen"/>
|
||||
</notification>
|
||||
</notifications>
|
||||
|
|
|
|||
|
|
@ -13776,4 +13776,17 @@ An attachment named "[NAME]" contains rigged mesh but is attached to the HUD poi
|
|||
ignoretext="Warn me when a rigged attachment is worn on a HUD attachment point"
|
||||
name="notifyignore"/>
|
||||
</notification>
|
||||
<notification
|
||||
icon="alertmodal.tga"
|
||||
name="WarnForceLoginURL"
|
||||
type="alertmodal">
|
||||
<unique/>
|
||||
Login splash screen URL is overridden for testing purposes.
|
||||
|
||||
Reset the URL to default?
|
||||
<usetemplate
|
||||
name="okcancelbuttons"
|
||||
notext="Remind me next time"
|
||||
yestext="Reset"/>
|
||||
</notification>
|
||||
</notifications>
|
||||
|
|
|
|||
|
|
@ -5166,4 +5166,10 @@ Pamiętaj, że nie można wybrać "otoczenia współdzielonego" i "bazowanego na
|
|||
Dodatek o nazwie "[NAME]" zawiera riggowany mesz, ale jest dołączony do punktu HUD "[HUD_POINT]". Oznacza to, że Ty co prawda zobaczysz go poprawnie wyrenderowany, ale wszyscy inni nie będą mogli. Rozważ zdjęcie go i ponowne dołączenie do zwykłego punktu doczepienia.
|
||||
<usetemplate ignoretext="Ostrzegaj, gdy dodatek z riggowanym meszem jest dołączany do punktu HUD" name="notifyignore" />
|
||||
</notification>
|
||||
<notification name="WarnForceLoginURL">
|
||||
Wygląda na to, że adres URL ekranu logowania jest zastępowany w celach testowych.
|
||||
|
||||
Zresetować adres URL do domyślnego?
|
||||
<usetemplate name="okcancelbuttons" notext="Przypomnij mi potem" yestext="Resetuj" />
|
||||
</notification>
|
||||
</notifications>
|
||||
|
|
|
|||
Loading…
Reference in New Issue