summaryrefslogtreecommitdiff
path: root/indra/cmake
AgeCommit message (Collapse)Author
2023-10-26Merge tag '6.6.16-release'Erik Kundiman
source for viewer 6.6.16.6566955269
2023-09-10Use prebuilt OpenJPEG for nowErik Kundiman
until we figure out what's causing crashes with vanilla OpenJPEG.
2023-09-07SL-18837: Merge branch 'main' into actionsNat Goodspeed
2023-08-27Hidden visibility only when building static libsErik Kundiman
Otherwise it would fail to link SLPlugin.
2023-08-27Force FreeBSD to accept TOS via external browserErik Kundiman
This forces the use of external browser for links too for now, as we don't have a solution for the HTML media plugin yet.
2023-08-26Don't install the libraries when they're staticErik Kundiman
For runtime, they're already part of the executable. For development, we're not there yet. So this reduces the overall package size for now.
2023-08-26Don't install the headers for nowErik Kundiman
until we've tried building another project, but based on this project's liblinden. It's also because these headers would be in a separate -dev Debian package.
2023-08-26CPack for packaging (when PACKAGE set to on)Erik Kundiman
Since we could use the dynamic versioning from the configuration phase of CMake, the inclusion is put in BuildVersion.cmake. Other CPACK variables are usually static so can be set when running cmake. CPack somehow doesn't pick up the DESTINATION values in ViewerInstall (slplugin & libvlc too) from UnixInstall, so they're they're partially hardcoded again there.
2023-08-26Add sysroot to GLH & Meshoptimizer include pathsErik Kundiman
When cross-compiling, the host's /usr/local/include would be unsafely included before. The problem with this was that it leaked other host library headers unexpectedly, like Boost. The target compilation caught some function from the host headers which of a newer version, and then when trying to link to the target libraries, the function wasn't available yet in the older version.
2023-08-24Merge tag '6.6.14-release'Erik Kundiman
source for viewer 6.6.14.581101
2023-08-22ReindentedErik Kundiman
2023-08-22Fix target_link_directories argumentErik Kundiman
Only found out after using CMake 3.26 for Darwin. It wasn't an error when using CMake 3.24.
2023-08-22Add sysroot to XMLRPC-EPI include path on LinuxErik Kundiman
Useful when cross compiling.
2023-08-21Darwin & any platform can, and should, use SDLErik Kundiman
The alt mouse click to cam is broken for now on macOS, but this is the path we've chosen.
2023-08-16Revert "Try not to rely (explicitly) on X11"Erik Kundiman
This reverts commit d883a11567252d9a0baff653bb16c38817a7c21c.
2023-08-16Try not to rely (explicitly) on X11Erik Kundiman
2023-08-15SDL 1.2 to 2.0 migrationErik Kundiman
Both keycodes and scancodes are now 32 bits, so the key type is lengthened from U16 to U32.
2023-07-30SLPlugin is in libexec when installed to systemErik Kundiman
2023-07-29Add system XMLRPC-EPI include directory for DarwinErik Kundiman
2023-07-29Darwin escapes prebuilt dir inclusion on sys libsErik Kundiman
2023-07-29Fix CMAKE_PREFIX_PATH setting syntax for DarwinErik Kundiman
2023-07-29Viewer & resources can be installed on the systemErik Kundiman
2023-07-29The Linden libraries can be installed nowErik Kundiman
Useful when installed as shared libraries, so other viewer executables can share these libraries.
2023-07-29Start adding LibVLC support when using system libsErik Kundiman
Streaming is not working yet, though. Until it's made sure that the dynamic library and plugins needed are on the paths the executable is expecting them to be.
2023-07-19Obtain Vorbis & Ogg flags when using system libsErik Kundiman
On some platforms, pkg-config --libs vorbis might not necessarily imply -logg. vorbisenc & vorbisfile need their own checks anyway.
2023-07-19Mac frameworks not linked for "the remaining" OSesErik Kundiman
2023-07-19Use system SDL on FreeBSD tooErik Kundiman
X11 is still required too, that's why it's still added for linking. On Darwin, SDL is disabled for now.
2023-07-19Disable dictionaries when using system libsErik Kundiman
for now. Dictionaries should later be enabled when we have arrived at the point where everything has run well that the next stage would be the packaging for the distribution stage.
2023-07-19Obtain FontConfig flags when using system libsErik Kundiman
and at the same time escape use_prebuilt_binary commands in the file.
2023-07-19Obtain GTK2 required flags when using system libsErik Kundiman
So far all of GTK2 dependencies flags, such as for Pango, Cairo, PNG16, etc., seem to be implied by checking the gtk+-2.0 module alone, at least on FreeBSD and Debian.
2023-07-19Obtain FreeType flags when using system libsErik Kundiman
The module name to check with pkgconf is different, hence the special treatment.
2023-07-19Obtain COLLADA DOM flags when using system libsErik Kundiman
There are also several additional flags from running pkgconf that we don't get from pkg_check_modules. At least 1 is needed later when compiling llprimitive.
2023-07-19LL physics extensions stubErik Kundiman
Since the CMakeLists.txt includes some same .cmake files as the viewer, I think the project might as well be a part of the Linden libraries code. And for now is put under llprimitive (might not be consistent, in fact the opposite, with they way llplugin relates to slplugin), but I think this way results the least change, and it still works. The differences include: - all files (common llphysicsextensions headers to be included by library users and the stub implementation files) are put inside one directory, and the CMakeLists.txt is adjusted accordingly; - modernised CMakeLists.txt, so include_directories are now implied by target_link_libraries; - some file name fix; - add_library is not explicitly set to STATIC;
2023-07-19Obtain Meshoptimizer flags when using system libsErik Kundiman
The Meshoptimizer CMake files don't seem to be working right. On more than one platform, they always conclude the package as not found. Nevertheless, the library is typically installed in standard paths, that no special paths need to be included for Meshoptimizer to be found. Except on macOS (so far), as existing package managers don't have that package yet, hence the /usr/local/include addition. It's a safe path to include anyway on other un*x platforms.
2023-07-19Obtain OpenJPEG flags when using system libsErik Kundiman
The module name to check with pkgconf is different, hence the special treatment.
2023-07-19Not use use_system_binary for system GLEXTErik Kundiman
for the same reason as GLH, but since the headers are expected to be installed in the same directory as GLH (and GLEXT.cmake includes GLH.cmake), we can skip any additional directory to look the headers for.
2023-07-19Not use use_system_binary for system GLHErik Kundiman
No package manager that I know of provide such package. So this one is expected to be installed in /usr/local/include.
2023-07-19Not use use_system_binary for system OpenSSLErik Kundiman
Some distros already include OpenSSL as part of the distribution, that OpenSSL may not be provided with its .pc files, even though they're available upstream.
2023-07-19Not use use_system_binary for system xmlrpc-epiErik Kundiman
The xmlrpc-epi package has no .pc or .cmake files. On some platforms, the header and the library directories don't have special paths. On GNU/Linux, at least on Debian, the headers are encapsulated in the packages's own directory. On macOS, both MacPorts & Homebrew don't have the package. On the other hand, Fink, that has the package, still doesn't support recent versions of macOS as of this writing. So it's very likely that on macOS, xmlrpc-epi is installed in /usr/local.
2023-07-19Keep using Zlib (no -ng) when using system libsErik Kundiman
Calls to zlib-ng in the viewer code aren't prefixed. And in order to build, the zlib-ng package needs to be configured with the ZLIB_COMPAT option on. Some package managers may not have provided the option on, or to turn that on, yet.
2023-07-19Only make sure there's xxHash when using sys libsErik Kundiman
2023-07-19Obtain Boost include dir when using system libsErik Kundiman
The necessary linker flags to link the required Boost libraries are somehow not obtained from find_package. Passing boost_context, boost_fiber, or so on to find_package didn't help getting the linker flags either. Hence the manual listing of the Boost libraries to link.
2023-07-19Obtain APR required flags when using system libsErik Kundiman
On some platforms such as FreeBSD or MacPorts, pkg-config --libs apr-util-1 already includes -lapr-1. But on APT, the apr-1 module needs to be checked too.
2023-07-19OpenAL system lib flags by checking frealut moduleErik Kundiman
2023-07-19Fix PKG_CONFIG_MULTI_GUESS valueErik Kundiman
It was set to the same value as PKG_CONFIG_MULTI_LOCAL_GUESS before. That's why it couldn't find any package installed by the package manager on a GNU/Linux distro.
2023-07-19Set CMake USESYSTEMLIBS on to use system librariesErik Kundiman
Its use_system_binary implementation first tries to use pkg-config to generate the necessary flags. But if it doesn't find the package, then it will try to use find_package. The USESYSTEMLIBS is also brought back again though only in 1 place, and the name because it's the one still on the wiki page (the building the viewer with Autobuild one), so the CMake variable is not totally new.
2023-07-18Fixes for compatibility with new xcode 15 beta for any viewer branch after ↵Brad Linden
DRTVWR-577 (#232)
2023-06-28DRTVWR-582: Merge branch DRTVWR-582-maint-U into contribute-frozenNat Goodspeed
to resolve conflicts in installer_template.nsi
2023-06-07Attempt to port some build.yaml improvements from DRTVWR-559 over to actions ↵Brad Linden
branch
2023-06-05SL-18837: Try to silence cascade of Boost.Bind warning messages.Nat Goodspeed