Different platforms/systems may install CMake modules into different places. For
instance, FreeBSD will install modules into ${PREFIX}/share/cmake/Modules while
Linux distributions might install into ${PREFIX}/lib/cmake.
This leaves us with a useful abstraction- consumers only need to care about
the name of their subdirectory, and only one place needs to be patched to change
where this subdirectory lands.
libepoll-shim is our implementation of this API on top of kevent. It supplies
the same headers and a library, but we don't install it in any of the default
include search paths when it comes in through ports on an as-needed basis.
This set of changes is restricted to FREEBSD-compatible OS, which includes
DragonflyBSD and FreeBSD.
DragonflyBSD was a fork of FreeBSD once upon a time. As far as FreeRDP is
concerned, DragonflyBSD is FreeBSD-compatible and DragonflyBSD in-fact uses
the FreeBSD ports tree (+ patches)
The sound and microphone redirection channels (and in part TSMF)
did not properly decouple encoding/decoding from the backends used
to play/record sound.
Encapsulating encoding/decoding in rewritten freerdp_dsp_* functions
with variable backends, simplifying alsa/oss/pulse/... audio backends.
Setting the compiler launcher to "ccache" is the recommended way of
enabling ccache for the build.
If cmake is run with it defined, it causes an error when ccache tries to
run:
ccache: error: Recursive invocation (the name of the ccache binary must be "ccache")
This was because the compiler was getting invoked as
"ccache ccache [COMPILER]"
Leverages libavcodec's hw decode support to provide VA-API based
hardware decoding. Depends on the local build of ffmpeg having hardware
VA-API support compiled in and the appropriate libva drivers and
libraries installed.
When building packages, especially when source packages are used, git is
not necessarily available or the source isn't provided in git. In those
cases it wasn't possible to set the GIT_REVISION and --version shows
"n/a" for the git revision.
If the file .source_version is available now the content of it is used
as GIT_REVISION. Packagers might want to add a .source_version file
when they don't build the packages from git.
Possible breaking change:
The variable PRODUCT_VERSION isn't available anymore. Use GIT_REVISION
instead.
CMAKE_DEPENDENT_OPTION the option is initialized on the first run and
then saved. Later configuration changes are not considered anymore.
Therefor use an variable instead of an option here.
* man pages are only build/installed if WITH_MANPAGES is enabled
* create a new cmake function install_freerdp_man to unified install man
pages
* install all man pages using the new function
* update the nightly packages accordingly
Try to use relative file paths only when building a release (build types
Release and RelWithDebInfo) with the Unix Makefile generator.
Before it was tried to do this with all generators causing multiple
problems.