acinclude/ltsugar.m4
author Michael Sartain <mikesart@valvesoftware.com>
Thu, 11 Oct 2012 09:41:43 -0700
changeset 6570 45855398762c
parent 6442 2d3caa191dc4
permissions -rw-r--r--
Add GLX_X_VISUAL_TYPE_EXT so created window will use DirectColor if available (instead of TrueColor).
Our new X11 window was being created with the TrueColor attribute, and trying to set the gamma
on that would fail. This change checks for the visual_info extension, and uses that to ask for
DirectColor if available.
     1 # ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
     2 #
     3 # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
     4 # Written by Gary V. Vaughan, 2004
     5 #
     6 # This file is free software; the Free Software Foundation gives
     7 # unlimited permission to copy and/or distribute it, with or without
     8 # modifications, as long as this notice is preserved.
     9 
    10 # serial 6 ltsugar.m4
    11 
    12 # This is to help aclocal find these macros, as it can't see m4_define.
    13 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
    14 
    15 
    16 # lt_join(SEP, ARG1, [ARG2...])
    17 # -----------------------------
    18 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
    19 # associated separator.
    20 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
    21 # versions in m4sugar had bugs.
    22 m4_define([lt_join],
    23 [m4_if([$#], [1], [],
    24        [$#], [2], [[$2]],
    25        [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
    26 m4_define([_lt_join],
    27 [m4_if([$#$2], [2], [],
    28        [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
    29 
    30 
    31 # lt_car(LIST)
    32 # lt_cdr(LIST)
    33 # ------------
    34 # Manipulate m4 lists.
    35 # These macros are necessary as long as will still need to support
    36 # Autoconf-2.59 which quotes differently.
    37 m4_define([lt_car], [[$1]])
    38 m4_define([lt_cdr],
    39 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
    40        [$#], 1, [],
    41        [m4_dquote(m4_shift($@))])])
    42 m4_define([lt_unquote], $1)
    43 
    44 
    45 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
    46 # ------------------------------------------
    47 # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
    48 # Note that neither SEPARATOR nor STRING are expanded; they are appended
    49 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
    50 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
    51 # than defined and empty).
    52 #
    53 # This macro is needed until we can rely on Autoconf 2.62, since earlier
    54 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
    55 m4_define([lt_append],
    56 [m4_define([$1],
    57 	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
    58 
    59 
    60 
    61 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
    62 # ----------------------------------------------------------
    63 # Produce a SEP delimited list of all paired combinations of elements of
    64 # PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list
    65 # has the form PREFIXmINFIXSUFFIXn.
    66 # Needed until we can rely on m4_combine added in Autoconf 2.62.
    67 m4_define([lt_combine],
    68 [m4_if(m4_eval([$# > 3]), [1],
    69        [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
    70 [[m4_foreach([_Lt_prefix], [$2],
    71 	     [m4_foreach([_Lt_suffix],
    72 		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
    73 	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
    74 
    75 
    76 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
    77 # -----------------------------------------------------------------------
    78 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
    79 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
    80 m4_define([lt_if_append_uniq],
    81 [m4_ifdef([$1],
    82 	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
    83 		 [lt_append([$1], [$2], [$3])$4],
    84 		 [$5])],
    85 	  [lt_append([$1], [$2], [$3])$4])])
    86 
    87 
    88 # lt_dict_add(DICT, KEY, VALUE)
    89 # -----------------------------
    90 m4_define([lt_dict_add],
    91 [m4_define([$1($2)], [$3])])
    92 
    93 
    94 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
    95 # --------------------------------------------
    96 m4_define([lt_dict_add_subkey],
    97 [m4_define([$1($2:$3)], [$4])])
    98 
    99 
   100 # lt_dict_fetch(DICT, KEY, [SUBKEY])
   101 # ----------------------------------
   102 m4_define([lt_dict_fetch],
   103 [m4_ifval([$3],
   104 	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
   105     m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
   106 
   107 
   108 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
   109 # -----------------------------------------------------------------
   110 m4_define([lt_if_dict_fetch],
   111 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
   112 	[$5],
   113     [$6])])
   114 
   115 
   116 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
   117 # --------------------------------------------------------------
   118 m4_define([lt_dict_filter],
   119 [m4_if([$5], [], [],
   120   [lt_join(m4_quote(m4_default([$4], [[, ]])),
   121            lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
   122 		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
   123 ])