X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=227026d55169b0432590e2551025e772ffd5df2e;hb=e0524296d2e07426c2979025c81bb261d59e74cd;hp=6b695b9bdd31970cc94243239771ffc41b718444;hpb=dd0e8b70fb11a19887f8d05d1ed0c10921424a43;p=profile%2Fivi%2Flibxkbcommon.git diff --git a/configure.ac b/configure.ac index 6b695b9..227026d 100644 --- a/configure.ac +++ b/configure.ac @@ -29,11 +29,14 @@ 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], @@ -42,18 +45,28 @@ XORG_MACROS_VERSION(1.8) XORG_DEFAULT_OPTIONS XORG_CHECK_MALLOC_ZERO +# 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,47 +78,52 @@ if test "x$CC_FOR_BUILD" = x; then fi fi -if test "x$GCC" = xyes ; then - CFLAGS="$CFLAGS -fvisibility=hidden" +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]) +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]) - -# 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]) +AC_ARG_VAR([X11_INCLUDEDIR], [Path to X protocol keysym headers]) +if test "x$X11_INCLUDEDIR" = x; then + X11_INCLUDEDIR="`$PKG_CONFIG --variable=includex11dir xproto`" +fi +if ! test -d "$X11_INCLUDEDIR"; then + AC_MSG_ERROR([invalid X11 include path $X11_INCLUDEDIR]) +fi +AC_MSG_RESULT([$X11_INCLUDEDIR]) + +AC_MSG_CHECKING([keysym definition files]) +FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h" +for i in $FILES; do + if test -f "$X11_INCLUDEDIR/$i"; then + KEYSYMDEFS="$KEYSYMDEFS $X11_INCLUDEDIR/$i" + else + AC_MSG_ERROR([cannot find $i in $X11_INCLUDEDIR]) + fi +done +AC_MSG_RESULT([$KEYSYMDEFS]) +AC_SUBST(KEYSYMDEFS) # 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_CONFIG_FILES([ - Makefile - xkbcommon.pc - include/Makefile - makekeys/Makefile - src/Makefile - src/xkbcomp/Makefile - test/Makefile]) + Makefile + makekeys/Makefile + xkbcommon-uninstalled.pc + xkbcommon.pc]) AC_OUTPUT