Edit

kc3-lang/libxkbcommon/m4

Branch :

  • Show log

    Commit

  • Author : Ran Benita
    Date : 2014-02-08 18:30:41
    Hash : 032f8b67
    Message : Remove m4/.gitkeep Now there's a file in there. Signed-off-by: Ran Benita <ran234@gmail.com>

  • ax_gcc_builtin.m4
  • # ===========================================================================
    #      http://www.gnu.org/software/autoconf-archive/ax_gcc_builtin.html
    # ===========================================================================
    #
    # SYNOPSIS
    #
    #   AX_GCC_BUILTIN(BUILTIN)
    #
    # DESCRIPTION
    #
    #   This macro checks if the compiler supports one of GCC's built-in
    #   functions; many other compilers also provide those same built-ins.
    #
    #   The BUILTIN parameter is the name of the built-in function.
    #
    #   If BUILTIN is supported define HAVE_<BUILTIN>. Keep in mind that since
    #   builtins usually start with two underscores they will be copied over
    #   into the HAVE_<BUILTIN> definition (e.g. HAVE___BUILTIN_EXPECT for
    #   __builtin_expect()).
    #
    #   The macro caches its result in the ax_cv_have_<BUILTIN> variable (e.g.
    #   ax_cv_have___builtin_expect).
    #
    #   The macro currently supports the following built-in functions:
    #
    #    __builtin_assume_aligned
    #    __builtin_bswap32
    #    __builtin_bswap64
    #    __builtin_choose_expr
    #    __builtin___clear_cache
    #    __builtin_clrsb
    #    __builtin_clrsbl
    #    __builtin_clrsbll
    #    __builtin_clz
    #    __builtin_clzl
    #    __builtin_clzll
    #    __builtin_complex
    #    __builtin_constant_p
    #    __builtin_ctz
    #    __builtin_ctzl
    #    __builtin_ctzll
    #    __builtin_expect
    #    __builtin_ffs
    #    __builtin_ffsl
    #    __builtin_ffsll
    #    __builtin_fpclassify
    #    __builtin_huge_val
    #    __builtin_huge_valf
    #    __builtin_huge_vall
    #    __builtin_inf
    #    __builtin_infd128
    #    __builtin_infd32
    #    __builtin_infd64
    #    __builtin_inff
    #    __builtin_infl
    #    __builtin_isinf_sign
    #    __builtin_nan
    #    __builtin_nand128
    #    __builtin_nand32
    #    __builtin_nand64
    #    __builtin_nanf
    #    __builtin_nanl
    #    __builtin_nans
    #    __builtin_nansf
    #    __builtin_nansl
    #    __builtin_object_size
    #    __builtin_parity
    #    __builtin_parityl
    #    __builtin_parityll
    #    __builtin_popcount
    #    __builtin_popcountl
    #    __builtin_popcountll
    #    __builtin_powi
    #    __builtin_powif
    #    __builtin_powil
    #    __builtin_prefetch
    #    __builtin_trap
    #    __builtin_types_compatible_p
    #    __builtin_unreachable
    #
    #   Unsuppored built-ins will be tested with an empty parameter set and the
    #   result of the check might be wrong or meaningless so use with care.
    #
    # LICENSE
    #
    #   Copyright (c) 2013 Gabriele Svelto <gabriele.svelto@gmail.com>
    #
    #   Copying and distribution of this file, with or without modification, are
    #   permitted in any medium without royalty provided the copyright notice
    #   and this notice are preserved.  This file is offered as-is, without any
    #   warranty.
    
    #serial 2
    
    AC_DEFUN([AX_GCC_BUILTIN], [
        AS_VAR_PUSHDEF([ac_var], [ax_cv_have_$1])
    
        AC_CACHE_CHECK([for $1], [ac_var], [
            AC_LINK_IFELSE([AC_LANG_PROGRAM([], [
                m4_case([$1],
                    [__builtin_assume_aligned], [$1("", 0)],
                    [__builtin_bswap32], [$1(0)],
                    [__builtin_bswap64], [$1(0)],
                    [__builtin_choose_expr], [$1(0, 0, 0)],
                    [__builtin___clear_cache], [$1("", "")],
                    [__builtin_clrsb], [$1(0)],
                    [__builtin_clrsbl], [$1(0)],
                    [__builtin_clrsbll], [$1(0)],
                    [__builtin_clz], [$1(0)],
                    [__builtin_clzl], [$1(0)],
                    [__builtin_clzll], [$1(0)],
                    [__builtin_complex], [$1(0.0, 0.0)],
                    [__builtin_constant_p], [$1(0)],
                    [__builtin_ctz], [$1(0)],
                    [__builtin_ctzl], [$1(0)],
                    [__builtin_ctzll], [$1(0)],
                    [__builtin_expect], [$1(0, 0)],
                    [__builtin_ffs], [$1(0)],
                    [__builtin_ffsl], [$1(0)],
                    [__builtin_ffsll], [$1(0)],
                    [__builtin_fpclassify], [$1(0, 1, 2, 3, 4, 0.0)],
                    [__builtin_huge_val], [$1()],
                    [__builtin_huge_valf], [$1()],
                    [__builtin_huge_vall], [$1()],
                    [__builtin_inf], [$1()],
                    [__builtin_infd128], [$1()],
                    [__builtin_infd32], [$1()],
                    [__builtin_infd64], [$1()],
                    [__builtin_inff], [$1()],
                    [__builtin_infl], [$1()],
                    [__builtin_isinf_sign], [$1(0.0)],
                    [__builtin_nan], [$1("")],
                    [__builtin_nand128], [$1("")],
                    [__builtin_nand32], [$1("")],
                    [__builtin_nand64], [$1("")],
                    [__builtin_nanf], [$1("")],
                    [__builtin_nanl], [$1("")],
                    [__builtin_nans], [$1("")],
                    [__builtin_nansf], [$1("")],
                    [__builtin_nansl], [$1("")],
                    [__builtin_object_size], [$1("", 0)],
                    [__builtin_parity], [$1(0)],
                    [__builtin_parityl], [$1(0)],
                    [__builtin_parityll], [$1(0)],
                    [__builtin_popcount], [$1(0)],
                    [__builtin_popcountl], [$1(0)],
                    [__builtin_popcountll], [$1(0)],
                    [__builtin_powi], [$1(0, 0)],
                    [__builtin_powif], [$1(0, 0)],
                    [__builtin_powil], [$1(0, 0)],
                    [__builtin_prefetch], [$1("")],
                    [__builtin_trap], [$1()],
                    [__builtin_types_compatible_p], [$1(int, int)],
                    [__builtin_unreachable], [$1()],
                    [m4_warn([syntax], [Unsupported built-in $1, the test may fail])
                     $1()]
                )
                ])],
                [AS_VAR_SET([ac_var], [yes])],
                [AS_VAR_SET([ac_var], [no])])
        ])
    
        AS_IF([test yes = AS_VAR_GET([ac_var])],
            [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1), 1,
                [Define to 1 if the system has the `$1' built-in function])], [])
    
        AS_VAR_POPDEF([ac_var])
    ])