build: guess availability of monotonic clock for cross compilation
When cross compiling, the value of MONOTONIC_CLOCK would be "cross compiling", because AC_RUN_IFELSE doesn't work. However when enabling wayland, a monotonic clock is required and configure aborts. We change detection of CLOCK_MONOTONIC to degrade it gracefully from a run check to a declaration check in case of cross compilation based on the assumption that most systems will have a monotonic clock and those that don't won't be able to run Xwayland anyway. The trade-off essentially is either "always fail cross compilation" or "produce an unusable Xwayland for unusual platform" and this commit switches to the latter. Signed-off-by: Helmut Grohne <helmut@subdivi.de> Bug-Debian: https://bugs.debian.org/882531 Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
		
							parent
							
								
									a309323328
								
							
						
					
					
						commit
						c601c8faf5
					
				|  | @ -997,6 +997,10 @@ int main(int argc, char *argv[[]]) { | ||||||
|     ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no], |     ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no], | ||||||
|        [MONOTONIC_CLOCK="cross compiling"]) |        [MONOTONIC_CLOCK="cross compiling"]) | ||||||
| 
 | 
 | ||||||
|  |     if test "$MONOTONIC_CLOCK" = "cross compiling"; then | ||||||
|  |         AC_CHECK_DECL([CLOCK_MONOTONIC],[MONOTONIC_CLOCK="guessing yes"],[MONOTONIC_CLOCK=no],[#include <time.h>]) | ||||||
|  |     fi | ||||||
|  | 
 | ||||||
|     LIBS="$LIBS_SAVE" |     LIBS="$LIBS_SAVE" | ||||||
|     CPPFLAGS="$CPPFLAGS_SAVE" |     CPPFLAGS="$CPPFLAGS_SAVE" | ||||||
| else | else | ||||||
|  | @ -1004,6 +1008,9 @@ else | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| AC_MSG_RESULT([$MONOTONIC_CLOCK]) | AC_MSG_RESULT([$MONOTONIC_CLOCK]) | ||||||
|  | if test "$MONOTONIC_CLOCK" = "guessing yes"; then | ||||||
|  | 	MONOTONIC_CLOCK=yes | ||||||
|  | fi | ||||||
| 
 | 
 | ||||||
| if test "x$MONOTONIC_CLOCK" = xyes; then | if test "x$MONOTONIC_CLOCK" = xyes; then | ||||||
|     AC_DEFINE(MONOTONIC_CLOCK, 1, [Have monotonic clock from clock_gettime()]) |     AC_DEFINE(MONOTONIC_CLOCK, 1, [Have monotonic clock from clock_gettime()]) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue