Commit Graph

586 Commits

Author SHA1 Message Date
Kimon Hoffmann
8ec4d20616 [cmake] Locate PkgConfig module with find_package() instead of include(FindPkgConfig)
This is the contemporary way of including find modules and including the
find module this way avoids cmake errors in conjunction with
find_package_handle_standard_args().

Signed-off-by: Kimon Hoffmann <Kimon.Hoffmann@lawo.com>
2023-08-21 12:43:56 +02:00
Marc-André Moreau
c691ef9c8d allow selecting smartcard emulator at runtime rather than link time 2023-08-21 12:00:17 +02:00
akallabeth
fee2b10ba1 change version to 3.0.0-dev3 2023-08-04 12:59:11 +02:00
Armin Novak
d3e428c51f change version to 3.0.0-beta2 2023-08-04 12:59:11 +02:00
akallabeth
8470b6ea26 [cmake] set default build type
set with CACHE STRING FORCE to properly be picked up by configuration
tools
2023-08-04 12:59:11 +02:00
Armin Novak
6bbf1e56cf [build] define _CRT_NONSTDC_NO_DEPRECATE with MSVC
disable the deprecation warnings for POSIX function names
2023-07-28 13:42:12 +02:00
Armin Novak
4f0ca73be6 [cmake] set MSVC runtime for SDL client 2023-07-26 16:19:07 +02:00
akallabeth
5de7887d93 start new development cycle after 3.0.0-beta1 release 2023-07-21 16:04:49 +02:00
Armin Novak
f08d59ca5f update version to 3.0.0-beta1 2023-07-21 16:04:35 +02:00
akallabeth
a9aba69567 [client,common] fix missing link of CJSON 2023-07-20 14:20:28 +02:00
akallabeth
734117351d [aad,avc] unify callbacks to GetAccessToken
The AAD and AVD authentication mechanisms both need an OAuth2 token.
They only differ in the provided arguments, so unify the callbacks into
a single one with variable argument lists.
2023-07-20 14:20:28 +02:00
fifthdegree
d309fcd6e8 Restructure Azure AD related stuff
- Move responsibility for obtaining access tokens to clients
- Add function for getting access tokens for AVD
- Get correct server hostname during AVD setup
- Add utility function for doing http requests
2023-07-20 14:20:28 +02:00
Armin Novak
1b7b597f02 [cmake] add option to enable/disable building X11 2023-06-05 14:15:03 +02:00
Sergey Bronnikov
1c0c804981 [cmake] Introduce a target for building fuzzing tests
Part of #5063
2023-06-05 11:28:48 +02:00
Armin Novak
3e44efc841 [cmake] use FindX11 from CMake 3.13 2023-05-31 11:05:56 +02:00
akallabeth
f941a1ec8e [cmake] unify RPATH settings and client deps detection 2023-05-26 11:38:32 +02:00
Armin Novak
9d5d803730 [cmake] use option instad of set 2023-05-23 06:04:55 +02:00
akallabeth
05edcbc357 [cmake] fix version from git tag
only consider tags that conform to the format  'somestring1.2.3' as
valid tags
2023-05-02 09:34:07 +02:00
Bernhard Miklautz
ddc9e5835f new: export plugin paths in pkg-config and cmake package
To simplify building external channels and other plugins related
paths are now exported in the pkg-config file and the cmake package.
The paths can be used to install channels/plugins/extensions in
the configured search paths.

For pkg-config the following variables are now available:
* datadir
* plugindir
* proxy_plugindir
* extensiondir

They can be queried like: `pkg-config freerdp3 --variable plugindir`

The cmake package has three new variables that can be used:
* FreeRDP_PLUGIN_DIR
* FreeRDP_PROXY_PLUGIN_DIR
* FreeRDP_EXTENSION_DIR

