Commit Graph

444 Commits

Author SHA1 Message Date
Bernhard Miklautz
3232be51b0 Use major version only for SOVERSION
For 2.0+ major will be increased if ABI/API isn't compatible anymore.
2016-01-14 10:47:57 +01:00
Martin Fleisz
f7ed7ccf4d Merge pull request #3043 from bmiklautz/prep2.0
Build system improvements and changes
2016-01-12 19:07:33 +01:00
Bernhard Miklautz
7c03db342c add parameter buildconfig
Extend winpr and client/common to support a new option "/buildconfig".
When used build the following build specific information is print:
* cmake options
* cflags
* compiler
* target architecture
* cmake build type
2016-01-12 17:32:33 +01:00
Bernhard Miklautz
6fa3608111 cleanup cmake exports and pkg-config files
With this commit the "exported" components (usable with pkg-config and
cmake find module package)
* winpr - winpr library and headers
* freerdp - core library and headers
* freerdp-client - client specific library
* freerdp-server - server specific library
* rdtk - rdtk headers and library

To allow the installation of multiple different version (different major
number) the include files were moved into the respective sub folder:
freerdp -> freerdp{MAJOR}/freerdp (currently freerdp2/freerdp/)
winpr -> winpr{MAJOR}/winpr (currently winrp1/winpr/)
rdtk -> rdpk{MAJOR}/rdtk (currently rdtk0/rdtk/

The generated pkg-config and cmake find modules now also include the major
version number. Currently the following pkg-config are generated and
installed.
* winpr1
* freerdp2
* freerdp-server2
* freerdp-client2
* rdtk0

As cmake is able to handle multiple versions out of the box the
following can be used to find a specific module:

find_package(WinPR)
find_package(FreeRDP)
find_package(FreeRDP-Server)
find_package(FreeRDP-Client)
find_package(RdTk)

As cmake doesn't automatically resolve dependencies for packages it is
necessary to manually include the requirements. For example if
FreeRDP-Client is required WinPR and FreeRDP need to be included
(find_package) as well.

This commit also fixes the installation when STATIC_CHANNELS are built.
WITH STATIC_CHANNELS all channels are linked into libfreerdp-client, for
this all channels are generated as linker archive and linked together in
the final step. Before the intermediate linker archives were, although
not required and useful, installed. Same applies for server side
channels.
2016-01-12 17:32:33 +01:00
Bernhard Miklautz
b8136a3769 build: remove FREERDP_MONOLITHIC_BUILD
FREERDP_MONOLITHIC_BUILD was obsolete for a while and unused
2016-01-12 17:32:32 +01:00
Giovanni Panozzo
601c0b8f1f Add cmake flag -DWITH_SANITIZE_ADDRESS=on to enable GCC and clang AddressSanitizer 2016-01-12 17:22:26 +01:00
Bernhard Miklautz
97edeca204 Merge pull request #2874 from akallabeth/stdtypes
Using stdint.h and stdbool.h for type definitions
2015-12-17 16:37:54 +01:00
Armin Novak
120e5e2d43 Moved header detection defines to config.h 2015-12-17 11:28:03 +01:00
Armin Novak
6ed43cd6ec Updated pdb file locations.
Now supporting generators NMake and Visual Studio.
2015-12-15 12:08:35 +01:00
Armin Novak
c8652371e7 Removed stdbool define for iOS. 2015-12-14 14:18:50 +01:00
Armin Novak
63894eb4e7 Using stdint.h and stdbool.h for type definitions
When stdint.h or stdbool.h are detected, use these
standard types for definitions in wtypes.h
2015-12-14 14:18:50 +01:00
Marc-André Moreau
2f5d159448 winpr: fix WinXP backwards compatibility 2015-11-25 13:46:10 -05:00
Hardening
be8f8f7238 Merge pull request #2970 from bmiklautz/prep_2.0
2.0 preparations
2015-11-11 12:54:34 +01:00
Bernhard Miklautz
8206ae440f Pump version to 2.0.0 2015-11-09 15:54:22 +01:00
Armin Novak
1ba4f9b67f Added WITH_CLIENT_COMMON option. 2015-11-04 09:53:13 +01:00
David FORT
9ea301983d Adds a systemd journal appender 2015-10-30 14:50:14 +01:00
David FORT
720c879661 Add a wLog syslog appender 2015-10-22 10:37:49 +02:00
Marc-André Moreau
87780a850d Merge branch 'master' of github.com:FreeRDP/FreeRDP into mbedtls 2015-10-09 15:58:50 -04:00
Marc-André Moreau
94a2f9533e winpr: start porting to non-OpenSSL 2015-10-05 16:23:44 -04:00
Marc-André Moreau
8e3baed882 cmake: add mbed TLS detection 2015-09-15 20:52:46 -04:00
Bryan Everly
bd149a284d Cleaned up previous OpenBSD change per recommendation 2015-09-14 13:20:11 -04:00
Bryan Everly
3431e8e666 Updated OpenBSD changes 2015-09-11 08:54:40 -04:00
Bryan Everly
cb533b2a04 Fixes for OpenBSD port 2015-09-10 21:31:13 -04:00
Martin Haimberger
420a86e1c7 Merge remote-tracking branch 'upstream/master' into mh-channel-fix
Conflicts:
	channels/drdynvc/client/drdynvc_main.c
	channels/rdpgfx/client/rdpgfx_main.c
	client/X11/xf_gfx.c
2015-08-25 00:07:04 -07:00
Marc-André Moreau
9400ccb4bc libfreerdp-codec: add x264 stubs 2015-07-28 16:01:34 -04:00
Bernhard Miklautz
f638ab5615 Update version to 1.4.5 2015-07-28 17:23:16 +02:00
Marc-André Moreau
ddf2519f1e Merge pull request #2719 from bmiklautz/pull/2481
OSS, tsmf, usb and BSD fixes and improvements
2015-06-26 08:27:22 -04:00
Armin Novak
e8b50eb2d0 Fixed cmake warning. 2015-06-17 13:23:21 +02:00
Armin Novak
8f68b9c261 Using vendor/product scheme for settings now. 2015-06-02 09:50:53 +02:00
ivan-83
83a40a32a7 * tsmf: OSS code cleanup
+ urbdrc: add devd support (not tested)
* fix FindUUID detection ubder BSD
* wlog: fix prev commit: build error on Windows
* cmdline: add /usb syntax help
2015-05-27 22:58:41 +03:00
Petr Sumbera
fe5ce30f92 winsock.c Solaris build fixes 2015-05-21 13:24:03 -07:00
Norbert Federa
71a4349928 fixed multiple missing gdi return value checks
mainly gdi_Create* functions
2015-05-08 21:39:23 +02:00
Marc-André Moreau
70ecd9b619 Merge pull request #2589 from baruchsiach/fix-math
Don't use unavailable C99 long double math functions
2015-05-05 10:47:03 -04:00
MartinHaimberger
9a4f645f78 Merge pull request #2582 from nfedera/fix-2015-04-28-01
Fix unchecked CreateEvent calls and misc fixes
2015-05-04 10:14:27 +02:00
Baruch Siach
414663cc36 Don't use unavailable C99 long double math functions
uClibc variants do not provide the C99 long double math functions like ceill,
powl, etc.. For future compatibility use check_symbol_exists() to check
whether these functions are available, and keep the result in
HAVE_MATH_C99_LONG_DOUBLE. Use that instead of the fragile Cygwin version
check in triodef.h.

Fixes build failures under uClibc(-ng) like:

../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `powl'
../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `fmodl'
../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `ceill'
../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `log10l'
../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `floorl'
collect2: error: ld returned 1 exit status

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
2015-05-03 21:12:30 +03:00
Norbert Federa
7edb38df84 Increase API version to 1.2.3 2015-04-30 09:20:34 +02:00
Baruch Siach
3b7d3190a1 Fix build with newer uclibc versions
uClibc master branch, as well as uclibc-ng add eventfd_{read,write}
definitions. Instead of testing for __UCLIBC__, have cmake explicitly check
for the existence of eventfd_read and save the result in
WITH_EVENTFD_READ_WRITE.

Fixes build errors like:

.../winpr/libwinpr/synch/event.c:120:12: error: static declaration of 'eventfd_read' follows non-static declaration
 static int eventfd_read(int fd, eventfd_t* value)
            ^
In file included from .../winpr/libwinpr/synch/event.c:39:0:
.../usr/include/sys/eventfd.h:37:12: note: previous declaration of 'eventfd_read' was here
 extern int eventfd_read (int __fd, eventfd_t *__value);
            ^
.../winpr/libwinpr/synch/event.c:125:12: error: static declaration of 'eventfd_write' follows non-static declaration
 static int eventfd_write(int fd, eventfd_t value)
            ^
In file included from .../winpr/libwinpr/synch/event.c:39:0:
.../usr/include/sys/eventfd.h:40:12: note: previous declaration of 'eventfd_write' was here
 extern int eventfd_write (int __fd, eventfd_t __value);
2015-04-29 20:31:25 +03:00
Bryan Everly
18b335e2f2 Added support for manpage construction for OpenBSD 2015-04-24 08:38:35 -04:00
Bryan Everly
8f19bd1825 Moved declaration of OPENBSD to higher in the file to clean some things up. Also, removed -Wredundant-decls from OpenBSD because the OpenBSD standard include files have some redundant declarations that generate a large number of compiler warnings. 2015-04-22 09:19:04 -04:00
Bernhard Miklautz
d5e7314392 Merge pull request #2564 from akallabeth/pthread_mutex_timedjoin_detection
Fixed pthread_mutex_timedjoin detection.
2015-04-22 14:42:31 +02:00
Hardening
6cd7713e12 Merge pull request #2544 from bmiklautz/boolenization
change return types of callbacks to BOOL
2015-04-22 11:01:27 +02:00
Bernhard Miklautz
159306fc7a Increase API version to 1.2.2 2015-04-22 10:23:25 +02:00
Armin Novak
5911332dfe Fixed pthread_mutex_timedjoin detection. 2015-04-22 09:32:59 +02:00
Bryan Everly
d31301f73f Modified code to use bulitin pthread functions on OpenBSD 2015-04-21 16:14:56 -04:00
Bryan Everly
8c75127a67 Necessary changes to get latest branch working on OpenBSD 5.6 2015-04-21 14:42:06 -04:00
ivan-83
434436b75f * BSD/FreeBSD build fix 2015-03-10 01:21:28 +03:00
ivan-83
fe9fab920e + add OSS support for rdpsnd 2015-03-09 09:23:29 +03:00
Bernhard Miklautz
02e6c3932b build: enable more warnings for gcc
Enable implicit-function-declaration and redundant-decls warnings when
compiling with gcc. redundant-decl useful for exported headers.
2015-03-03 19:25:42 +01:00
Armin Novak
89d97e3f2b Fixes warning D9025 with NMake 2015-02-23 16:48:07 +01:00
Petr Sumbera
8510373b04 Fixes Solaris bus error on sparc. 2015-02-05 08:46:56 -08:00
Marc-André Moreau
fa78439359 Merge pull request #2343 from kilobyte/master
Fix build failure on x32.
2015-02-04 11:32:12 -05:00
Hardening
a8c06a4306 Update version to 1.2.1
This allows code using FreeRDP to detect the presence of the skipCompression field in
surface commands.
2015-02-03 15:46:08 +01:00
Adam Borowski
15d5037df4 Fix build failure on x32.
Unlike i386, x32 can't accept -march=i686 but wants -fPIC, same as amd64
(both are x86_64 ABIs after all).  Thus, check for the __x86_64__ define
instead of pointer width.
2015-01-29 05:50:12 +01:00
Bernhard Miklautz
4eb1054927 build: Disable ALSA on OS X 2015-01-27 01:16:24 +01:00
Marc-André Moreau
496ce10637 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-15 12:37:29 -05:00
Marc-André Moreau
734b30a5fd cunit: remove deprecated unit tests 2014-11-12 14:09:53 -05:00
Bernhard Miklautz
2432816711 Update version.
Mark master as "dev" for development ;)
2014-11-12 17:14:47 +01:00
Bernhard Miklautz
a668a64488 Don't include CMakeDetermineSystem
According to [1] this is an cmake "internal" module and shouldn't be
included directly.

[1]  http://public.kitware.com/Bug/view.php?id=13796#c31892
2014-11-11 14:40:31 +01:00
Martin Fleisz
d58c6de93c Merge pull request #2134 from akallabeth/windows_version_information
Windows version information
2014-10-31 12:23:11 +01:00
Martin Fleisz
6e1e1def76 Merge pull request #2125 from akallabeth/win_build_fixes
Fixed openssl detection on windows.
2014-10-27 15:00:03 +01:00
Manuel Bachmann
d48adecd6c wlfreerdp: initial Wayland client
Implement an initial Wayland client, which will build if
the wayland-client development libraries are detected
(or if -DWITH_WAYLAND:BOOL=ON is set). It is currently
view-only, but inputs will be implemented soon.

It uses the software SHM interface, which means it does not
require GL acceleration to run. It should be compatible
with any compositor

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-10-13 12:23:23 +02:00
Armin Novak
4064553818 Initializing BUILD_NUMBER variable now. 2014-10-09 16:16:47 +02:00
Armin Novak
8f74e90807 Fixed git TAG matching, falling back to short hash if no tag exists.
Setting windows version patch level to build number now.
Setting windows version description to GIT_REVISION.
2014-10-09 16:14:24 +02:00
Armin Novak
5364a834c4 Added windows version information to build. 2014-10-03 15:17:40 +02:00
Marc-André Moreau
abd87ace55 rdtk: initial commit 2014-09-29 16:08:08 -04:00
Armin Novak
43d8f34e81 Fixed openssl detection on windows. 2014-09-26 11:16:04 +02:00
Bernhard Miklautz
0313ca3622 libfreerdp: always build "MONOLITHIC"
"libfreerdp" consisted of multiple (small) single libraries. If the cmake
option MONOLITHIC was used only one library was build combining all of
the libfreerdp-* libraries.
The only exceptions to this are libfreerdp-server and libfreerdp-client these
are build as separate libraries.

This commit obsoltes non-monolithic builds and makes monolithic builds
the default. The cmake option MONOLITHIC is also removed.
2014-09-12 00:19:53 +02:00
Armin Novak
494ca1f1a3 Added winpr functions to generate a stacktrace.
Added libcorkscrew headers for stacktrace on android.
Added execinfo.h detection for stacktrace on linux.
2014-08-14 10:36:50 +02:00
Mike Gilbert
ae1fdf6153 Remove execute bit from many files 2014-07-20 00:52:35 -04:00
Marc-André Moreau
e6f4754ed3 winpr: improve windows builds across visual studio versions and toolsets 2014-07-17 15:11:04 -04:00
Armin Novak
f05e872009 Now usin ON/OFF to set library versioning. 2014-07-11 13:07:36 +02:00
Armin Novak
ad3255354d Added WITH_LIBRARY_VERSIONING, allowing to build shared libraries without
SOVERSION information. (required by Android)
2014-07-11 11:53:58 +02:00
Bernhard Miklautz
6a49bcfe40 winpr: always build "monolitic"
winpr is now always build as single library.
The build option MONOLITHIC_BUILD doesn't influence this behavior anymore.

The only exception is winpr-makecert-tool which is still build as extra
library.

This obsoletes complex_libraries for winpr.
2014-07-10 11:10:58 +02:00
Marc-André Moreau
c16000e67b Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx 2014-07-08 12:29:30 -04:00
Hardening
542811291c Use poll() instead of select() when available
select() has the major drawback that it cannot handle file descriptor
that are bigger than 1024. This patch makes use of poll() instead of
select() when poll() support is available.
2014-07-03 15:26:49 +02:00
Mike McDonald
4d3d78c487 Initial implementation of H.264 decoder for MS-RDPEGFX 2014-07-01 23:28:09 -04:00
Armin Novak
7db8144fbf Fixed git_describe search path. 2014-06-23 13:45:04 +02:00
Armin Novak
02649e7322 Added cmake magic to allow selection of gstreamer 1.0 or 0.10 2014-05-24 18:21:40 +02:00
Marc-André Moreau
4bac8374de Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-21 11:17:58 -04:00
Hardening
86489f1c9a Merge pull request #1629 from bmiklautz/update_pull_1609
Android jpeg build enhancement
2014-05-20 22:10:17 +02:00
Marc-André Moreau
37b0d634ed freerdp: fix C++ flags for FREERDP_EXPORTS, WINPR_EXPORTS 2014-05-12 19:09:00 -04:00
Hardening
729c24cedb Adds some support for valgrind helpers
This patch adds an option to compile freerdp in a valgrind compliant way.
The purpose is to ease memchecking when connecting with TLS. We mark bytes
retrieved from SSL_read() as plainly defined to prevent the undefined contamination.
With the patch and the option activated you get a single warning at connection
during the handshake, and nothing after.
2014-05-12 18:01:29 +02:00
Marc-André Moreau
bbc9fc4393 freerdp: add more vendor options 2014-05-09 12:25:05 -04:00
Bernhard Miklautz
2891c8b445 build: define -D__FILE__ only for Release builds 2014-04-30 12:11:28 +02:00
Bernhard Miklautz
3423ab5b3b build: check c++ compliler flags seperately
Flags for C and C++ compiler need to be checked seperately since
the c and c++ compiler might not support the same flags (even if
they are the same version).
2014-04-30 12:05:51 +02:00
Marc-André Moreau
5db851a154 libwinpr-smartcard: update PCSC-WinPR instructions (WIP) 2014-04-27 17:38:45 -04:00
Marc-André Moreau
e0bcc275cc cmake: only use __FILE__ relative path hack in release flags 2014-04-26 14:14:19 -04:00
Marc-André Moreau
769502ec72 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-04-26 13:47:01 -04:00
Bernhard Miklautz
dee9188191 update and improve pkg-config files
* generate pkg-config files top level to make sure all
  exports are available (eg. client/server)
* .pc libs section is now generated from export libraries
* update .pc file to use .private fields (prevent overlinking)
2014-04-23 13:12:23 +02:00
Marc-André Moreau
784e9abd79 cmake: improve __FILE__ relative path hack 2014-04-21 14:42:24 -04:00
Philippe Coval
677ea5971d fix: build error while running client/X11/generate_argument_docbook
Author: Viacheslav Dubrovsk <dubrsl@altlinux.org>
Bug: https://github.com/FreeRDP/FreeRDP/issues/1481
Signed-off-by: Philippe Coval <philippe.coval@open.eurogiciel.org>
2014-04-16 11:11:24 +02:00
Marc-André Moreau
3a428b87df libwinpr-smartcard: add option to build statically against specialized pcsclite build 2014-04-08 01:26:28 -04:00
Marc-André Moreau
046a33ba9f cmake: fix debug symbols for C++ code 2014-03-31 13:10:57 -04:00
Marc-André Moreau
ac1d819608 cmake: added GCC hack to strip absolute path out of the __FILE__ macro 2014-03-12 13:55:38 -04:00
Marc-André Moreau
f4140abd2c cmake: remove unused FindNPP.cmake 2014-02-12 11:51:57 -05:00
Marc-André Moreau
39e64c5808 wfreerdp: fix monolithic static build 2014-02-10 21:07:05 -05:00
Marc-André Moreau
d64f86d52c wfreerdp: fix 64-bit build 2014-02-10 00:34:17 -05:00
Marc-André Moreau
17665378a9 wfreerdp: fix target exporting 2014-02-02 22:37:54 -05:00
Benoît LeBlanc
2e0c4c964c Merge branch 'master' of git://github.com/awakecoding/FreeRDP 2013-12-09 16:00:29 -05:00
Hardening
f60a1e59f1 Update version number for master 2013-12-09 15:56:13 +01:00