mirror of
				https://gitlab.freedesktop.org/wayland/wayland.git
				synced 2025-10-29 05:40:16 -04:00 
			
		
		
		
	 baed4b0a2f
			
		
	
	
		baed4b0a2f
		
	
	
	
	
		
			
			Master is open for new features again Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
		
			
				
	
	
		
			172 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			172 lines
		
	
	
	
		
			5.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| AC_PREREQ([2.64])
 | |
| 
 | |
| m4_define([wayland_major_version], [1])
 | |
| m4_define([wayland_minor_version], [8])
 | |
| m4_define([wayland_micro_version],  [90])
 | |
| m4_define([wayland_version],
 | |
|           [wayland_major_version.wayland_minor_version.wayland_micro_version])
 | |
| 
 | |
| AC_INIT([wayland],
 | |
|         [wayland_version],
 | |
|         [https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=wayland&version=wayland_version],
 | |
|         [wayland],
 | |
|         [http://wayland.freedesktop.org/])
 | |
| 
 | |
| AC_SUBST([WAYLAND_VERSION_MAJOR], [wayland_major_version])
 | |
| AC_SUBST([WAYLAND_VERSION_MINOR], [wayland_minor_version])
 | |
| AC_SUBST([WAYLAND_VERSION_MICRO], [wayland_micro_version])
 | |
| AC_SUBST([WAYLAND_VERSION], [wayland_version])
 | |
| 
 | |
| AC_CONFIG_HEADERS([config.h])
 | |
| AC_CONFIG_MACRO_DIR([m4])
 | |
| 
 | |
| AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz subdir-objects])
 | |
| 
 | |
| AM_SILENT_RULES([yes])
 | |
| 
 | |
| # Check for programs
 | |
| AC_PROG_CC
 | |
| AC_PROG_CXX
 | |
| AC_PROG_GREP
 | |
| 
 | |
| # check if we have C++ compiler. This is hacky workaround,
 | |
| # for a reason why it is this way see
 | |
| # http://lists.gnu.org/archive/html/bug-autoconf/2010-05/msg00001.html
 | |
| have_cpp_compiler=yes
 | |
| 
 | |
| if ! which "$CXX" &>/dev/null; then
 | |
| 	have_cpp_compiler=no
 | |
| fi
 | |
| 
 | |
| AM_CONDITIONAL(ENABLE_CPP_TEST, test "x$have_cpp_compiler" = "xyes")
 | |
| 
 | |
| # Initialize libtool
 | |
| LT_PREREQ([2.2])
 | |
| LT_INIT
 | |
| 
 | |
| PKG_PROG_PKG_CONFIG()
 | |
| PKG_CHECK_MODULES(FFI, [libffi])
 | |
| 
 | |
| if test "x$GCC" = "xyes"; then
 | |
| 	GCC_CFLAGS="-Wall -Wextra -Wno-unused-parameter -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden"
 | |
| fi
 | |
| AC_SUBST(GCC_CFLAGS)
 | |
| 
 | |
| AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate])
 | |
| 
 | |
