X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=9f5afa03ace5499d5b0c4f97369817c593900ba1;hb=eb34825560edf570d883d3e52a8fe657c17b3d9c;hp=0cf7e504b3e7870d73cbae98a9ab46c589f0f7db;hpb=518debb3bc0db2cb8036144ddfc22b81cfbb6f83;p=platform%2Fupstream%2Flibxkbcommon.git diff --git a/configure.ac b/configure.ac index 0cf7e50..9f5afa0 100644 --- a/configure.ac +++ b/configure.ac @@ -21,37 +21,51 @@ dnl dnl Process this file with autoconf to create configure. # Initialize Autoconf -AC_PREREQ([2.60]) -AC_INIT([libxkbcommon], [0.1.0], - [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg]) +AC_PREREQ([2.62]) +AC_INIT([libxkbcommon], [0.3.2], + [https://bugs.freedesktop.org/enter_bug.cgi?product=libxkbcommon], + [libxkbcommon], [http://xkbcommon.org]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([src/config.h]) AC_CONFIG_MACRO_DIR([m4]) +AC_CONFIG_AUX_DIR([build-aux]) # Initialize Automake -AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects]) -AM_MAINTAINER_MODE +AM_INIT_AUTOMAKE([foreign dist-xz no-dist-gzip subdir-objects color-tests parallel-tests check-news]) +AM_MAINTAINER_MODE([enable]) # Get _GNU_SOURCE and friends AC_USE_SYSTEM_EXTENSIONS # Initialize libtool -AC_PROG_LIBTOOL +LT_INIT -# Require xorg-macros minimum of 1.8 for AM_SILENT_RULES +# Add xorg-macros stuff m4_ifndef([XORG_MACROS_VERSION], - [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) -XORG_MACROS_VERSION(1.8) + [m4_fatal([must install xorg-macros 1.16 or later before running autoconf/autogen])]) +XORG_MACROS_VERSION(1.16) XORG_DEFAULT_OPTIONS -XORG_CHECK_MALLOC_ZERO +XORG_MEMORY_CHECK_FLAGS +XORG_ENABLE_DOCS +XORG_WITH_DOXYGEN + +# Needed in older Automakes for subdir-objects +AM_PROG_CC_C_O + +# Check for compiler features +AC_C_INLINE # Check for programs -AC_PROG_LEX +AC_PROG_MKDIR_P +PKG_PROG_PKG_CONFIG + +# Note: we use some yacc extensions, which work with either GNU bison +# (preferred) or byacc. Other yacc's may or may not work. AC_PROG_YACC AC_PATH_PROG([YACC_INST], $YACC) -if test ! -f "src/xkbcomp/xkbparse.c"; then +if test ! -f "src/xkbcomp/parser.c"; then if test -z "$YACC_INST"; then - AC_MSG_ERROR([yacc not found - unable to compile src/xkbcomp/xkbparse.y]) + AC_MSG_ERROR([yacc not found - unable to compile src/xkbcomp/parser.y]) fi fi @@ -62,52 +76,90 @@ if test "x$ac_cv_func_strcasecmp" = xno || \ AC_MSG_ERROR([C library does not support strcasecmp/strncasecmp]) fi -# Build native compiler needed for makekeys -AC_ARG_VAR([CC_FOR_BUILD], [Build native C compiler program]) -if test "x$CC_FOR_BUILD" = x; then - if test "$cross_compiling" != no; then - AC_PATH_PROGS([CC_FOR_BUILD], [gcc cc], [cc]) - else - CC_FOR_BUILD="$CC" - fi -fi +AC_CHECK_FUNCS([eaccess euidaccess mmap]) -if test "x$GCC" = xyes ; then - CFLAGS="$CFLAGS -fvisibility=hidden" -fi +# Some tests use Linux-specific headers +AC_CHECK_HEADER([linux/input.h]) +AM_CONDITIONAL(BUILD_LINUX_TESTS, [test "x$ac_cv_header_linux_input_h" = xyes]) + +XORG_TESTSET_CFLAG([BASE_CFLAGS], [-fvisibility=hidden]) -# Obtain protocols headers include directives -PKG_CHECK_MODULES([X11], [xproto kbproto >= 1.0.4]) - -# Obtain the path to the X Window System Core Protocol -AC_MSG_CHECKING([for X11 includedir]) -includex11dir="`$PKG_CONFIG --variable=includex11dir xproto`" -AC_MSG_RESULT([$includex11dir]) - -AC_MSG_CHECKING([keysym definitions]) -KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11 -FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h" -for i in $FILES; do - if test -f "$KEYSYMDEFDIR/$i"; then - KEYSYMDEFS="$KEYSYMDEFS $KEYSYMDEFDIR/$i" - elif test "x$i" = "xkeysymdef.h"; then - AC_MSG_ERROR([Cannot find keysymdef.h]) - fi -done -AC_MSG_RESULT([$KEYSYMDEFS]) -AC_SUBST(KEYSYMDEFS) +XORG_CHECK_LINKER_FLAGS([-Wl,--no-undefined], [have_no_undefined=yes]) +AM_CONDITIONAL([HAVE_NO_UNDEFINED], [test "x$have_no_undefined" = xyes]) # Define a configuration option for the XKB config root xkb_base=`$PKG_CONFIG --variable=xkb_base xkeyboard-config` +if test "x$xkb_base" = x; then + xkb_base=$datadir/X11/xkb +fi AC_ARG_WITH([xkb_config_root], - [AS_HELP_STRING([--with-xkb-config-root=], - [Set default XKB config root (default: ${datadir}/X11/xkb)])], + [AS_HELP_STRING([--with-xkb-config-root=], + [Set default XKB config root (default: xkeyboard-config install path)])], [XKBCONFIGROOT="$withval"], [XKBCONFIGROOT="$xkb_base"]) AC_SUBST([XKBCONFIGROOT]) +AC_ARG_WITH([default_rules], + [AS_HELP_STRING([--with-default-rules=], + [Default XKB ruleset (default: evdev)])], + [DEFAULT_XKB_RULES="$withval"], + [DEFAULT_XKB_RULES="evdev"]) +AC_DEFINE_UNQUOTED([DEFAULT_XKB_RULES], ["$DEFAULT_XKB_RULES"], + [Default XKB ruleset]) + +AC_ARG_WITH([default_model], + [AS_HELP_STRING([--with-default-model=], + [Default XKB model (default: pc105)])], + [DEFAULT_XKB_MODEL="$withval"], + [DEFAULT_XKB_MODEL="pc105"]) +AC_DEFINE_UNQUOTED([DEFAULT_XKB_MODEL], ["$DEFAULT_XKB_MODEL"], + [Default XKB model]) + +AC_ARG_WITH([default_layout], + [AS_HELP_STRING([--with-default-layout=], + [Default XKB layout (default: us)])], + [DEFAULT_XKB_LAYOUT="$withval"], + [DEFAULT_XKB_LAYOUT="us"]) +AC_DEFINE_UNQUOTED([DEFAULT_XKB_LAYOUT], ["$DEFAULT_XKB_LAYOUT"], + [Default XKB layout]) + +AC_ARG_WITH([default_variant], + [AS_HELP_STRING([--with-default-variant=], + [Default XKB variant (default: (none))])], + [DEFAULT_XKB_VARIANT="$withval"], + [DEFAULT_XKB_VARAINT=]) +if ! test "x$DEFAULT_XKB_VARIANT" = x; then + AC_DEFINE_UNQUOTED([DEFAULT_XKB_VARIANT], ["$DEFAULT_XKB_VARIANT"], + [Default XKB variant]) +fi + +AC_ARG_WITH([default_options], + [AS_HELP_STRING([--with-default-options=], + [Default XKB options (default: (none))])], + [DEFAULT_XKB_OPTIONS="$withval"], + [DEFAULT_XKB_OPTIONS=]) +if ! test "x$DEFAULT_XKB_OPTIONS" = x; then + AC_DEFINE_UNQUOTED([DEFAULT_XKB_OPTIONS], ["$DEFAULT_XKB_OPTIONS"], + [Default XKB options]) +fi + +AC_ARG_ENABLE([x11], + [AS_HELP_STRING([--disable-x11], + [Disable support for creating keymaps with the X11 protocol (default: enabled)])], + [], [enable_x11=yes]) +if test "x$enable_x11" == xyes; then + PKG_CHECK_MODULES([XCB_XKB], [xcb xcb-xkb >= 1.10], [], + [AC_MSG_ERROR([xkbcommon-x11 requires xcb-xkb >= 1.10 which was not found. \ +You can disable X11 support with --disable-x11.])]) +fi +AM_CONDITIONAL([ENABLE_X11], [test "x$enable_x11" == xyes]) + AC_CONFIG_FILES([ - Makefile - test/Makefile - xkbcommon.pc]) + Makefile + xkbcommon-uninstalled.pc + xkbcommon.pc + xkbcommon-x11.pc + xkbcommon-x11-uninstalled.pc + doc/Doxyfile +]) AC_OUTPUT