[PATCH weston 3/4] configure.ac: Split common stuff to m4/common.m4
Kristian Høgsberg
hoegsberg at gmail.com
Sat Dec 7 15:04:14 PST 2013
On Fri, Dec 06, 2013 at 11:31:25PM +0100, Quentin Glidic wrote:
> From: Quentin Glidic <sardemff7+git at sardemff7.net>
I don't agree that we need to split up our configure.ac at this time.
It's just over 500 lines and I don't think splitting it into small m4
files make it easier to maintain or work with.
> Signed-off-by: Quentin Glidic <sardemff7+git at sardemff7.net>
> ---
> configure.ac | 41 ++---------------------------------------
> m4/common.m4 | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 56 insertions(+), 39 deletions(-)
> create mode 100644 m4/common.m4
>
> diff --git a/configure.ac b/configure.ac
> index 40ae145..eaa2af1 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -41,32 +41,10 @@ AC_ARG_VAR([WESTON_SHELL_CLIENT],
>
> PKG_PROG_PKG_CONFIG()
>
> -AC_CHECK_FUNC([dlopen], [],
> - AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl"))
> -AC_SUBST(DLOPEN_LIBS)
> -
> -AC_CHECK_DECL(SFD_CLOEXEC,[],
> - [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile weston")],
> - [[#include <sys/signalfd.h>]])
> -AC_CHECK_DECL(TFD_CLOEXEC,[],
> - [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile weston")],
> - [[#include <sys/timerfd.h>]])
> -AC_CHECK_DECL(CLOCK_MONOTONIC,[],
> - [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile weston")],
> - [[#include <time.h>]])
> -AC_CHECK_HEADERS([execinfo.h])
> -
> -AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate])
>
> -COMPOSITOR_MODULES="wayland-server >= 1.3.90 pixman-1"
> +m4_include([m4/common.m4])
>
> -AC_ARG_ENABLE(egl, [ --disable-egl],,
> - enable_egl=yes)
> -AM_CONDITIONAL(ENABLE_EGL, test x$enable_egl = xyes)
> -if test x$enable_egl = xyes; then
> - AC_DEFINE([ENABLE_EGL], [1], [Build Weston with EGL support])
> - PKG_CHECK_MODULES(EGL, [egl >= 7.10 glesv2])
> -fi
> +COMPOSITOR_MODULES="wayland-server >= 1.3.90 pixman-1"
Why would you move this into common.m4? It's not a boring check for a
libc function or such, it's a key config option for weston.
> AC_ARG_ENABLE(xkbcommon,
> AS_HELP_STRING([--disable-xkbcommon], [Disable libxkbcommon
> @@ -472,21 +450,6 @@ if test "x$have_lcms" = xyes; then
> fi
> AM_CONDITIONAL(HAVE_LCMS, [test "x$have_lcms" = xyes])
>
> -AC_PATH_PROG([wayland_scanner], [wayland-scanner])
> -if test x$wayland_scanner = x; then
> - AC_MSG_ERROR([wayland-scanner is needed to compile weston])
> -fi
> -
> -PKG_CHECK_MODULES(WAYLAND_SCANNER, wayland-scanner)
> -AC_PATH_PROG(XMLLINT, xmllint)
> -AC_ARG_WITH([dtddir],
> - AS_HELP_STRING([--with-dtddir],
> - [Directory containing the Wayland
> - protocol DTD @<:@default=from pkgconfig@:>@]),
> - [dtddir="$withval"],
> - [dtddir=$($PKG_CONFIG --variable=pkgdatadir wayland-scanner)])
> -AC_SUBST([dtddir])
> -AM_CONDITIONAL([HAVE_XMLLINT], [test "x$XMLLINT" != "x" -a "x$dtddir" != "x"])
>
> AC_CONFIG_FILES([Makefile
> shared/Makefile
> diff --git a/m4/common.m4 b/m4/common.m4
> new file mode 100644
> index 0000000..c7c7ed0
> --- /dev/null
> +++ b/m4/common.m4
> @@ -0,0 +1,54 @@
> +# Wayland protocol file scanner
> +PKG_CHECK_MODULES(WAYLAND_SCANNER, [wayland-scanner])
> +AC_ARG_VAR([wayland_scanner],[The wayland-scanner executable])
> +AC_PATH_PROG([wayland_scanner], [wayland-scanner])
> +if test x$wayland_scanner = x; then
> + AC_MSG_ERROR([wayland-scanner is needed to compile weston])
> +fi
> +
> +AC_ARG_VAR([XMLLINT],[The xmllint executable])
> +AC_PATH_PROG([XMLLINT], [xmllint])
> +AC_ARG_WITH([dtddir],
> + AS_HELP_STRING([--with-dtddir],
> + [Directory containing the Wayland
> + protocol DTD @<:@default=from pkgconfig@:>@]),,
> + with_dtddir=yes)
> +case "$with_dtddir" in
> + yes) dtddir=`$PKG_CONFIG --variable=pkgdatadir wayland-scanner` ;;
> + no) ;;
> + *) dtddir="$with_dtddir" ;;
> +esac
> +AC_SUBST([dtddir])
> +AM_CONDITIONAL([HAVE_XMLLINT], [test -n "$XMLLINT" -a -n "$dtddir"])
> +
> +# System functions and features
> +AC_SEARCH_LIBS([dlopen], [dl])
> +case "$ac_cv_search_dlopen" in
> + "none required") ;;
> + no) AC_MSG_ERROR([dlopen support required for Weston]) ;;
> + *) DLOPEN_LIBS="$ac_cv_search_dlopen" ;;
> +esac
> +AC_SUBST(DLOPEN_LIBS)
Also, don't move code around and rewrite it in flight. If you have a
betterway to check for dlopen, let's do that as a separate patch,
don't sneak it in while splitting stuff into a separate file.
> +AC_CHECK_DECL(SFD_CLOEXEC,[],
> + [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile weston")],
> + [[#include <sys/signalfd.h>]])
> +AC_CHECK_DECL(TFD_CLOEXEC,[],
> + [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile weston")],
> + [[#include <sys/timerfd.h>]])
> +AC_CHECK_DECL(CLOCK_MONOTONIC,[],
> + [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile weston")],
> + [[#include <time.h>]])
> +AC_CHECK_HEADERS([execinfo.h])
> +
> +AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate])
> +
> +AC_ARG_ENABLE(egl,
> + AS_HELP_STRING([--disable-egl],
> + [Disable EGL support]),,
> + enable_egl=yes)
> +AM_CONDITIONAL(ENABLE_EGL, test x$enable_egl = xyes)
> +if test x$enable_egl = xyes; then
> + AC_DEFINE([ENABLE_EGL], [1], [Build Weston with EGL support])
> + PKG_CHECK_MODULES(EGL, [egl >= 7.10 glesv2])
> +fi
> --
> 1.8.4.3
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
More information about the wayland-devel
mailing list