Artifact b428afeadb74c3a91b2bf5d11a6e8a2df4ed73f4:


0000: 23 20 6f 6e 63 65 6f 6e 6c 79 2e 6d 34 20 73 65  # onceonly.m4 se
0010: 72 69 61 6c 20 37 0a 64 6e 6c 20 43 6f 70 79 72  rial 7.dnl Copyr
0020: 69 67 68 74 20 28 43 29 20 32 30 30 32 2d 32 30  ight (C) 2002-20
0030: 30 33 2c 20 32 30 30 35 2d 32 30 30 36 2c 20 32  03, 2005-2006, 2
0040: 30 30 38 2d 32 30 31 30 20 46 72 65 65 20 53 6f  008-2010 Free So
0050: 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f  ftware Foundatio
0060: 6e 2c 0a 64 6e 6c 20 49 6e 63 2e 0a 64 6e 6c 20  n,.dnl Inc..dnl 
0070: 54 68 69 73 20 66 69 6c 65 20 69 73 20 66 72 65  This file is fre
0080: 65 20 73 6f 66 74 77 61 72 65 2c 20 64 69 73 74  e software, dist
0090: 72 69 62 75 74 65 64 20 75 6e 64 65 72 20 74 68  ributed under th
00a0: 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47  e terms of the G
00b0: 4e 55 0a 64 6e 6c 20 47 65 6e 65 72 61 6c 20 50  NU.dnl General P
00c0: 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 2e 20 20  ublic License.  
00d0: 41 73 20 61 20 73 70 65 63 69 61 6c 20 65 78 63  As a special exc
00e0: 65 70 74 69 6f 6e 20 74 6f 20 74 68 65 20 47 4e  eption to the GN
00f0: 55 20 47 65 6e 65 72 61 6c 0a 64 6e 6c 20 50 75  U General.dnl Pu
0100: 62 6c 69 63 20 4c 69 63 65 6e 73 65 2c 20 74 68  blic License, th
0110: 69 73 20 66 69 6c 65 20 6d 61 79 20 62 65 20 64  is file may be d
0120: 69 73 74 72 69 62 75 74 65 64 20 61 73 20 70 61  istributed as pa
0130: 72 74 20 6f 66 20 61 20 70 72 6f 67 72 61 6d 0a  rt of a program.
0140: 64 6e 6c 20 74 68 61 74 20 63 6f 6e 74 61 69 6e  dnl that contain
0150: 73 20 61 20 63 6f 6e 66 69 67 75 72 61 74 69 6f  s a configuratio
0160: 6e 20 73 63 72 69 70 74 20 67 65 6e 65 72 61 74  n script generat
0170: 65 64 20 62 79 20 41 75 74 6f 63 6f 6e 66 2c 20  ed by Autoconf, 
0180: 75 6e 64 65 72 0a 64 6e 6c 20 74 68 65 20 73 61  under.dnl the sa
0190: 6d 65 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20  me distribution 
01a0: 74 65 72 6d 73 20 61 73 20 74 68 65 20 72 65 73  terms as the res
01b0: 74 20 6f 66 20 74 68 61 74 20 70 72 6f 67 72 61  t of that progra
01c0: 6d 2e 0a 0a 64 6e 6c 20 54 68 69 73 20 66 69 6c  m...dnl This fil
01d0: 65 20 64 65 66 69 6e 65 73 20 73 6f 6d 65 20 22  e defines some "
01e0: 6f 6e 63 65 20 6f 6e 6c 79 22 20 76 61 72 69 61  once only" varia
01f0: 6e 74 73 20 6f 66 20 73 74 61 6e 64 61 72 64 20  nts of standard 
0200: 61 75 74 6f 63 6f 6e 66 20 6d 61 63 72 6f 73 2e  autoconf macros.
0210: 0a 64 6e 6c 20 20 20 41 43 5f 43 48 45 43 4b 5f  .dnl   AC_CHECK_
0220: 48 45 41 44 45 52 53 5f 4f 4e 43 45 20 20 20 20  HEADERS_ONCE    
0230: 20 20 20 20 20 20 6c 69 6b 65 20 20 41 43 5f 43        like  AC_C
0240: 48 45 43 4b 5f 48 45 41 44 45 52 53 0a 64 6e 6c  HECK_HEADERS.dnl
0250: 20 20 20 41 43 5f 43 48 45 43 4b 5f 46 55 4e 43     AC_CHECK_FUNC
0260: 53 5f 4f 4e 43 45 20 20 20 20 20 20 20 20 20 20  S_ONCE          
0270: 20 20 6c 69 6b 65 20 20 41 43 5f 43 48 45 43 4b    like  AC_CHECK
0280: 5f 46 55 4e 43 53 0a 64 6e 6c 20 20 20 41 43 5f  _FUNCS.dnl   AC_
0290: 43 48 45 43 4b 5f 44 45 43 4c 53 5f 4f 4e 43 45  CHECK_DECLS_ONCE
02a0: 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 6b 65              like
02b0: 20 20 41 43 5f 43 48 45 43 4b 5f 44 45 43 4c 53    AC_CHECK_DECLS
02c0: 0a 64 6e 6c 20 20 20 41 43 5f 52 45 51 55 49 52  .dnl   AC_REQUIR
02d0: 45 28 5b 41 43 5f 46 55 4e 43 5f 53 54 52 43 4f  E([AC_FUNC_STRCO
02e0: 4c 4c 5d 29 20 20 6c 69 6b 65 20 20 41 43 5f 46  LL])  like  AC_F
02f0: 55 4e 43 5f 53 54 52 43 4f 4c 4c 0a 64 6e 6c 20  UNC_STRCOLL.dnl 
0300: 54 68 65 20 61 64 76 61 6e 74 61 67 65 20 69 73  The advantage is
0310: 20 74 68 61 74 20 74 68 65 20 63 68 65 63 6b 20   that the check 
0320: 66 6f 72 20 65 61 63 68 20 6f 66 20 74 68 65 20  for each of the 
0330: 68 65 61 64 65 72 73 2f 66 75 6e 63 74 69 6f 6e  headers/function
0340: 73 2f 64 65 63 6c 73 0a 64 6e 6c 20 77 69 6c 6c  s/decls.dnl will
0350: 20 62 65 20 70 75 74 20 6f 6e 6c 79 20 6f 6e 63   be put only onc
0360: 65 20 69 6e 74 6f 20 74 68 65 20 27 63 6f 6e 66  e into the 'conf
0370: 69 67 75 72 65 27 20 66 69 6c 65 2e 20 49 74 20  igure' file. It 
0380: 6b 65 65 70 73 20 74 68 65 20 73 69 7a 65 20 6f  keeps the size o
0390: 66 0a 64 6e 6c 20 74 68 65 20 27 63 6f 6e 66 69  f.dnl the 'confi
03a0: 67 75 72 65 27 20 66 69 6c 65 20 64 6f 77 6e 2c  gure' file down,
03b0: 20 61 6e 64 20 61 76 6f 69 64 73 20 72 65 64 75   and avoids redu
03c0: 6e 64 61 6e 74 20 6f 75 74 70 75 74 20 77 68 65  ndant output whe
03d0: 6e 20 27 63 6f 6e 66 69 67 75 72 65 27 0a 64 6e  n 'configure'.dn
03e0: 6c 20 69 73 20 72 75 6e 2e 0a 64 6e 6c 20 54 68  l is run..dnl Th
03f0: 65 20 64 72 61 77 62 61 63 6b 20 69 73 20 74 68  e drawback is th
0400: 61 74 20 74 68 65 20 63 68 65 63 6b 73 20 63 61  at the checks ca
0410: 6e 6e 6f 74 20 62 65 20 63 6f 6e 64 69 74 69 6f  nnot be conditio
0420: 6e 61 6c 69 7a 65 64 2e 20 49 66 20 79 6f 75 20  nalized. If you 
0430: 77 72 69 74 65 0a 64 6e 6c 20 20 20 69 66 20 73  write.dnl   if s
0440: 6f 6d 65 5f 63 6f 6e 64 69 74 69 6f 6e 3b 20 74  ome_condition; t
0450: 68 65 6e 20 67 6c 5f 43 48 45 43 4b 5f 48 45 41  hen gl_CHECK_HEA
0460: 44 45 52 53 28 73 74 64 6c 69 62 2e 68 29 3b 20  DERS(stdlib.h); 
0470: 66 69 0a 64 6e 6c 20 69 6e 73 69 64 65 20 61 6e  fi.dnl inside an
0480: 20 41 43 5f 44 45 46 55 4e 65 64 20 66 75 6e 63   AC_DEFUNed func
0490: 74 69 6f 6e 2c 20 74 68 65 20 67 6c 5f 43 48 45  tion, the gl_CHE
04a0: 43 4b 5f 48 45 41 44 45 52 53 20 6d 61 63 72 6f  CK_HEADERS macro
04b0: 20 63 61 6c 6c 20 65 78 70 61 6e 64 73 20 74 6f   call expands to
04c0: 0a 64 6e 6c 20 65 6d 70 74 79 2c 20 61 6e 64 20  .dnl empty, and 
04d0: 74 68 65 20 63 68 65 63 6b 20 77 69 6c 6c 20 62  the check will b
04e0: 65 20 69 6e 73 65 72 74 65 64 20 62 65 66 6f 72  e inserted befor
04f0: 65 20 74 68 65 20 62 6f 64 79 20 6f 66 20 74 68  e the body of th
0500: 65 20 41 43 5f 44 45 46 55 4e 65 64 0a 64 6e 6c  e AC_DEFUNed.dnl
0510: 20 66 75 6e 63 74 69 6f 6e 2e 0a 0a 64 6e 6c 20   function...dnl 
0520: 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64  The original cod
0530: 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 41 43  e implemented AC
0540: 5f 43 48 45 43 4b 5f 48 45 41 44 45 52 53 5f 4f  _CHECK_HEADERS_O
0550: 4e 43 45 20 61 6e 64 20 41 43 5f 43 48 45 43 4b  NCE and AC_CHECK
0560: 5f 46 55 4e 43 53 5f 4f 4e 43 45 0a 64 6e 6c 20  _FUNCS_ONCE.dnl 
0570: 69 6e 20 74 65 72 6d 73 20 6f 66 20 41 43 5f 44  in terms of AC_D
0580: 45 46 55 4e 20 61 6e 64 20 41 43 5f 52 45 51 55  EFUN and AC_REQU
0590: 49 52 45 2e 20 54 68 69 73 20 69 6d 70 6c 65 6d  IRE. This implem
05a0: 65 6e 74 61 74 69 6f 6e 20 75 73 65 73 20 64 69  entation uses di
05b0: 76 65 72 73 69 6f 6e 73 20 74 6f 0a 64 6e 6c 20  versions to.dnl 
05c0: 6e 61 6d 65 64 20 73 65 63 74 69 6f 6e 73 20 44  named sections D
05d0: 45 46 41 55 4c 54 53 20 61 6e 64 20 49 4e 49 54  EFAULTS and INIT
05e0: 5f 50 52 45 50 41 52 45 20 69 6e 20 6f 72 64 65  _PREPARE in orde
05f0: 72 20 74 6f 20 63 68 65 63 6b 20 61 6c 6c 20 72  r to check all r
0600: 65 71 75 65 73 74 65 64 0a 64 6e 6c 20 68 65 61  equested.dnl hea
0610: 64 65 72 73 20 61 74 20 6f 6e 63 65 2c 20 74 68  ders at once, th
0620: 75 73 20 72 65 64 75 63 69 6e 67 20 74 68 65 20  us reducing the 
0630: 73 69 7a 65 20 6f 66 20 27 63 6f 6e 66 69 67 75  size of 'configu
0640: 72 65 27 2e 20 49 74 20 69 73 20 6b 6e 6f 77 6e  re'. It is known
0650: 20 74 6f 20 77 6f 72 6b 0a 64 6e 6c 20 77 69 74   to work.dnl wit
0660: 68 20 61 75 74 6f 63 6f 6e 66 20 32 2e 35 37 2e  h autoconf 2.57.
0670: 2e 32 2e 36 32 20 61 74 20 6c 65 61 73 74 20 2e  .2.62 at least .
0680: 20 54 68 65 20 73 69 7a 65 20 72 65 64 75 63 74   The size reduct
0690: 69 6f 6e 20 69 73 20 63 61 2e 20 39 25 2e 0a 0a  ion is ca. 9%...
06a0: 64 6e 6c 20 41 75 74 6f 63 6f 6e 66 20 76 65 72  dnl Autoconf ver
06b0: 73 69 6f 6e 20 32 2e 35 39 20 70 6c 75 73 20 67  sion 2.59 plus g
06c0: 6e 75 6c 69 62 20 69 73 20 72 65 71 75 69 72 65  nulib is require
06d0: 64 3b 20 74 68 69 73 20 66 69 6c 65 20 69 73 20  d; this file is 
06e0: 6e 6f 74 20 6e 65 65 64 65 64 0a 64 6e 6c 20 77  not needed.dnl w
06f0: 69 74 68 20 41 75 74 6f 63 6f 6e 66 20 32 2e 36  ith Autoconf 2.6
0700: 30 20 6f 72 20 67 72 65 61 74 65 72 2e 20 42 75  0 or greater. Bu
0710: 74 20 6e 6f 74 65 20 74 68 61 74 20 61 75 74 6f  t note that auto
0720: 63 6f 6e 66 27 73 20 69 6d 70 6c 65 6d 65 6e 74  conf's implement
0730: 61 74 69 6f 6e 20 6f 66 0a 64 6e 6c 20 41 43 5f  ation of.dnl AC_
0740: 43 48 45 43 4b 5f 44 45 43 4c 53 5f 4f 4e 43 45  CHECK_DECLS_ONCE
0750: 20 65 78 70 65 63 74 73 20 61 20 63 6f 6d 6d 61   expects a comma
0760: 2d 73 65 70 61 72 61 74 65 64 20 6c 69 73 74 20  -separated list 
0770: 6f 66 20 73 79 6d 62 6f 6c 73 20 61 73 20 66 69  of symbols as fi
0780: 72 73 74 0a 64 6e 6c 20 61 72 67 75 6d 65 6e 74  rst.dnl argument
0790: 21 0a 41 43 5f 50 52 45 52 45 51 28 5b 32 2e 35  !.AC_PREREQ([2.5
07a0: 39 5d 29 0a 0a 23 20 41 43 5f 43 48 45 43 4b 5f  9])..# AC_CHECK_
07b0: 48 45 41 44 45 52 53 5f 4f 4e 43 45 28 48 45 41  HEADERS_ONCE(HEA
07c0: 44 45 52 31 20 48 45 41 44 45 52 32 20 2e 2e 2e  DER1 HEADER2 ...
07d0: 29 20 69 73 20 61 20 6f 6e 63 65 2d 6f 6e 6c 79  ) is a once-only
07e0: 20 76 61 72 69 61 6e 74 20 6f 66 0a 23 20 41 43   variant of.# AC
07f0: 5f 43 48 45 43 4b 5f 48 45 41 44 45 52 53 28 48  _CHECK_HEADERS(H
0800: 45 41 44 45 52 31 20 48 45 41 44 45 52 32 20 2e  EADER1 HEADER2 .
0810: 2e 2e 29 2e 0a 41 43 5f 44 45 46 55 4e 28 5b 41  ..)..AC_DEFUN([A
0820: 43 5f 43 48 45 43 4b 5f 48 45 41 44 45 52 53 5f  C_CHECK_HEADERS_
0830: 4f 4e 43 45 5d 2c 20 5b 0a 20 20 3a 0a 20 20 6d  ONCE], [.  :.  m
0840: 34 5f 66 6f 72 65 61 63 68 5f 77 28 5b 67 6c 5f  4_foreach_w([gl_
0850: 48 45 41 44 45 52 5f 4e 41 4d 45 5d 2c 20 5b 24  HEADER_NAME], [$
0860: 31 5d 2c 20 5b 0a 20 20 20 20 41 43 5f 44 45 46  1], [.    AC_DEF
0870: 55 4e 28 5b 67 6c 5f 43 48 45 43 4b 5f 48 45 41  UN([gl_CHECK_HEA
0880: 44 45 52 5f 5d 6d 34 5f 71 75 6f 74 65 28 6d 34  DER_]m4_quote(m4
0890: 5f 74 72 61 6e 73 6c 69 74 28 67 6c 5f 48 45 41  _translit(gl_HEA
08a0: 44 45 52 5f 4e 41 4d 45 2c 0a 20 20 20 20 20 20  DER_NAME,.      
08b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
08c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
08d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b 2e                [.
08e0: 2f 2d 5d 2c 20 5b 5f 5f 5f 5d 29 29 2c 20 5b 0a  /-], [___])), [.
08f0: 20 20 20 20 20 20 6d 34 5f 64 69 76 65 72 74 5f        m4_divert_
0900: 74 65 78 74 28 5b 49 4e 49 54 5f 50 52 45 50 41  text([INIT_PREPA
0910: 52 45 5d 2c 0a 20 20 20 20 20 20 20 20 5b 67 6c  RE],.        [gl
0920: 5f 68 65 61 64 65 72 5f 6c 69 73 74 3d 22 24 67  _header_list="$g
0930: 6c 5f 68 65 61 64 65 72 5f 6c 69 73 74 20 67 6c  l_header_list gl
0940: 5f 48 45 41 44 45 52 5f 4e 41 4d 45 22 5d 29 0a  _HEADER_NAME"]).
0950: 20 20 20 20 20 20 67 6c 5f 48 45 41 44 45 52 53        gl_HEADERS
0960: 5f 45 58 50 41 4e 53 49 4f 4e 0a 20 20 20 20 20  _EXPANSION.     
0970: 20 41 48 5f 54 45 4d 50 4c 41 54 45 28 41 53 5f   AH_TEMPLATE(AS_
0980: 54 52 5f 43 50 50 28 5b 48 41 56 45 5f 5d 6d 34  TR_CPP([HAVE_]m4
0990: 5f 64 65 66 6e 28 5b 67 6c 5f 48 45 41 44 45 52  _defn([gl_HEADER
09a0: 5f 4e 41 4d 45 5d 29 29 2c 0a 20 20 20 20 20 20  _NAME])),.      
09b0: 20 20 5b 44 65 66 69 6e 65 20 74 6f 20 31 20 69    [Define to 1 i
09c0: 66 20 79 6f 75 20 68 61 76 65 20 74 68 65 20 3c  f you have the <
09d0: 5d 6d 34 5f 64 65 66 6e 28 5b 67 6c 5f 48 45 41  ]m4_defn([gl_HEA
09e0: 44 45 52 5f 4e 41 4d 45 5d 29 5b 3e 20 68 65 61  DER_NAME])[> hea
09f0: 64 65 72 20 66 69 6c 65 2e 5d 29 0a 20 20 20 20  der file.]).    
0a00: 5d 29 0a 20 20 20 20 41 43 5f 52 45 51 55 49 52  ]).    AC_REQUIR
0a10: 45 28 5b 67 6c 5f 43 48 45 43 4b 5f 48 45 41 44  E([gl_CHECK_HEAD
0a20: 45 52 5f 5d 6d 34 5f 71 75 6f 74 65 28 6d 34 5f  ER_]m4_quote(m4_
0a30: 74 72 61 6e 73 6c 69 74 28 67 6c 5f 48 45 41 44  translit(gl_HEAD
0a40: 45 52 5f 4e 41 4d 45 2c 0a 20 20 20 20 20 20 20  ER_NAME,.       
0a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0a60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b                 [
0a80: 2e 2f 2d 5d 2c 20 5b 5f 5f 5f 5d 29 29 29 0a 20  ./-], [___]))). 
0a90: 20 5d 29 0a 5d 29 0a 6d 34 5f 64 65 66 69 6e 65   ]).]).m4_define
0aa0: 28 5b 67 6c 5f 48 45 41 44 45 52 53 5f 45 58 50  ([gl_HEADERS_EXP
0ab0: 41 4e 53 49 4f 4e 5d 2c 20 5b 0a 20 20 6d 34 5f  ANSION], [.  m4_
0ac0: 64 69 76 65 72 74 5f 74 65 78 74 28 5b 44 45 46  divert_text([DEF
0ad0: 41 55 4c 54 53 5d 2c 20 5b 67 6c 5f 68 65 61 64  AULTS], [gl_head
0ae0: 65 72 5f 6c 69 73 74 3d 5d 29 0a 20 20 41 43 5f  er_list=]).  AC_
0af0: 43 48 45 43 4b 5f 48 45 41 44 45 52 53 28 5b 24  CHECK_HEADERS([$
0b00: 67 6c 5f 68 65 61 64 65 72 5f 6c 69 73 74 5d 29  gl_header_list])
0b10: 0a 20 20 6d 34 5f 64 65 66 69 6e 65 28 5b 67 6c  .  m4_define([gl
0b20: 5f 48 45 41 44 45 52 53 5f 45 58 50 41 4e 53 49  _HEADERS_EXPANSI
0b30: 4f 4e 5d 2c 20 5b 5d 29 0a 5d 29 0a 0a 23 20 41  ON], []).])..# A
0b40: 43 5f 43 48 45 43 4b 5f 46 55 4e 43 53 5f 4f 4e  C_CHECK_FUNCS_ON
0b50: 43 45 28 46 55 4e 43 31 20 46 55 4e 43 32 20 2e  CE(FUNC1 FUNC2 .
0b60: 2e 2e 29 20 69 73 20 61 20 6f 6e 63 65 2d 6f 6e  ..) is a once-on
0b70: 6c 79 20 76 61 72 69 61 6e 74 20 6f 66 0a 23 20  ly variant of.# 
0b80: 41 43 5f 43 48 45 43 4b 5f 46 55 4e 43 53 28 46  AC_CHECK_FUNCS(F
0b90: 55 4e 43 31 20 46 55 4e 43 32 20 2e 2e 2e 29 2e  UNC1 FUNC2 ...).
0ba0: 0a 41 43 5f 44 45 46 55 4e 28 5b 41 43 5f 43 48  .AC_DEFUN([AC_CH
0bb0: 45 43 4b 5f 46 55 4e 43 53 5f 4f 4e 43 45 5d 2c  ECK_FUNCS_ONCE],
0bc0: 20 5b 0a 20 20 3a 0a 20 20 6d 34 5f 66 6f 72 65   [.  :.  m4_fore
0bd0: 61 63 68 5f 77 28 5b 67 6c 5f 46 55 4e 43 5f 4e  ach_w([gl_FUNC_N
0be0: 41 4d 45 5d 2c 20 5b 24 31 5d 2c 20 5b 0a 20 20  AME], [$1], [.  
0bf0: 20 20 41 43 5f 44 45 46 55 4e 28 5b 67 6c 5f 43    AC_DEFUN([gl_C
0c00: 48 45 43 4b 5f 46 55 4e 43 5f 5d 6d 34 5f 64 65  HECK_FUNC_]m4_de
0c10: 66 6e 28 5b 67 6c 5f 46 55 4e 43 5f 4e 41 4d 45  fn([gl_FUNC_NAME
0c20: 5d 29 2c 20 5b 0a 20 20 20 20 20 20 6d 34 5f 64  ]), [.      m4_d
0c30: 69 76 65 72 74 5f 74 65 78 74 28 5b 49 4e 49 54  ivert_text([INIT
0c40: 5f 50 52 45 50 41 52 45 5d 2c 0a 20 20 20 20 20  _PREPARE],.     
0c50: 20 20 20 5b 67 6c 5f 66 75 6e 63 5f 6c 69 73 74     [gl_func_list
0c60: 3d 22 24 67 6c 5f 66 75 6e 63 5f 6c 69 73 74 20  ="$gl_func_list 
0c70: 67 6c 5f 46 55 4e 43 5f 4e 41 4d 45 22 5d 29 0a  gl_FUNC_NAME"]).
0c80: 20 20 20 20 20 20 67 6c 5f 46 55 4e 43 53 5f 45        gl_FUNCS_E
0c90: 58 50 41 4e 53 49 4f 4e 0a 20 20 20 20 20 20 41  XPANSION.      A
0ca0: 48 5f 54 45 4d 50 4c 41 54 45 28 41 53 5f 54 52  H_TEMPLATE(AS_TR
0cb0: 5f 43 50 50 28 5b 48 41 56 45 5f 5d 6d 34 5f 64  _CPP([HAVE_]m4_d
0cc0: 65 66 6e 28 5b 67 6c 5f 46 55 4e 43 5f 4e 41 4d  efn([gl_FUNC_NAM
0cd0: 45 5d 29 29 2c 0a 20 20 20 20 20 20 20 20 5b 44  E])),.        [D
0ce0: 65 66 69 6e 65 20 74 6f 20 31 20 69 66 20 79 6f  efine to 1 if yo
0cf0: 75 20 68 61 76 65 20 74 68 65 20 60 5d 6d 34 5f  u have the `]m4_
0d00: 64 65 66 6e 28 5b 67 6c 5f 46 55 4e 43 5f 4e 41  defn([gl_FUNC_NA
0d10: 4d 45 5d 29 5b 27 20 66 75 6e 63 74 69 6f 6e 2e  ME])[' function.
0d20: 5d 29 0a 20 20 20 20 5d 29 0a 20 20 20 20 41 43  ]).    ]).    AC
0d30: 5f 52 45 51 55 49 52 45 28 5b 67 6c 5f 43 48 45  _REQUIRE([gl_CHE
0d40: 43 4b 5f 46 55 4e 43 5f 5d 6d 34 5f 64 65 66 6e  CK_FUNC_]m4_defn
0d50: 28 5b 67 6c 5f 46 55 4e 43 5f 4e 41 4d 45 5d 29  ([gl_FUNC_NAME])
0d60: 29 0a 20 20 5d 29 0a 5d 29 0a 6d 34 5f 64 65 66  ).  ]).]).m4_def
0d70: 69 6e 65 28 5b 67 6c 5f 46 55 4e 43 53 5f 45 58  ine([gl_FUNCS_EX
0d80: 50 41 4e 53 49 4f 4e 5d 2c 20 5b 0a 20 20 6d 34  PANSION], [.  m4
0d90: 5f 64 69 76 65 72 74 5f 74 65 78 74 28 5b 44 45  _divert_text([DE
0da0: 46 41 55 4c 54 53 5d 2c 20 5b 67 6c 5f 66 75 6e  FAULTS], [gl_fun
0db0: 63 5f 6c 69 73 74 3d 5d 29 0a 20 20 41 43 5f 43  c_list=]).  AC_C
0dc0: 48 45 43 4b 5f 46 55 4e 43 53 28 5b 24 67 6c 5f  HECK_FUNCS([$gl_
0dd0: 66 75 6e 63 5f 6c 69 73 74 5d 29 0a 20 20 6d 34  func_list]).  m4
0de0: 5f 64 65 66 69 6e 65 28 5b 67 6c 5f 46 55 4e 43  _define([gl_FUNC
0df0: 53 5f 45 58 50 41 4e 53 49 4f 4e 5d 2c 20 5b 5d  S_EXPANSION], []
0e00: 29 0a 5d 29 0a 0a 23 20 41 43 5f 43 48 45 43 4b  ).])..# AC_CHECK
0e10: 5f 44 45 43 4c 53 5f 4f 4e 43 45 28 44 45 43 4c  _DECLS_ONCE(DECL
0e20: 31 20 44 45 43 4c 32 20 2e 2e 2e 29 20 69 73 20  1 DECL2 ...) is 
0e30: 61 20 6f 6e 63 65 2d 6f 6e 6c 79 20 76 61 72 69  a once-only vari
0e40: 61 6e 74 20 6f 66 0a 23 20 41 43 5f 43 48 45 43  ant of.# AC_CHEC
0e50: 4b 5f 44 45 43 4c 53 28 44 45 43 4c 31 2c 20 44  K_DECLS(DECL1, D
0e60: 45 43 4c 32 2c 20 2e 2e 2e 29 2e 0a 41 43 5f 44  ECL2, ...)..AC_D
0e70: 45 46 55 4e 28 5b 41 43 5f 43 48 45 43 4b 5f 44  EFUN([AC_CHECK_D
0e80: 45 43 4c 53 5f 4f 4e 43 45 5d 2c 20 5b 0a 20 20  ECLS_ONCE], [.  
0e90: 3a 0a 20 20 6d 34 5f 66 6f 72 65 61 63 68 5f 77  :.  m4_foreach_w
0ea0: 28 5b 67 6c 5f 44 45 43 4c 5f 4e 41 4d 45 5d 2c  ([gl_DECL_NAME],
0eb0: 20 5b 24 31 5d 2c 20 5b 0a 20 20 20 20 41 43 5f   [$1], [.    AC_
0ec0: 44 45 46 55 4e 28 5b 67 6c 5f 43 48 45 43 4b 5f  DEFUN([gl_CHECK_
0ed0: 44 45 43 4c 5f 5d 6d 34 5f 64 65 66 6e 28 5b 67  DECL_]m4_defn([g
0ee0: 6c 5f 44 45 43 4c 5f 4e 41 4d 45 5d 29 2c 20 5b  l_DECL_NAME]), [
0ef0: 0a 20 20 20 20 20 20 41 43 5f 43 48 45 43 4b 5f  .      AC_CHECK_
0f00: 44 45 43 4c 53 28 6d 34 5f 64 65 66 6e 28 5b 67  DECLS(m4_defn([g
0f10: 6c 5f 44 45 43 4c 5f 4e 41 4d 45 5d 29 29 0a 20  l_DECL_NAME])). 
0f20: 20 20 20 5d 29 0a 20 20 20 20 41 43 5f 52 45 51     ]).    AC_REQ
0f30: 55 49 52 45 28 5b 67 6c 5f 43 48 45 43 4b 5f 44  UIRE([gl_CHECK_D
0f40: 45 43 4c 5f 5d 6d 34 5f 64 65 66 6e 28 5b 67 6c  ECL_]m4_defn([gl
0f50: 5f 44 45 43 4c 5f 4e 41 4d 45 5d 29 29 0a 20 20  _DECL_NAME])).  
0f60: 5d 29 0a 5d 29 0a                                ]).]).