diff options
author | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2008-05-20 21:14:36 +0200 |
---|---|---|
committer | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2008-05-20 21:14:36 +0200 |
commit | 35bde472b5455bab19157922dab06a5c2864bced (patch) | |
tree | 6ad480f8075bd74ab1fc26247e30e0b0161fb58f | |
parent | 77a00bc73b2ab8eb0924e09fe18f5b0e694949e1 (diff) | |
download | xine-lib-35bde472b5455bab19157922dab06a5c2864bced.tar.gz xine-lib-35bde472b5455bab19157922dab06a5c2864bced.tar.bz2 |
Add check for const attribute (for mathematical functions).
Add CC_ATTRIBUTE_CONST macro to the attributes.h.
Run CC_ATTRIBUTE_CONST in configure.
Define SUPPORT_ATTRIBUTE_CONST for GCC 3.
Define XINE_CONST to __attribute__((__const__)) if supported.
--HG--
extra : transplant_source : /26%26%DF%C0%3C%AC%27%5C%B7%B1y%FEQ%8Ay%EE%F1%BD
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | m4/attributes.m4 | 8 | ||||
-rw-r--r-- | src/xine-utils/attributes.h | 7 |
3 files changed, 16 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 671bd0c18..79c93f448 100644 --- a/configure.ac +++ b/configure.ac @@ -2219,6 +2219,7 @@ CC_ATTRIBUTE_DEPRECATED CC_ATTRIBUTE_UNUSED CC_ATTRIBUTE_MALLOC CC_ATTRIBUTE_PACKED +CC_ATTRIBUTE_CONST AC_OPTIMIZATIONS diff --git a/m4/attributes.m4 b/m4/attributes.m4 index fa379a2fe..f71b3d0d0 100644 --- a/m4/attributes.m4 +++ b/m4/attributes.m4 @@ -188,6 +188,14 @@ AC_DEFUN([CC_ATTRIBUTE_PACKED], [ [$2]) ]) +AC_DEFUN([CC_ATTRIBUTE_CONST], [ + CC_CHECK_ATTRIBUTE( + [const], , + [int __attribute__((const)) twopow(int n) { return 1 << n; } ], + [$1], + [$2]) +]) + AC_DEFUN([CC_FLAG_VISIBILITY], [ AC_REQUIRE([CC_CHECK_WERROR]) AC_CACHE_CHECK([if $CC supports -fvisibility=hidden], diff --git a/src/xine-utils/attributes.h b/src/xine-utils/attributes.h index 29bb9f28f..3819818d5 100644 --- a/src/xine-utils/attributes.h +++ b/src/xine-utils/attributes.h @@ -45,6 +45,7 @@ # define SUPPORT_ATTRIBUTE_FORMAT_ARG 1 # define SUPPORT_ATTRIBUTE_MALLOC 1 # define SUPPORT_ATTRIBUTE_UNUSED 1 +# define SUPPORT_ATTRIBUTE_CONST 1 # endif # if __GNUC__ >= 4 @@ -109,4 +110,10 @@ # define XINE_PACKED #endif +#ifdef SUPPORT_ATTRIBUTE_CONST +# define XINE_CONST __attribute__((__const__)) +#else +# define XINE_CONST +#endif + #endif /* ATTRIBUTE_H_ */ |