diff options
Diffstat (limited to 'package/freerdp/0003-dont-use-unavailable-c99-math.patch')
-rw-r--r-- | package/freerdp/0003-dont-use-unavailable-c99-math.patch | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/package/freerdp/0003-dont-use-unavailable-c99-math.patch b/package/freerdp/0003-dont-use-unavailable-c99-math.patch deleted file mode 100644 index 1e23c0d0b6..0000000000 --- a/package/freerdp/0003-dont-use-unavailable-c99-math.patch +++ /dev/null @@ -1,95 +0,0 @@ -From c0d27019745184052bd428ba74a50de96053cea1 Mon Sep 17 00:00:00 2001 -From: Baruch Siach <baruch@tkos.co.il> -Date: Sun, 3 May 2015 20:46:22 +0300 -Subject: [PATCH] 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 - -Backported from upstream commit -https://github.com/FreeRDP/FreeRDP/commit/414663cc363108cb71a290de1c86a1b04384fb39 - -Signed-off-by: Baruch Siach <baruch@tkos.co.il> ---- - CMakeLists.txt | 3 +++ - config.h.in | 1 + - winpr/libwinpr/utils/trio/triodef.h | 25 ++++++------------------- - 3 files changed, 10 insertions(+), 19 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5b7887601aa0..177e44cfff10 100755 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -279,6 +279,9 @@ if(UNIX OR CYGWIN) - if (HAVE_EVENTFD_H) - check_symbol_exists(eventfd_read sys/eventfd.h WITH_EVENTFD_READ_WRITE) - endif() -+ list(APPEND CMAKE_REQUIRED_LIBRARIES m) -+ check_symbol_exists(ceill math.h HAVE_MATH_C99_LONG_DOUBLE) -+ list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES m) - set(X11_FEATURE_TYPE "RECOMMENDED") - else() - set(X11_FEATURE_TYPE "DISABLED") -diff --git a/config.h.in b/config.h.in -index 55c595d0e162..983310d5b9e6 100755 ---- a/config.h.in -+++ b/config.h.in -@@ -34,6 +34,7 @@ - #cmakedefine WITH_WIN8 - #cmakedefine WITH_RDPSND_DSOUND - #cmakedefine WITH_EVENTFD_READ_WRITE -+#cmakedefine HAVE_MATH_C99_LONG_DOUBLE - - /* Plugins */ - #cmakedefine STATIC_CHANNELS -diff --git a/winpr/libwinpr/utils/trio/triodef.h b/winpr/libwinpr/utils/trio/triodef.h -index 11c14b9c42c7..2a0479526f33 100644 ---- a/winpr/libwinpr/utils/trio/triodef.h -+++ b/winpr/libwinpr/utils/trio/triodef.h -@@ -313,25 +313,12 @@ typedef void * trio_pointer_t; - # define TRIO_COMPILER_SUPPORTS_LL - #endif - --#if defined(__CYGWIN__) --/* -- * Cygwin defines the macros for hosted C99, but does not support certain -- * long double math functions. -- */ --# include <cygwin/version.h> --# define TRIO_CYGWIN_VERSION_API CYGWIN_VERSION_API_MAJOR * 1000 + \ -- CYGWIN_VERSION_API_MINOR --/* -- * Please change the version number below when the Cygwin API supports -- * long double math functions (powl, fmodl, etc.) -- */ --# if TRIO_CYGWIN_VERSION_API < 99999999 --# define TRIO_NO_FLOORL 1 --# define TRIO_NO_CEILL 1 --# define TRIO_NO_POWL 1 --# define TRIO_NO_FMODL 1 --# define TRIO_NO_LOG10L 1 --# endif -+#if !defined(HAVE_MATH_C99_LONG_DOUBLE) -+# define TRIO_NO_FLOORL 1 -+# define TRIO_NO_CEILL 1 -+# define TRIO_NO_POWL 1 -+# define TRIO_NO_FMODL 1 -+# define TRIO_NO_LOG10L 1 - #endif - - #endif /* TRIO_TRIODEF_H */ --- -2.1.4 - |