Age | Commit message (Collapse) | Author |
|
file(DOWNLOAD) replacing execute_process(COMMAND curl),
file(ARCHIVE_EXTRACT) replacing execute_process(COMMAND tar xf),
file(MAKE_DIRECTORY) replacing execute_process(COMMAND mkdir -p),
file(COPY) replacing execute_process(COMMAND cp),
file(RENAME) replacing execute_process(COMMAND mv),
try_compile replacing execute_process(COMMAND cmake/make),
LIBS_PREBUILT_DIR replacing AUTOBUILD_INSTALL_DIR,
0 replacing ${${_binary}_installed} where appropriate,
no FMOD reinstallation when it's already installed,
and archives & unarchived source/build directories are in CMake
root binary directory, instead of /tmp.
SHOW_PROGRESS is on for downloading Dullahan from the Megapahit
website cause it can be slow.
|
|
|
|
When linking to the static archive on arm64, it would fail with an
error of undefined iconv symbols.
When linking to the dynamic library, the path was to the dynamic
library was still assumed to still be in /usr/local/lib, so specifically
for the executable target, this needs to be changed (temporarily) to
the one in the prebuilt directory first, to later be changed again
by fixup_bundle to the bundled one in Frameworks.
|
|
|
|
|
|
also fix ${_binary} to its intended fmodstudio name.
|
|
|
|
|
|
by making sure we *write* the _installed files (containing the value 0).
|
|
and building only for one architecture at a time is the one supported now.
|
|
|
|
LL's build seems to have a minimum macOS of 13.3.
|
|
The variables set in this file are used only in llfilesystem/CMakeLists.txt,
and only used within a Linux (& FreeBSD) section, which then later
used in llfilesystem/lldir_linux.cpp, so Darwin doesn't need these
variables set specifically for it.
|
|
and can be differentiated across different distros, even though
there are only stable/LTS Debian and Ubuntu for now.
|
|
where they belong in newview/CMakeLists.txt.
|
|
by moving them to Variables.cmake so they can be reused throughout
all CMake files.
|
|
and Ubuntu. find_package(meshoptimizer) didn't imply its
target_link_libraries.
|
|
It is decided that on x86-64, it's compiled too instead of using
LL's (old) prebuilt libmeshoptimizer.a.
|
|
otherwise the app would crash on GNU/Linux or BSD for missing the
share directory prefix, unless cmake is run twice like before just
so APP_SHARE_DIR is picked up but we don't want to have to run it
twice.
|
|
|
|
since the app links to Meshoptimizer statically now on macOS.
|
|
on macOS and Fedora.
|
|
|
|
so that we don't have to run cmake twice just to pick up those
variables.
|
|
|
|
|
|
For now it still downloads even though the builder has downloaded
the files before. You could temporarily comment out the relevant
use_prebuilt_binary calls to skip all the re-downloads and re-installs.
|
|
automatically. Fix tab to spaces too.
|
|
|
|
Since llaudio is configured before any other LL library, FMOD gets
to be checked first that has a binary library.
|
|
For example, emoji_shortcodes, it's actually common, not a platform
specific binary, so it can be used by FBSD as well.
|
|
Also minimise ViewerMiscLibs.cmake diff from upstream.
|
|
It still parses autobuild.xml, but using `xmllint --xpath`.
It searches for the "common" version of the package first, if not
found then it searches for the platform specific version.
The URL parsed is then fed to cURL, determining our own output
file name (since I couldn't find a way to extract remote file name
easily using cURL) assuming the ones we need all have tar.zst
extension now. It downloads to /tmp and finally extracts to packages.
|
|
Somehow it hasn't led to an error on my and observeur's systems.
It should have had, really.
|
|
|
|
This commit reintroduces the meapahit specic optimisations while maintaining an option for
the LL vertex buffer optimisation mode.
|
|
It's assumed any relevant VLC dmg has been downloaded to ~/Downloads/.
|
|
It's assumed that fmodstudioapi20223mac-installer.dmg has been
downloaded to ~/Downloads/.
|
|
The code is also moved to where it's relevant.
|
|
It didn't work before because the destination folder wouldn't exist
yet by the time it's configured, but CMake has been silent about it.
|
|
Somehow the MACOSX_BUNDLE in add_executable isn't taking effect.
|
|
This commit attempts to fix an a crash occuring when using the teleport button in the legacy search floater.
|
|
This also contains removal of commented out lines that had previously
been used to get macOS using SDL2 instead of Cocoa, and removal of
dependency on SLPlugin when no media plugins are enabled (at all).
|
|
since I haven't been able to build the WebAssembly website again
caused by its FreeType port's failure to link.
|
|
This reverts commit 9268fdd5b99bb8e426e7c1232916dfd909039f96.
|
|
There's this comment in indra/llimage/llimagejpeg.cpp:
//try/catch will crash on Mac and Linux if LLImageJPEG::errorExit throws an error
//so as instead, we use setjmp/longjmp to avoid this crash, which is the best we can get. --bao
but setjmp longjmp that aren't properly paired should be avoided on Apple Silicon (there are multiple setjmps but only 1 longjmp)
so if it still crashes, then that might be because of the try and catch
but if it doesn't crash any more, then the cause might just be improperly paired setjmp and longjmp
https://megapahit.com/show_bug.cgi?id=34
|
|
Somehow it wouldn't work when the libvlc dylibs linked by
media_plugin_libvlc were far in Frameworks, even with all the
linkages and VLC_PLUGIN_PATH set correctly.
Because of this, I had to make the libvlc files redundantly copied
(they're under 1 MB so we'll live with it) in llplugin just like
upstream for media_plugin_libvlc to link to instead, though it seems
the directory name can be anything, so I just let it be "plugins"
for installation convenience using CMake.
Also now the builder is assumed to not necessarily want VLC.app to
be installed in /Applications, though they would need to keep the
downloaded VLC disc image open.
|
|
|
|
and without having to rename the containing folder.
VLC streaming still hasn't worked (it used to) since using fixup_bundle,
since switching to FMOD, since switching from SDL to Cocoa, since
merging Maintenance B, so still no idea which of these is causing it.
|
|
on macOS and at least the one directly. Collada DOM's Boost dependency
is still 1.76 in MacPorts' case, and that's why we still have Boost
filesystem and system dylibs in Frameworks. On the other hand, the
viewer codebase now really depends on newer Boost, in my case I can
use MacPorts' 1.81. I had to switch to static because Boost 1.81
filesystem crashed for not finding the implementation of something
declared using BOOST_FORCEINLINE in boost/filesystem/path.hpp.
I think I know why, now. Cause the filesystem dylib that eventually
got installed was the 1.76 one depended on by Collada DOM, so there
was a conflict, there. For now the temporary MacPorts solution for
this is to install boost181 with -no_static variant (notice the "-"
there, so the static libraries are built and installed too). The
rest is so hack-ish, I had to manually recreate Boost links pointing
to 1.81 ones, only the ones needed, and for the libraries, only the
static ones.
|