X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=f2a1ead002c74b75c7489f33785dbddf590318f2;hb=0dd40125c555ccfc6b018eda8107fa1aa101c43e;hp=4fa9ea752b4c7b6b932df1fda1384cd5021bcdc1;hpb=ec3fbfdf6dd53e531c53b79f634ed89cd4e776f5;p=platform%2Fupstream%2Flibxkbcommon.git diff --git a/configure.ac b/configure.ac index 4fa9ea7..f2a1ead 100644 --- a/configure.ac +++ b/configure.ac @@ -23,37 +23,50 @@ 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]) + [https://bugs.freedesktop.org/enter_bug.cgi?product=libxkbcommon]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([src/config.h]) AC_CONFIG_MACRO_DIR([m4]) # Initialize Automake -AM_INIT_AUTOMAKE([foreign dist-bzip2]) +AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects color-tests parallel-tests]) AM_MAINTAINER_MODE +# 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 m4_ifndef([XORG_MACROS_VERSION], [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) XORG_MACROS_VERSION(1.8) XORG_DEFAULT_OPTIONS -XORG_CHECK_MALLOC_ZERO +XORG_MEMORY_CHECK_FLAGS + +# Check for compiler features +AC_C_INLINE +AC_C_TYPEOF # Check for programs AC_PROG_LEX 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 # Checks for library functions. -AC_CHECK_FUNCS([strcasecmp]) +AC_CHECK_FUNCS([strcasecmp strncasecmp]) +if test "x$ac_cv_func_strcasecmp" = xno || \ + test "x$ac_cv_func_strncasecmp" = xno; then + AC_MSG_ERROR([C library does not support strcasecmp/strncasecmp]) +fi + +AC_CHECK_FUNCS([eaccess euidaccess]) # Build native compiler needed for makekeys AC_ARG_VAR([CC_FOR_BUILD], [Build native C compiler program]) @@ -65,49 +78,47 @@ if test "x$CC_FOR_BUILD" = x; then fi fi -if test "x$GCC" = xyes ; then - CFLAGS="$CFLAGS -fvisibility=hidden" -fi - -# Obtain protocols headers include directives -PKG_CHECK_MODULES([X11], [xproto kbproto >= 1.0.5]) - -# 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]) - -# Obtain full path for keysymdef header file -AC_MSG_CHECKING([for keysymdef.h]) -KEYSYMDEF_H="$includex11dir/keysymdef.h" -test -f "$KEYSYMDEF_H" || AC_MSG_ERROR([can't locate keysymdef.h in $includex11dir]) -AC_MSG_RESULT([$KEYSYMDEF_H]) -AC_SUBST([KEYSYMDEF_H]) - -# Obtain full path for XF86keysym header file -AC_MSG_CHECKING([for XF86keysym.h]) -XF86KEYSYM_H="$includex11dir/XF86keysym.h" -test -f "$XF86KEYSYM_H" || AC_MSG_ERROR([can't locate XF86keysym.h in $includex11dir]) -AC_MSG_RESULT([$XF86KEYSYM_H]) -AC_SUBST([XF86KEYSYM_H]) - -# Aggregate the headers full paths for makekeys -AC_SUBST([KS_HEADERS], ['$(KEYSYMDEF_H) $(XF86KEYSYM_H)']) +XORG_TESTSET_CFLAG([CFLAGS], [-fvisibility=hidden]) # 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='${datadir}/X11/xkb']) + [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_CONFIG_FILES([ - Makefile - xkbcommon.pc - include/Makefile - src/Makefile - src/makekeys/Makefile - src/xkbcomp/Makefile - test/Makefile]) + Makefile + makekeys/Makefile + xkbcommon-uninstalled.pc + xkbcommon.pc]) AC_OUTPUT