| AC_CHECK_DECL(SFD_CLOEXEC,[],
 | |
| 	      [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland")],
 | |
| 	      [[#include <sys/signalfd.h>]])
 | |
| AC_CHECK_DECL(TFD_CLOEXEC,[],
 | |
| 	      [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland")],
 | |
| 	      [[#include <sys/timerfd.h>]])
 | |
| AC_CHECK_DECL(CLOCK_MONOTONIC,[],
 | |
| 	      [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland")],
 | |
| 	      [[#include <time.h>]])
 | |
| AC_CHECK_HEADERS([execinfo.h])
 | |
| 
 | |
| AC_ARG_ENABLE([scanner],
 | |
|               [AC_HELP_STRING([--disable-scanner],
 | |
|                               [Disable compilation of wayland-scanner])],
 | |
|               [],
 | |
|               [enable_scanner=yes])
 | |
| 
 | |
| AC_ARG_ENABLE([documentation],
 | |
| 	      [AC_HELP_STRING([--disable-documentation],
 | |
| 		              [Disable building the documentation])],
 | |
| 	      [],
 | |
| 	      [enable_documentation=yes])
 | |
| 
 | |
| AM_CONDITIONAL(ENABLE_SCANNER, test "x$enable_scanner" = xyes)
 | |
| 
 | |
| AC_ARG_WITH(icondir, [  --with-icondir=<dir>    Look for cursor icons here],
 | |
| 		     [  ICONDIR=$withval],
 | |
| 		     [  ICONDIR=${datadir}/icons])
 | |
| AC_SUBST([ICONDIR])
 | |
| 
 | |
| if test "x$enable_scanner" = "xyes"; then
 | |
| 	PKG_CHECK_MODULES(EXPAT, [expat], [],
 | |
| 		[AC_CHECK_HEADERS(expat.h, [],
 | |
| 			[AC_MSG_ERROR([Can't find expat.h. Please install expat.])])
 | |
| 		 SAVE_LIBS="$LIBS"
 | |
| 		 AC_SEARCH_LIBS(XML_ParserCreate, expat, [],
 | |
| 			[AC_MSG_ERROR([Can't find expat library. Please install expat.])])
 | |
| 		 EXPAT_LIBS="$LIBS"
 | |
| 		 LIBS="$SAVE_LIBS"
 | |
| 		 AC_SUBST(EXPAT_LIBS)
 | |
| 		])
 | |
| fi
 | |
| 
 | |
| AC_PATH_PROG(XSLTPROC, xsltproc)
 | |
| AM_CONDITIONAL([HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
 | |
| 
 | |
| AC_MSG_CHECKING([for docbook manpages stylesheet])
 | |
| MANPAGES_STYLESHEET=http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
 | |
| AC_PATH_PROGS_FEATURE_CHECK([XSLTPROC_TMP], [xsltproc],
 | |
| 			    AS_IF([`"$ac_path_XSLTPROC_TMP" --nonet "$MANPAGES_STYLESHEET" > /dev/null 2>&1`],
 | |
| 				  [HAVE_MANPAGES_STYLESHEET=yes]))
 | |
| if test "x$HAVE_MANPAGES_STYLESHEET" = "xyes"; then
 | |
| 	AM_CONDITIONAL([HAVE_MANPAGES_STYLESHEET], true)
 | |
| 	AC_SUBST(MANPAGES_STYLESHEET)
 | |
| 	AC_MSG_RESULT([yes])
 | |
| else
 | |
| 	AM_CONDITIONAL([HAVE_MANPAGES_STYLESHEET], false)
 | |
| 	AC_MSG_RESULT([no])
 | |
| fi
 | |
| 
 | |
| AM_CONDITIONAL(BUILD_DOCS, [test x$enable_documentation = xyes])
 | |
| if test "x$enable_documentation" = "xyes"; then
 | |
| 	AC_PATH_PROG(DOXYGEN, doxygen)
 | |
| 
 | |
| 	if test "x$DOXYGEN" = "x"; then
 | |
| 		AC_MSG_ERROR([Documentation build requested but doxygen not found. Install doxygen or disable the documentation using --disable-documentation])
 | |
| 	fi
 | |
| 
 | |
| 	AC_MSG_CHECKING([for compatible doxygen version])
 | |
| 	doxygen_version=`$DOXYGEN --version`
 | |
| 	AS_VERSION_COMPARE([$doxygen_version], [1.6.0],
 | |
| 	                   [AC_MSG_RESULT([no])
 | |
| 	                    AC_MSG_ERROR([Doxygen $doxygen_version too old. Doxygen 1.6+ required for documentation build. Install required doxygen version or disable the documentation using --disable-documentation])],
 | |
| 	                   [AC_MSG_RESULT([yes])],
 | |
| 	                   [AC_MSG_RESULT([yes])])
 | |
| 
 | |
| 	AC_PATH_PROG(XMLTO, xmlto)
 | |
| 
 | |
| 	if test "x$XMLTO" = "x"; then
 | |
| 		AC_MSG_ERROR([Documentation build requested but xmlto not found. Install xmlto or disable the documentation using --disable-documentation])
 | |
| 	fi
 | |
| 
 | |
| 	AC_PATH_PROG(DOT, dot)
 | |
| 	if test "x$DOT" = "x"; then
 | |
| 		AC_MSG_ERROR([Documentation build requested but graphviz's dot not found. Install graphviz or disable the documentation using --disable-documentation])
 | |
| 	fi
 | |
| 	AC_MSG_CHECKING([for compatible dot version])
 | |
| 	dot_version=`$DOT -V 2>&1|$GREP -o ['[0-9]*\.[0-9]*\.[0-9]*']`
 | |
| 	AS_VERSION_COMPARE([$dot_version], [2.26.0],
 | |
| 	                   [AC_MSG_RESULT([no])
 | |
| 	                    AC_MSG_ERROR([Graphviz dot $dot_version too old. Graphviz 2.26+ required for documentation build. Install required graphviz version or disable the documentation using --disable-documentation])],
 | |
| 	                   [AC_MSG_RESULT([yes])],
 | |
| 	                   [AC_MSG_RESULT([yes])])
 | |
| 
 | |
| 	AC_CONFIG_FILES([
 | |
| 	doc/doxygen/wayland.doxygen
 | |
| 	])
 | |
| 
 | |
| fi
 | |
| AM_CONDITIONAL([HAVE_XMLTO], [test "x$XMLTO" != "x"])
 | |
| 
 | |
| AC_CONFIG_FILES([Makefile
 | |
| 		 cursor/wayland-cursor.pc
 | |
| 		 cursor/wayland-cursor-uninstalled.pc
 | |
| 		 doc/Makefile
 | |
| 		 doc/publican/Makefile
 | |
| 		 doc/doxygen/Makefile
 | |
| 		 doc/man/Makefile
 | |
| 		 src/wayland-server-uninstalled.pc
 | |
| 		 src/wayland-client-uninstalled.pc
 | |
| 		 src/wayland-scanner-uninstalled.pc
 | |
| 		 src/wayland-server.pc
 | |
| 		 src/wayland-client.pc
 | |
| 		 src/wayland-scanner.pc
 | |
| 		 src/wayland-version.h])
 | |
| AC_OUTPUT
 |