Note: Depending on the build the directories are not necessarily created.
2023-04-24 11:19:01 +02:00
Marc-André Moreau
b34bad2b50 fix and improve cJSON detection 2023-03-11 08:20:10 +01:00
akallabeth
b4e9c8b39f [build] removed complex libraries
* remove obsolete complex libraries helper
* fix static linking
2023-03-01 08:18:34 +01:00
Armin Novak
f0e9797b4c [build] require CMake >= 3.13
required for target_link_options
2023-02-27 11:18:02 +01:00
akallabeth
82ba9ede9c [freerdp] use FREERDP_/UWAC_/RDTK_ prefix for conditional headers 2023-01-10 17:38:00 +01:00
Armin Novak
3f63365652 [build] make LTO a configuration option 2022-12-14 16:09:46 +01:00
akallabeth
03d4f6a322 [build] make OpenSSL and mbedtls mutually exclusive 2022-12-09 14:55:20 +01:00
Armin Novak
73d5f37537 [build] move krb5 detection to winpr
only used internally in winpr, no need for project wide configuration
2022-12-09 12:36:12 +01:00
Armin Novak
615f2eb60f [build] fixed kerberos settings 2022-12-09 12:36:12 +01:00
fifthdegree
ad87144ce5 Rename WITH_GSSAPI to WITH_KRB5
Change cmake variables to not be gssapi specific
2022-12-09 12:36:12 +01:00
Armin Novak
f721be5023 Fix #8483: typo in CMake variable name 2022-12-03 00:13:51 +01:00
akallabeth
f7850f08aa Added option WITH_FREERDP_DEPRECATED_COMMANDLINE_COMMANDLINE
This allows building deprecated command line options without adding
deprecated functions to the build.
2022-10-27 10:13:57 +02:00
akallabeth
d2ab631c40
Test uri fix (#8232)
* Fixed TestUri unit test

* Make proper unit test out of the test function
* Add proper test cases

* Replace FindFirstFileA with FindFirstFileW for addins

This allows addin paths to contain unicode symbols.

* Fixed parse_uri_to_local_file definition

* Move to common clipboard.c file
* Move to header file so it can be included in test case

* Added WINPR_LOCAL for test builds

This macro exports internal functions in case of a unit test build
This way unit tests can access these without other workarounds.

* Fixed typo in function name is_dos_driver

* Cleaned up FindFirstFileW call

Use a wrapper function to convert to unicode and call the function

* Cleaned up BUILD_TESTING and EXPORT_ALL_SYMBOLS

* EXPORT_ALL_SYMBOLS now does as the name implies and exports all
  non static functions/variables from the library.
* BUILD_TESTING now only sets the defines for test code and
  activates EXPORT_ALL_SYMBOLS to allow tests to access internal
  code

* Fixed windows client warnings

* disable CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
2022-09-26 11:22:02 +02:00
Armin Novak
ee6317081b Improve string version extraction regex
Allow (git) tags of format 'some-important-text_v1.2.3-something_else'
Any character is now allowed, as long as there is a version of format
1.2.3 somewhere in the tag name.
2022-09-20 13:25:44 +02:00
Armin Novak
cb5992f244 Fix #8186: AVCodec split version defines in two files... 2022-09-13 12:47:13 +02:00
akallabeth
bf56a39e6f
Fixed #8090: Duplicate definition of strndup (#8102)
* Fixed #8090: Duplicate definition of strndup

* Moved strndup detection to winpr

Co-authored-by: Armin Novak <anovak@thincast.com>
2022-08-02 09:15:38 +02:00
akallabeth
c71cc672f9 Decouple ffmpeg video encoder/decoder support from WITH_FFMPEG
It may be diesirable to only use FFMPEG for audio. Allow disabling
video decoding by introducing a new variable responsible for that.
2022-07-05 18:17:28 +02:00
akallabeth
1aacf504a1 Increase C standard to C11 2022-06-03 08:51:40 +02:00
akallabeth
a0ca2b4a6e Add LTO settings 2022-06-03 08:51:40 +02:00
akallabeth
c716304cf8 Only build RFX neon path with -DWITH_NEON=ON 2022-05-04 09:28:29 +02:00
akallabeth
860f44f762 CMake check_include and struct cleanup
Move to WinPR what should be there.
2022-04-29 14:27:44 +02:00
Armin Novak
a2a81f1f27 Fixed buildconfig.h generation 2022-04-20 15:24:45 +02:00
Bernhard Miklautz
58d9fc5f5b new: add some basic documentation about version dectction 2022-03-07 13:39:49 +01:00
akallabeth
76ed796209 Respect USE_VERSION_FROM_GIT_TAG 2022-03-07 13:39:49 +01:00
Armin Novak
4d03d7c0bf Freerdp remove #ifdef HAVE_CONFIG_H 2022-03-03 11:26:48 +01:00
Armin Novak
b2ad47a809 Reorganized FreeRDP headers 2022-03-03 11:26:48 +01:00
Armin Novak
cb27338bf4 Set required C standard to C99 with extensions 2022-02-24 12:31:58 +01:00
David Fort
0435b5a65d Implement smartcard logon 2022-02-24 08:52:25 +01:00
Armin Novak
fd027d1bf0 Removed BUILTIN_CHANNELS
Building client channels out of tree does not work reliable as the
dependencies can not be easily split. (exceptions may be simple ones
as echo channel)
It does complicate the build system and code though, so remove this
for maintainability reasons.
2022-02-23 10:43:46 +01:00
Armin Novak
0801ab21ed Fixed windows CMAKE_DL_LIBS content for mingw builds 2022-02-18 08:38:28 +01:00
akallabeth
2d2627deab
Fixed SSPI fallback to NTLM (#7642)
* Fixed SSPI fallback to NTLM

* Fixed wide/ansi mixup

* WITH_GSS fixes

* Move to WinPR as this is not related to FreeRDP
* Add option WITH_GSS_NO_NTLM_FALLBACK to disable NTLM fallback

* Abort NLA if status is SEC_E_NO_CREDENTIALS

* Properly invalidate sspi::SubContext
2022-02-15 09:04:17 +01:00
Ely Ronnen
52202762e8 adding mediacodec h264 implementation using NDK 2022-01-26 10:24:26 +01:00