aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
Commit message (Collapse)AuthorAgeFilesLines
* Avoid .la files getting removed on "make clean"Pierre Ossman2024-10-291-2/+4
| | | | | | | | | | | | These are generated during the cmake stage, but cmake thinks they are generated during the build stage because of our rule to update the timestamp on them. As a result, it thinks they should be removed when doing "make clean". There doesn't seems to be an easy way to tell cmake to leave these alone. So instead, point cmake to a different marker file when updating the timestamps. We don't care if that gets removed as it has no valuable contents.
* Don't link gcrypt for static GnuTLSPierre Ossman2024-03-151-5/+0
| | | | | | GnuTLS seems to have dropped grypt support ages ago, so let's not confuse things by assuming it might be needed when linking GnuTLS statically.
* Move where -nodefaultlibs is specifiedPierre Ossman2023-06-281-4/+3
| | | | | | | The previous method isn't compatible with CMake's try_compile() as it will respect CMAKE_EXE_LINKER_FLAGS, but not CMAKE_C_LINK_EXECUTABLE and friends. This results in the default libraries being completely missing, and the compile test failing.
* Handle REQUIRED in our CMake "find" modulesPierre Ossman2023-04-174-0/+17
| | | | | These are expected to abort if they fail to find the relevant software and "REQUIRED" is specified.
* Create .la files at the end of the cmake runPierre Ossman2023-01-101-11/+32
| | | | | We might not have all the necessary information, e.g. all targets might not exist yet, until we're done going through all CMakeLists.
* Bail on missing librariesPierre Ossman2023-01-101-2/+2
| | | | They may be crucial, so refuse to continue if this happens.
* Fall back to dynamic libraries in .la filesPierre Ossman2023-01-101-3/+7
| | | | | This is what the linker does, so we should do the same for correct behaviour.
* Respect library search pathsPierre Ossman2023-01-101-1/+7
| | | | | Things might be in odd places, so make sure we respect where we're told to look for libraries.
* Include other targets in .la filesPierre Ossman2023-01-101-2/+5
| | | | | | We have internal dependencies that should be respected, as otherwise it will be up to the user of the .la file to figure out the correct order of the libraries.
* Handle alternative library suffixesPierre Ossman2023-01-101-1/+9
| | | | | I think this only affects macOS at the moment where they also have .tbd files for linking.
* Make sure frameworks are included in .la filesPierre Ossman2023-01-101-1/+9
| | | | | We don't really use the .la files for macOS at the moment, but let's try to be prepared.
* Remove unnecessary regexp \\Pierre Ossman2023-01-101-3/+3
| | | | | This serves no useful purpose as we have no reason to suspect there will be a dangerous first character in these variables.
* Fix static library check regexpPierre Ossman2023-01-101-1/+1
| | | | | Not sure how the old one ever worked as it incorrectly just tried to match last character and nothing else.
* Get target libraries from INTERFACE_LINK_LIBRARIESPierre Ossman2023-01-101-4/+6
| | | | | <target>_LIB_DEPENDS is an internal variable that contains lots of other weird stuff.
* Use correct FATAL_ERROR CMake optionPierre Ossman2023-01-101-1/+1
|
* Add fallback for finding gmpPierre Ossman2022-09-011-1/+5
| | | | | pkg-config support was added very recently to gmp, so a lot of platforms we want to support won't find gmp this way.
* Split gmp detection to separate modulePierre Ossman2022-09-012-4/+10
| | | | | It is a (weird) dependency of nettle, and not part of nettle itself. So split it to a separate module for clarity.
* Add support for RSA-AES security typespdlan2022-09-012-0/+26
|
* Find FFMPEG using pkg-configPierre Ossman2022-06-071-0/+17
| | | | | | This is the standard method of finding it on Unix systems, so make sure we use it. Still keep a fallback, though, for other systems, e.g. Windows.
* Use pkg-config for pixmanPierre Ossman2022-06-072-40/+9
| | | | | | This is the standard method of finding it on Unix systems, so make sure we use it. Still keep a fallback, though, for other systems, e.g. Windows.
* Add target_link_directory() compat functionPierre Ossman2022-06-071-0/+12
| | | | | | We need this function to deal with pkgconfig files properly, but unfortunately it doesn't exist until CMake 3.13, and we need to support CMake 3.10. So add a hacky compatibility function for older systems.
* Allow building with -DBUILD_VIEWER=OFFAlex Richardson2021-07-151-1/+1
| | | | | Without this change I get CMake errors due to use of ${FLTK_INCLUDE_DIR} and references to the non-existent vncviewer target.
* Fix bad library references for some static depsPierre Ossman2020-12-071-2/+2
|
* Add comment why unistring is linked dynamicallyPierre Ossman2020-12-071-0/+2
|
* Merge branch 'master' of https://github.com/mriphysicist/tigervncPierre Ossman2020-12-071-2/+47
|\
| * Update build system so it will compile on Windows 10.Danny Park2020-08-181-2/+47
| | | | | | | | | | | | With this commit, TigerVNC will compile for Windows using MSYS2, MinGW-w64 and Inno Setup 6. The resulting binaries have some dll dependencies (even with BUILD_STATIC). The required dll dependencies are not included in the installer. Unfortunately, the latest version of MSYS2 and MinGW-w64 do not produce a working executable for Windows 7.
* | Test packaging on TravisPierre Ossman2020-07-161-90/+0
|/ | | | Don't just build things, also test the various packaging.
* Merge branch 'regions' of https://github.com/CendioOssman/tigervncPierre Ossman2020-06-152-0/+41
|\
| * Switch region code to pixmanPierre Ossman2020-05-012-0/+41
| | | | | | | | | | This is the current upstream so let's make use of it to get the latest in features and fixes.
| * Also link in math library in static buildPierre Ossman2020-05-011-1/+1
| | | | | | | | | | It's included by default in dynamic builds so we need to make sure it isn't lost when switching to static.
* | Implement touch gesture handling on UnixAaron Sowry2020-05-291-2/+2
| | | | | | | | | | Allows the user to perform certain important mouse operations using touch gestures instead.
* | Implement X Input pointer handling for UnixAaron Sowry2020-05-291-0/+3
|/ | | | | | | | Switch from using Core events to using X Input events for pointer devices in order to differentiate between mouse events and touch events. Because FLTK doesn't understand X Input 2, we intercept these events and translate them to core events where possible.
* Use standard install dir variable namesPierre Ossman2020-03-121-2/+2
| | | | | This makes our builds directly compatible with most distributions without packagers/users having to specify extra flags.
* Fix C linking when doing static buildsPierre Ossman2020-03-121-2/+3
|
* Include Carbon when statically linking gettext on macOSPierre Ossman2020-01-301-0/+3
| | | | | As gettext needs some stuff from Carbon and we don't want to rely on it being pulled in as a side effect.
* Fix link order of nettle and hogweedPierre Ossman2019-12-091-1/+1
| | | | | Hogweed needs nettle, not the other way around. So make sure they are specified in the correct order for the static link to succeed.
* Include libuuid in static buildsPierre Ossman2019-01-091-1/+1
| | | | Modern fontconfig needs it, so make sure it is included.
* Link zlib statically on all platformsPeter Åstrand (astrand)2018-09-191-4/+1
| | | | | The API and ABI isn't as stable as we need, so it isn't safe to link it dynamically even on Linux.
* Add RandR support for x0vncserverPeter Åstrand (astrand)2018-04-091-0/+3
| | | | | | | | Change Xserver screen through libXrandr. For complex configurations, all outputs must have corresponding size modes. As a special case, if the client requests a single screen with an odd size (for example when adjusting the size of a non-fullscreen vncviewer), find a smaller suitable mode, and reduce the framebuffer size as well.
* Rename README.txt to README.rst and convert to reStructuredTextPeter Åstrand (astrand)2018-01-311-1/+1
|
* Improve test if library is a CMake targetPierre Ossman2017-10-061-2/+1
| | | | | Newer CMake complains when you try to get the property of something that isn't a target so use the specific if operator instead.
* Avoid getting LOCATION propertyPierre Ossman2017-10-061-3/+2
| | | | | It's not supported in newer CMake, so try to deduce the library filename from the target name.
* Add libpng as a dependency for freetype for static buildsPierre Ossman2017-08-241-1/+1
| | | | Newer versions of Freetype requires libpng as well.
* spelling fixesklemens2017-01-281-1/+1
|
* Update .la files on each buildPierre Ossman2016-12-151-0/+4
| | | | | This makes sure other build systems trigger properly, e.g. when building Xvnc.
* Add option to enable thread sanitizerPierre Ossman2015-11-271-0/+7
|
* Allow static linking against only the GCC libsDRC2015-10-271-1/+7
|
* Add address sanitizer switchPierre Ossman2015-09-291-0/+3
| | | | | | Useful for debugging memory leaks and access violations. It is not available on Windows though, and there is some problem compiling ObjectiveC++ with it turned on.
* Set libdir in generated .la filesPierre Ossman2015-04-301-1/+1
| | | | | | | This is needed in order to get libtool to treat them as normal libraries and not "convenience libraries". The latter are linked with --whole-archive, which pulls a lot of unnecessary stuff into Xvnc and libvnc.so.
* Merge branch 'upreqs' of https://github.com/CendioOssman/tigervncPierre Ossman2015-03-121-1/+1
|\ | | | | | | | | | | Conflicts: contrib/packages/rpm/el5/SPECS/tigervnc.spec vncviewer/Viewport.cxx