summaryrefslogtreecommitdiff
path: root/indra/cmake/00-Common.cmake
AgeCommit message (Collapse)Author
2024-06-20Merge remote-tracking branch 'secondlife/release/maint-b' into maint-bErik Kundiman
2024-06-14Merge branch 'release/maint-b' into marchcat/b-mergeAndrey Lihatskiy
# Conflicts: # .github/workflows/build.yaml # indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl # indra/newview/app_settings/shaders/class3/deferred/reflectionProbeF.glsl # indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl # indra/newview/llfilepicker.cpp
2024-06-10Attempted workaround for actions/runner-images#10004 build failures.Brad Linden
2024-05-18Turn off C++ 20 compatibilityErik Kundiman
Compiling would fail otherwise at least on Fedora 40 and Ubuntu 24.04 with their GCC 13 or newer.
2024-05-16Merge tag '7.1.7-release'Erik Kundiman
source for viewer 7.1.7.8974243247
2024-04-29#824 Process source files in bulk: replace tabs with spaces, convert CRLF to ↵Andrey Lihatskiy
LF, and trim trailing whitespaces as needed
2024-04-15Chore/pragma gcc cleansweep (#1226)Nicky Dasmijn
* Remove all GCC warning suppression pragmas. * For Linux just just raise(SIGSEGV) as the crash driver. This has a much higher chance of the compiler understanding out intent and figuring out we end the program here. * Remove -Wno-stringop-overflow and -Wno-stringop-truncation from GCC_WARNINGS. After calling raise(SIGSEGV) as the crash driver I saw no issue with those warnings anymore After removing thoses GCC pragmas there is also no need for clang -Wno-unknown-warning-option anymore. * Remove CMakePresets from this PR. * Remove Lindens from comments :)
2024-04-12Chore/cmake pretty up (#1205)Nicky Dasmijn
* - Add an option to with ASAN - Fix GCC -Werror option. * - find_program should not set REQUIRED if per logic a fallback to ld.bfd is fine - cmake idiomatic is to test Variables without dereferencing them * Add -Wno-unknown-warning-option for clang or it will complain about some GCC only options ``` /home/runner/work/viewer/viewer/indra/llcommon/llsdutil.cpp:39:32: error: unknown warning group '-Wstringop-truncation', ignored [-Werror,-Wunknown-warning-option] #pragma GCC diagnostic ignored "-Wstringop-truncation" // It's actually okay what happens here ```
2024-04-10Linux: build with clang, link with moldBennett Goble
2024-04-09Update Linux media handling (#1146)Nicky Dasmijn
* Enable CEF browser for Linux * Disable the update for Linux, we don't have that one right now * Update build_linux.yaml We need libpulse-dev for volume_catcher Linux * Add linux_volum_catcher* files * Enable OpenAL for Linux-ReleaseOS * Linux: Update OpenAL * Update SDL2 * Add libsndio-dev to the dependencies. * Update CEF to an official LL version * Remove dupe of emoji_shortcodes * Reording autobuild does because it can and wants to * Linux: Disable NDOF for the time being. After updating the ndof 3P needs to be rebuilt and we do not have a fresh one from LL yet. Forcefully undefine LIB_NDOF, it gets defined in the build variables no matter if it is safe to define. * Remove wrestling with mutliarch and LIBGL_DRIVERS_PATH * Remove tcmalloc snippet, tcmalloc is a very faint bad dream of the past * Putting out a warning this viewer ran on a x64 arch and then suggesting to install 32 bit compat packages makes no sense at all * CEF resources need to be in lib * It;'s okay to warn about missing plugins * Linux: CEF keyboard handling * Remove old gstreamer 0.10 implementation * Linux DSO loading always had been very peculiar due to macro magic. At least now it is peculiar shared magic with only one implementation. * Remove -fPIC. We get that one from LL_BUILD * /proc/cpuinfo is not reliable to detrmine the max CPU clock. Try to determine this by reading "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq". Only if this fails go back to /proc/cpuinfo * Cleanup * Cleanup common linker and compiler flags, make it more obvious which flags are for which OS/compiler * Switch to correct plugin file * Install libpulse-dev for volume catcher. * And the runner needs libsndio-dev as well. * check for runner.os=='linux'. matrix.os is the full name of the image (limux-large).
2024-04-08Some fixes to linux builds (#1144)AiraYumi
* compile flag cleanup for linux * rollback indra/llcommon/llprofiler.h * use 3p fltk package * fix build gcc 13 (dangling-pointer)
2024-04-05Linux viewer (ReleaseOS) resurrection (#1099)Nicky Dasmijn
Co-authored-by: AiraYumi <aira.youme@airanyumi.net>
2024-01-18GNU/Linux internal web browserErik Kundiman
The lllibs need to be built as static libs now, otherwise SLPlugin would lose reference to gSavedSettings. The media plugins still need to be built as dynamic libs however, so they can't rely on the condition in LibraryInstall.cmake any more. Since the Megapahit viewer, when built using GCC, is using the default value for _GLIBCXX_USE_CXX11_ABI (which is 1 for the newer C++11 ABI as opposed to 0 for the older C++03 ABI), the Dullahan dependency needs to be built with the very same _GLIBCXX_USE_CXX11_ABI setting too, otherwise apr_dso would fail at loading libmedia_plugin_cef.so because of the failure to refer to the setOnConsoleMessageCallback function with strictly the same (not differing between std::__cxx11::basic_string vs. std::basic_string) parameter types. The CEF build is Spotify's, so no live streaming support, while the Dullahan package used by the viewer was built using Kokua's dullahan fork. After rebuilding it with _GLIBCXX_USE_CXX11_ABI kept at default by not overriding it in variables (from the build-variables repo), the order of the target link libraries in CEFPlugin.cmake doesn't seem to matter any more (it did before!). Now EXTERNAL_TOS can be safely omitted from GNU/Linux added compile definitions (but still used on FreeBSD).
2023-12-17Revert "EXTERNAL_TOS on macOS too, for now"Erik Kundiman
This reverts commit 33691f2fa52e3b9c2146391413234472769b13ed.
2023-11-07Merge branch 'main' into DRTVWR-559Erik Kundiman
2023-11-07EXTERNAL_TOS on macOS too, for nowErik Kundiman
since we don't have any web browser there either.
2023-10-26Merge remote-tracking branch 'secondlife/DRTVWR-559' into DRTVWR-559Erik Kundiman
2023-10-26Merge tag '6.6.16-release'Erik Kundiman
source for viewer 6.6.16.6566955269
2023-10-25Merge remote-tracking branch 'origin/main' into DRTVWR-559Brad Linden
2023-09-10Merge branch 'main' into DRTVWR-559Erik Kundiman
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-07-18Merge remote-tracking branch 'origin/xcode-14.3' into DRTVWR-559 (#292)Brad Linden
2023-07-18Fixes for compatibility with new xcode 15 beta for any viewer branch after ↵Brad Linden
DRTVWR-577 (#232)
2023-06-07Fixes for compatibility with new xcode 15 beta for any viewer branch after ↵Brad Linden
DRTVWR-577 (#232)
2023-06-05SL-18837: Try to silence cascade of Boost.Bind warning messages.Nat Goodspeed
2023-04-10SL-18839: Add basic Github buildBennett Goble
2023-04-05SL-18839: Add basic Github buildBennett Goble
2023-03-29Merge remote-tracking branch 'origin/main' into DRTVWR-559Brad Linden
2022-10-25Bump Teamcity for new Project Viewer build of DRTVWR-559Brad Kittenbrink
2022-10-12Run on windows-2022-largeSignal Linden
2022-09-20DRTVWR-568: Stop suppressing unused variable warnings -- we fixed?!Nat Goodspeed
2022-09-17SL-17238 MacOS build does not recognize no-unused-but-set-variableAndrey Kleshchev
2022-09-16Merge remote-tracking branch 'origin/DRTVWR-543-maint_cmake' into ↵Nicky Dasmijn
DRTVWR-568_cmake
2022-08-26DRTVWR-568: More cleanup of deleted obsolete std library features.Nat Goodspeed
2022-06-05Bring back comments for EXTERNAL_TOS and LL_IGNORE_SIGCHLDNicky
2022-06-05Merge remote-tracking branch 'origin/DRTVWR-543-maint_cmake' into ↵Nicky
DRTVWR-543-maint_cmake
2022-05-27Merge branch 'master' into DRTVWR-543-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/cmake/LLCommon.cmake # indra/llcommon/CMakeLists.txt # indra/llrender/llgl.cpp # indra/newview/llappviewer.cpp # indra/newview/llface.cpp # indra/newview/llflexibleobject.cpp # indra/newview/llvovolume.cpp
2022-04-18Remvoe -D that had been passed in front of each entry of ↵Nicky
add_compile_definitions, this lead to '-D-D<value>'
2022-04-16Remove unused variable.Nicky
2022-04-16Do not use ${ARCH}_linux_INCLUDES atmNicky
2022-04-13Rework cmake, the original plan was to maybe be able to use conan targets ↵Nicky
with the same name (that's why 3ps had names like apr::apr), but it's safer and saner to put the LL 3ps under the ll:: prefix. This also allows means it is possible to get rid of that bad "if( TRAGET ...) return() endif()" pattern and rather use include_guard().
2022-04-13Remove obsolete and unmaintained USE_SYSTEMLIBSNicky
2022-04-09Fix warning supression for Linux/OSX, this was broken after the first round ↵Nicky
of cmake changes on Windows. -Wno-unused-but-set-variable/-Wno-unused-variable moved from just Linux to also OSX (clang) as there's a lot of those in the code where newer xcode complains. Fixing all those places is going beyond the scope of modernizing cmake.
2022-04-09Cleanup ... use the appropriate functions to set options. BeforeNicky
this everythig was over the place how it was set, worse even with wrong functions like: - add_definitions( /arch:SSE2 ) - add_definitions(/WX) Those are each options to cl, not definitons.
2022-04-06Don't bother with debug builds,, they are long deprecated.Nicky
2022-04-06Move CMake files to modernized cmake syntax, step 1.Nicky
Change projects to cmake targetsto get rid of havig to hardcore include directories and link libraries in consumer projects.
2022-02-11Spring cleaning, remove all traces of old 32 bit darwin/linux packages.Nicky
2021-12-15DRTVWR-546 merge up to 6.5.2Dave Houlton