Merge pull request 'Fixes for 2025.07 to compile on macOS'
commit
9328c8e559
|
|
@ -195,14 +195,14 @@
|
|||
<string>ndPhysicsStub</string>
|
||||
<key>platforms</key>
|
||||
<map>
|
||||
<key>darwin</key>
|
||||
<key>darwin64</key>
|
||||
<map>
|
||||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>7d375112b162e32e37262da4a6c0a702</string>
|
||||
<string>b0f4fd59a72cf04db2cc426241a3850c</string>
|
||||
<key>url</key>
|
||||
<string>https://3p.firestormviewer.org/ndPhysicsStub-1.0-darwin-202330107.tar.bz2</string>
|
||||
<string>https://3p.firestormviewer.org/ndPhysicsStub-1.0-darwin64-252581439.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin</string>
|
||||
|
|
@ -250,9 +250,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>94fc457c46e1fb94b31251bd4747d10f</string>
|
||||
<string>439af4161d99a3d12e0d6d90cb948687</string>
|
||||
<key>url</key>
|
||||
<string>https://3p.firestormviewer.org/glod-1.0pre3.171101143-darwin64-171101143.tar.bz2</string>
|
||||
<string>https://3p.firestormviewer.org/glod-1.0pre3.252621603-darwin64-252621603.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin64</string>
|
||||
|
|
@ -297,14 +297,14 @@
|
|||
<string>gntp-growl</string>
|
||||
<key>platforms</key>
|
||||
<map>
|
||||
<key>darwin</key>
|
||||
<key>darwin64</key>
|
||||
<map>
|
||||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>33300134846d0f00ac4f31c1a190e3e6</string>
|
||||
<string>5362f98bf0b0c5b12acacd6b7b1e427e</string>
|
||||
<key>url</key>
|
||||
<uri>https://3p.firestormviewer.org/gntp_growl-1.0-darwin-201505101047-r12.tar.bz2</uri>
|
||||
<uri>https://3p.firestormviewer.org/gntp_growl-1.0-darwin64-252631716.tar.bz2</uri>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin</string>
|
||||
|
|
@ -378,9 +378,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>3bc297a0fa47094bb52d361f80186387</string>
|
||||
<string>91b24b83d3f8461286f783f28fcd9a66</string>
|
||||
<key>url</key>
|
||||
<uri>https://3p.firestormviewer.org/discord_rpc-3.4.0-darwin64-192522358.tar.bz2</uri>
|
||||
<uri>https://3p.firestormviewer.org/discord_rpc-3.4.0-darwin64-252621453.tar.bz2</uri>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin64</string>
|
||||
|
|
|
|||
|
|
@ -20,13 +20,13 @@ add_library(fs::discord INTERFACE IMPORTED)
|
|||
include(Prebuilt)
|
||||
use_prebuilt_binary(discord-rpc)
|
||||
|
||||
if (WINDOWS)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
elseif (LINUX)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
elseif (DARWIN)
|
||||
target_link_libraries(fs::discord INTERFACE discord-rpc)
|
||||
endif (WINDOWS)
|
||||
find_library(DISCORD_LIBRARY
|
||||
NAMES
|
||||
discord-rpc.lib
|
||||
libdiscord-rpc.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
target_link_libraries(fs::discord INTERFACE ${DISCORD_LIBRARY})
|
||||
|
||||
target_include_directories(fs::discord SYSTEM INTERFACE
|
||||
${AUTOBUILD_INSTALL_DIR}/include/discord-rpc
|
||||
|
|
|
|||
|
|
@ -33,14 +33,15 @@ if (USE_FMODSTUDIO)
|
|||
# as accessing the private LL location will fail if you don't have the credential
|
||||
include(Prebuilt)
|
||||
use_prebuilt_binary(fmodstudio)
|
||||
if (WINDOWS)
|
||||
target_link_libraries( ll::fmodstudio INTERFACE fmod_vc)
|
||||
elseif (DARWIN)
|
||||
#despite files being called libfmod.dylib, we are searching for fmod
|
||||
target_link_libraries( ll::fmodstudio INTERFACE fmod)
|
||||
elseif (LINUX)
|
||||
target_link_libraries( ll::fmodstudio INTERFACE fmod)
|
||||
endif (WINDOWS)
|
||||
|
||||
find_library(FMOD_LIBRARY
|
||||
NAMES
|
||||
fmod_vc.lib
|
||||
libfmod.dylib
|
||||
libfmod.so
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
target_link_libraries(ll::fmodstudio INTERFACE ${FMOD_LIBRARY})
|
||||
|
||||
target_include_directories( ll::fmodstudio SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/fmodstudio)
|
||||
endif (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
|
||||
|
|
|
|||
|
|
@ -5,13 +5,24 @@ add_library( fs::glod INTERFACE IMPORTED )
|
|||
|
||||
include(Prebuilt)
|
||||
use_prebuilt_binary(glod)
|
||||
if (WINDOWS)
|
||||
target_link_libraries( fs::glod INTERFACE glod.lib)
|
||||
elseif (DARWIN)
|
||||
target_link_libraries( fs::glod INTERFACE libGLOD.dylib)
|
||||
|
||||
find_library(GLOD_LIBRARY
|
||||
NAMES
|
||||
GLOD.lib
|
||||
libGLOD.dylib
|
||||
libGLOD.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
if (WINDOWS OR DARWIN)
|
||||
target_link_libraries(fs::glod INTERFACE ${GLOD_LIBRARY})
|
||||
elseif (LINUX)
|
||||
target_link_libraries( fs::glod INTERFACE libGLOD.a libvds.a)
|
||||
endif (WINDOWS)
|
||||
find_library(VDS_LIBRARY
|
||||
NAMES
|
||||
libvds.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
target_link_libraries(fs::glod INTERFACE ${GLOD_LIBRARY} ${VDS_LIBRARY})
|
||||
endif ()
|
||||
|
||||
target_include_directories( fs::glod SYSTEM INTERFACE
|
||||
${AUTOBUILD_INSTALL_DIR}/include/glod
|
||||
|
|
|
|||
|
|
@ -9,11 +9,20 @@ add_library( fs::growl INTERFACE IMPORTED )
|
|||
|
||||
include(Prebuilt)
|
||||
use_prebuilt_binary(gntp-growl)
|
||||
if (WINDOWS)
|
||||
target_link_libraries( fs::growl INTERFACE growl.lib growl++.lib)
|
||||
elseif (DARWIN)
|
||||
target_link_libraries( fs::growl INTERFACE libgrowl.dylib libgrowl++.dylib)
|
||||
endif (WINDOWS)
|
||||
|
||||
find_library(GROWL_LIBRARY
|
||||
NAMES
|
||||
growl.lib
|
||||
libgrowl.dylib
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
find_library(GROWL_PLUSPLUS_LIBRARY
|
||||
NAMES
|
||||
growl++.lib
|
||||
libgrowl++.dylib
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
target_link_libraries(fs::growl INTERFACE ${GROWL_LIBRARY} ${GROWL_PLUSPLUS_LIBRARY})
|
||||
|
||||
target_include_directories( fs::growl SYSTEM INTERFACE
|
||||
${AUTOBUILD_INSTALL_DIR}/include/Growl
|
||||
|
|
|
|||
|
|
@ -48,7 +48,27 @@ else (HAVOK)
|
|||
# set(LLPHYSICSEXTENSIONS_SRC_DIR ${LIBS_PREBUILT_DIR}/llphysicsextensions/stub)
|
||||
# </FS:ND>
|
||||
|
||||
target_link_libraries( llphysicsextensions_impl INTERFACE nd_hacdConvexDecomposition hacd nd_Pathing )
|
||||
# <FS:TJ> Use find_library to make our lives easier
|
||||
find_library(ND_HACDCONVEXDECOMPOSITION_LIBRARY
|
||||
NAMES
|
||||
nd_hacdConvexDecomposition.lib
|
||||
libnd_hacdConvexDecomposition.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
find_library(HACD_LIBRARY
|
||||
NAMES
|
||||
hacd.lib
|
||||
libhacd.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
find_library(ND_PATHING_LIBRARY
|
||||
NAMES
|
||||
nd_pathing.lib
|
||||
libnd_pathing.a
|
||||
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
|
||||
|
||||
target_link_libraries(llphysicsextensions_impl INTERFACE ${ND_HACDCONVEXDECOMPOSITION_LIBRARY} ${HACD_LIBRARY} ${ND_PATHING_LIBRARY})
|
||||
# </FS:TJ>
|
||||
|
||||
# <FS:ND> include paths for LLs version and ours are different.
|
||||
target_include_directories( llphysicsextensions_impl INTERFACE ${LIBS_PREBUILT_DIR}/include/ )
|
||||
|
|
|
|||
|
|
@ -97,6 +97,10 @@
|
|||
# define LL_ARM64 1
|
||||
#elif LL_GNUC && (defined(__arm64__) || defined(__aarch64__))
|
||||
# define LL_ARM64 1
|
||||
// <FS:TJ> Check if using clang
|
||||
#elif LL_CLANG && (defined(__arm64__) || defined(__aarch64__))
|
||||
# define LL_ARM64 1
|
||||
// </FS:TJ>
|
||||
#elif LL_MSVC && _M_X64
|
||||
# define LL_X86_64 1
|
||||
# define LL_X86 1
|
||||
|
|
@ -105,6 +109,13 @@
|
|||
#elif LL_GNUC && ( defined(__amd64__) || defined(__x86_64__) )
|
||||
# define LL_X86_64 1
|
||||
# define LL_X86 1
|
||||
// <FS:TJ> Check if using clang
|
||||
#elif LL_CLANG && ( defined(__amd64__) || defined(__x86_64__) )
|
||||
# define LL_X86_64 1
|
||||
# define LL_X86 1
|
||||
#elif LL_CLANG && ( defined(__i386__) )
|
||||
# define LL_X86 1
|
||||
// </FS:TJ>
|
||||
#elif LL_GNUC && ( defined(__i386__) )
|
||||
# define LL_X86 1
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2452,13 +2452,16 @@ bool LLWindowMacOSX::getInputDevices(U32 device_type_filter,
|
|||
|
||||
void LLWindowMacOSX::openFile(const std::string& file_name )
|
||||
{
|
||||
LL_INFOS() << "Opening file " << file_name << LL_ENDL;
|
||||
FSRef appRef;
|
||||
OSStatus os_result = FSPathMakeRef((UInt8*)file_name.c_str(),
|
||||
&appRef,NULL);
|
||||
if(os_result >= 0)
|
||||
LL_INFOS() << "Opening file " << file_name << LL_ENDL;
|
||||
CFURLRef url = CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault,
|
||||
(const UInt8*)file_name.c_str(),
|
||||
(CFIndex)file_name.size(),
|
||||
false);
|
||||
|
||||
if (url)
|
||||
{
|
||||
os_result = LSOpenFSRef(&appRef, NULL);
|
||||
OSStatus os_result = LSOpenCFURLRef(url, NULL);
|
||||
CFRelease(url);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2508,7 +2508,7 @@ if (WINDOWS)
|
|||
elseif (DARWIN)
|
||||
set_target_properties(${VIEWER_BINARY_NAME}
|
||||
PROPERTIES
|
||||
RESOURCE SecondLife.xib
|
||||
RESOURCE Firestorm.xib
|
||||
LINK_FLAGS_RELEASE "${LINK_FLAGS_RELEASE} -Xlinker -dead_strip"
|
||||
#<FS:TS> Force the SDK version in the linked executable to be 10.12. This will fool
|
||||
# macOS into using the pre-Mojave display system, avoiding the blurry display that
|
||||
|
|
|
|||
|
|
@ -292,7 +292,6 @@ private:
|
|||
|
||||
S32 mInputEditorPad;
|
||||
S32 mChatLayoutPanelHeight;
|
||||
S32 mFloaterHeight;
|
||||
|
||||
uuid_vec_t mInvitedParticipants;
|
||||
uuid_vec_t mPendingParticipants;
|
||||
|
|
|
|||
|
|
@ -161,7 +161,6 @@ private:
|
|||
|
||||
S32 mInputEditorPad;
|
||||
S32 mChatLayoutPanelHeight;
|
||||
S32 mFloaterHeight;
|
||||
|
||||
std::vector<LLChat> mMessageArchive;
|
||||
|
||||
|
|
|
|||
|
|
@ -395,7 +395,7 @@ private:
|
|||
|
||||
LLButton* mBtnAlign { nullptr };
|
||||
LLButton* mBtnAlignTex { nullptr };
|
||||
LLButton* mBtnPbrFromInv { nullptr };
|
||||
//LLButton* mBtnPbrFromInv { nullptr }; // <FS/> Done via texture picker
|
||||
LLButton* mBtnEditBbr { nullptr };
|
||||
LLButton* mBtnSaveBbr { nullptr };
|
||||
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ private:
|
|||
// <FS:Ansariel> FIRE-4740: Friend counter in people panel
|
||||
LLTabContainer* mFriendsTabContainer;
|
||||
|
||||
LLAccordionCtrl* mFriendsAccordion = nullptr;
|
||||
//LLAccordionCtrl* mFriendsAccordion = nullptr; // <FS:Ansariel/> Friend list accordion replacement
|
||||
LLAccordionCtrlTab* mFriendsAllTab = nullptr;
|
||||
LLAccordionCtrlTab* mFriendsOnlineTab = nullptr;
|
||||
|
||||
|
|
|
|||
|
|
@ -321,13 +321,9 @@ public:
|
|||
void setRebakeStuck(bool stuck) { mRebakeStuck = stuck;} // <FS:LO> FIRE-7639 - Stop the blinking after a while
|
||||
|
||||
private:
|
||||
LLTextBox *mTextBalance;
|
||||
LLTextBox *mTextHealth;
|
||||
LLTextBox *mTextTime;
|
||||
LLTextBox *mFPSText; // <FS:Ansariel> FIRE-14482: Show FPS in status bar
|
||||
|
||||
LLTextBox* mTextParcelName;
|
||||
|
||||
LLStatGraph *mSGBandwidth;
|
||||
LLStatGraph *mSGPacketLoss;
|
||||
|
||||
|
|
@ -361,7 +357,6 @@ private:
|
|||
LLPanelNearByMedia* mPanelNearByMedia;
|
||||
|
||||
LLPanel* mParcelInfoPanel;
|
||||
LLButton* mInfoBtn;
|
||||
LLTextBox* mParcelInfoText;
|
||||
LLTextBox* mDamageText;
|
||||
LLIconCtrl* mParcelIcon[ICON_COUNT];
|
||||
|
|
|
|||
|
|
@ -1588,12 +1588,6 @@ class Darwin_x86_64_Manifest(ViewerManifest):
|
|||
self.path("*.dylib")
|
||||
self.path("plugins.dat")
|
||||
|
||||
# do this install_name_tool *after* media plugin is copied over
|
||||
dylibexecutablepath = self.dst_path_of('llplugin/media_plugin_cef.dylib')
|
||||
self.run_command_shell('install_name_tool -change '
|
||||
'"@rpath/Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework" '
|
||||
'"@executable_path/../Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework" "%s"' % dylibexecutablepath)
|
||||
|
||||
# NOTE: the -S argument to strip causes it to keep enough info for
|
||||
# annotated backtraces (i.e. function names in the crash log). 'strip' with no
|
||||
# arguments yields a slightly smaller binary but makes crash logs mostly useless.
|
||||
|
|
|
|||
Loading…
Reference in New Issue