Hex Artifact Content

Artifact ca463da686ac838e322773a989f027f34adf8698:


0000: 41 43 5f 44 45 46 55 4e 28 44 43 5f 44 4f 5f 54  AC_DEFUN(DC_DO_T
0010: 43 4c 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48  CL, [..AC_MSG_CH
0020: 45 43 4b 49 4e 47 28 5b 70 61 74 68 20 74 6f 20  ECKING([path to 
0030: 74 63 6c 5d 29 0a 09 41 43 5f 41 52 47 5f 57 49  tcl])..AC_ARG_WI
0040: 54 48 28 74 63 6c 2c 20 41 43 5f 48 45 4c 50 5f  TH(tcl, AC_HELP_
0050: 53 54 52 49 4e 47 28 5b 2d 2d 77 69 74 68 2d 74  STRING([--with-t
0060: 63 6c 5d 2c 20 5b 64 69 72 65 63 74 6f 72 79 20  cl], [directory 
0070: 63 6f 6e 74 61 69 6e 69 6e 67 20 74 63 6c 20 63  containing tcl c
0080: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 74 63  onfiguration (tc
0090: 6c 43 6f 6e 66 69 67 2e 73 68 29 5d 29 2c 20 5b  lConfig.sh)]), [
00a0: 5d 2c 20 5b 0a 09 09 77 69 74 68 5f 74 63 6c 3d  ], [...with_tcl=
00b0: 22 61 75 74 6f 22 0a 09 5d 29 0a 0a 09 69 66 20  "auto"..])...if 
00c0: 74 65 73 74 20 22 24 7b 77 69 74 68 5f 74 63 6c  test "${with_tcl
00d0: 7d 22 20 3d 20 22 61 75 74 6f 22 3b 20 74 68 65  }" = "auto"; the
00e0: 6e 0a 09 09 66 6f 72 20 64 69 72 20 69 6e 20 60  n...for dir in `
00f0: 65 63 68 6f 20 22 24 7b 50 41 54 48 7d 22 20 7c  echo "${PATH}" |
0100: 20 73 65 64 20 27 73 40 3a 40 20 40 67 27 60 3b   sed 's@:@ @g'`;
0110: 20 64 6f 0a 09 09 09 69 66 20 74 65 73 74 20 2d   do....if test -
0120: 66 20 22 24 7b 64 69 72 7d 2f 74 63 6c 43 6f 6e  f "${dir}/tclCon
0130: 66 69 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09  fig.sh"; then...
0140: 09 09 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72  ..tclconfigshdir
0150: 3d 22 24 7b 64 69 72 7d 22 0a 09 09 09 09 74 63  ="${dir}".....tc
0160: 6c 63 6f 6e 66 69 67 73 68 3d 22 24 7b 74 63 6c  lconfigsh="${tcl
0170: 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74 63 6c  configshdir}/tcl
0180: 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 62  Config.sh".....b
0190: 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69 66  reak....fi....if
01a0: 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 7d   test -f "${dir}
01b0: 2f 2e 2e 2f 6c 69 62 2f 74 63 6c 43 6f 6e 66 69  /../lib/tclConfi
01c0: 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 09  g.sh"; then.....
01d0: 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 3d 22  tclconfigshdir="
01e0: 24 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 22 0a 09  ${dir}/../lib"..
01f0: 09 09 09 74 63 6c 63 6f 6e 66 69 67 73 68 3d 22  ...tclconfigsh="
0200: 24 7b 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72  ${tclconfigshdir
0210: 7d 2f 74 63 6c 43 6f 6e 66 69 67 2e 73 68 22 0a  }/tclConfig.sh".
0220: 09 09 09 09 62 72 65 61 6b 0a 09 09 09 66 69 0a  ....break....fi.
0230: 09 09 09 69 66 20 74 65 73 74 20 2d 66 20 22 24  ...if test -f "$
0240: 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 36 34 2f 74  {dir}/../lib64/t
0250: 63 6c 43 6f 6e 66 69 67 2e 73 68 22 3b 20 74 68  clConfig.sh"; th
0260: 65 6e 0a 09 09 09 09 74 63 6c 63 6f 6e 66 69 67  en.....tclconfig
0270: 73 68 64 69 72 3d 22 24 7b 64 69 72 7d 2f 2e 2e  shdir="${dir}/..
0280: 2f 6c 69 62 36 34 22 0a 09 09 09 09 74 63 6c 63  /lib64".....tclc
0290: 6f 6e 66 69 67 73 68 3d 22 24 7b 74 63 6c 63 6f  onfigsh="${tclco
02a0: 6e 66 69 67 73 68 64 69 72 7d 2f 74 63 6c 43 6f  nfigshdir}/tclCo
02b0: 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 62 72 65  nfig.sh".....bre
02c0: 61 6b 0a 09 09 09 66 69 0a 09 09 64 6f 6e 65 0a  ak....fi...done.
02d0: 0a 09 09 69 66 20 74 65 73 74 20 2d 7a 20 22 24  ...if test -z "$
02e0: 7b 74 63 6c 63 6f 6e 66 69 67 73 68 7d 22 3b 20  {tclconfigsh}"; 
02f0: 74 68 65 6e 0a 09 09 09 41 43 5f 4d 53 47 5f 45  then....AC_MSG_E
0300: 52 52 4f 52 28 5b 55 6e 61 62 6c 65 20 74 6f 20  RROR([Unable to 
0310: 66 69 6e 64 20 74 63 6c 43 6f 6e 66 69 67 2e 73  find tclConfig.s
0320: 68 5d 29 0a 09 09 66 69 0a 09 65 6c 73 65 0a 09  h])...fi..else..
0330: 09 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 3d  .tclconfigshdir=
0340: 22 24 7b 77 69 74 68 5f 74 63 6c 7d 22 0a 09 09  "${with_tcl}"...
0350: 74 63 6c 63 6f 6e 66 69 67 73 68 3d 22 24 7b 74  tclconfigsh="${t
0360: 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74  clconfigshdir}/t
0370: 63 6c 43 6f 6e 66 69 67 2e 73 68 22 0a 09 66 69  clConfig.sh"..fi
0380: 0a 0a 09 69 66 20 74 65 73 74 20 2d 66 20 22 24  ...if test -f "$
0390: 7b 74 63 6c 63 6f 6e 66 69 67 73 68 7d 22 3b 20  {tclconfigsh}"; 
03a0: 74 68 65 6e 0a 09 09 2e 20 22 24 7b 74 63 6c 63  then.... "${tclc
03b0: 6f 6e 66 69 67 73 68 7d 22 0a 0a 09 09 43 46 4c  onfigsh}"....CFL
03c0: 41 47 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 24  AGS="${CFLAGS} $
03d0: 7b 54 43 4c 5f 49 4e 43 4c 55 44 45 5f 53 50 45  {TCL_INCLUDE_SPE
03e0: 43 7d 20 2d 49 24 7b 54 43 4c 5f 53 52 43 5f 44  C} -I${TCL_SRC_D
03f0: 49 52 7d 2f 67 65 6e 65 72 69 63 20 2d 49 24 7b  IR}/generic -I${
0400: 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 7d 22  tclconfigshdir}"
0410: 0a 09 09 43 50 50 46 4c 41 47 53 3d 22 24 7b 43  ...CPPFLAGS="${C
0420: 50 50 46 4c 41 47 53 7d 20 24 7b 54 43 4c 5f 49  PPFLAGS} ${TCL_I
0430: 4e 43 4c 55 44 45 5f 53 50 45 43 7d 20 2d 49 24  NCLUDE_SPEC} -I$
0440: 7b 54 43 4c 5f 53 52 43 5f 44 49 52 7d 2f 67 65  {TCL_SRC_DIR}/ge
0450: 6e 65 72 69 63 20 2d 49 24 7b 74 63 6c 63 6f 6e  neric -I${tclcon
0460: 66 69 67 73 68 64 69 72 7d 22 0a 09 09 4c 49 42  figshdir}"...LIB
0470: 53 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 54 43 4c  S="${LIBS} ${TCL
0480: 5f 4c 49 42 53 7d 22 0a 0a 09 09 4b 49 54 44 4c  _LIBS}"....KITDL
0490: 4c 5f 4c 49 42 5f 56 45 52 53 49 4f 4e 3d 60 65  L_LIB_VERSION=`e
04a0: 63 68 6f 20 22 24 7b 54 43 4c 5f 56 45 52 53 49  cho "${TCL_VERSI
04b0: 4f 4e 7d 24 7b 54 43 4c 5f 50 41 54 43 48 5f 4c  ON}${TCL_PATCH_L
04c0: 45 56 45 4c 7d 22 20 7c 20 73 65 64 20 27 73 40  EVEL}" | sed 's@
04d0: 5c 2e 40 40 67 27 60 0a 09 66 69 0a 0a 09 41 43  \.@@g'`..fi...AC
04e0: 5f 53 55 42 53 54 28 43 46 4c 41 47 53 29 0a 09  _SUBST(CFLAGS)..
04f0: 41 43 5f 53 55 42 53 54 28 43 50 50 46 4c 41 47  AC_SUBST(CPPFLAG
0500: 53 29 0a 09 41 43 5f 53 55 42 53 54 28 4c 49 42  S)..AC_SUBST(LIB
0510: 53 29 0a 09 41 43 5f 53 55 42 53 54 28 4b 49 54  S)..AC_SUBST(KIT
0520: 44 4c 4c 5f 4c 49 42 5f 56 45 52 53 49 4f 4e 29  DLL_LIB_VERSION)
0530: 0a 0a 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54  ...AC_MSG_RESULT
0540: 28 5b 24 74 63 6c 63 6f 6e 66 69 67 73 68 5d 29  ([$tclconfigsh])
0550: 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43  .])..AC_DEFUN(DC
0560: 5f 44 4f 5f 54 4b 2c 20 5b 0a 09 41 43 5f 4d 53  _DO_TK, [..AC_MS
0570: 47 5f 43 48 45 43 4b 49 4e 47 28 5b 70 61 74 68  G_CHECKING([path
0580: 20 74 6f 20 74 6b 5d 29 0a 09 41 43 5f 41 52 47   to tk])..AC_ARG
0590: 5f 57 49 54 48 28 74 6b 2c 20 41 43 5f 48 45 4c  _WITH(tk, AC_HEL
05a0: 50 5f 53 54 52 49 4e 47 28 5b 2d 2d 77 69 74 68  P_STRING([--with
05b0: 2d 74 6b 5d 2c 20 5b 64 69 72 65 63 74 6f 72 79  -tk], [directory
05c0: 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 6b 20 63   containing tk c
05d0: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 74 6b  onfiguration (tk
05e0: 43 6f 6e 66 69 67 2e 73 68 29 5d 29 2c 20 5b 5d  Config.sh)]), []
05f0: 2c 20 5b 0a 09 09 77 69 74 68 5f 74 6b 3d 22 61  , [...with_tk="a
0600: 75 74 6f 22 0a 09 5d 29 0a 0a 09 69 66 20 74 65  uto"..])...if te
0610: 73 74 20 22 24 7b 77 69 74 68 5f 74 6b 7d 22 20  st "${with_tk}" 
0620: 3d 20 22 61 75 74 6f 22 3b 20 74 68 65 6e 0a 09  = "auto"; then..
0630: 09 66 6f 72 20 64 69 72 20 69 6e 20 2e 2e 2f 2e  .for dir in ../.
0640: 2e 2f 2e 2e 2f 74 6b 2f 62 75 69 6c 64 2f 74 6b  ./../tk/build/tk
0650: 2a 2f 2a 2f 20 60 65 63 68 6f 20 22 24 7b 50 41  */*/ `echo "${PA
0660: 54 48 7d 22 20 7c 20 73 65 64 20 27 73 40 3a 40  TH}" | sed 's@:@
0670: 20 40 67 27 60 3b 20 64 6f 0a 09 09 09 69 66 20   @g'`; do....if 
0680: 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 7d 2f  test -f "${dir}/
0690: 74 6b 43 6f 6e 66 69 67 2e 73 68 22 3b 20 74 68  tkConfig.sh"; th
06a0: 65 6e 0a 09 09 09 09 74 6b 63 6f 6e 66 69 67 73  en.....tkconfigs
06b0: 68 64 69 72 3d 22 24 7b 64 69 72 7d 22 0a 09 09  hdir="${dir}"...
06c0: 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24 7b  ..tkconfigsh="${
06d0: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74  tkconfigshdir}/t
06e0: 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09  kConfig.sh".....
06f0: 62 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69  break....fi....i
0700: 66 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72  f test -f "${dir
0710: 7d 2f 2e 2e 2f 6c 69 62 2f 74 6b 43 6f 6e 66 69  }/../lib/tkConfi
0720: 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 09  g.sh"; then.....
0730: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 3d 22 24  tkconfigshdir="$
0740: 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 22 0a 09 09  {dir}/../lib"...
0750: 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24 7b  ..tkconfigsh="${
0760: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74  tkconfigshdir}/t
0770: 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09  kConfig.sh".....
0780: 62 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69  break....fi....i
0790: 66 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72  f test -f "${dir
07a0: 7d 2f 2e 2e 2f 6c 69 62 36 34 2f 74 6b 43 6f 6e  }/../lib64/tkCon
07b0: 66 69 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09  fig.sh"; then...
07c0: 09 09 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 3d  ..tkconfigshdir=
07d0: 22 24 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 36 34  "${dir}/../lib64
07e0: 22 0a 09 09 09 09 74 6b 63 6f 6e 66 69 67 73 68  ".....tkconfigsh
07f0: 3d 22 24 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69  ="${tkconfigshdi
0800: 72 7d 2f 74 6b 43 6f 6e 66 69 67 2e 73 68 22 0a  r}/tkConfig.sh".
0810: 09 09 09 09 62 72 65 61 6b 0a 09 09 09 66 69 0a  ....break....fi.
0820: 09 09 64 6f 6e 65 0a 0a 09 09 69 66 20 74 65 73  ..done....if tes
0830: 74 20 2d 7a 20 22 24 7b 74 6b 63 6f 6e 66 69 67  t -z "${tkconfig
0840: 73 68 7d 22 3b 20 74 68 65 6e 0a 09 09 09 41 43  sh}"; then....AC
0850: 5f 4d 53 47 5f 45 52 52 4f 52 28 5b 55 6e 61 62  _MSG_ERROR([Unab
0860: 6c 65 20 74 6f 20 66 69 6e 64 20 74 6b 43 6f 6e  le to find tkCon
0870: 66 69 67 2e 73 68 5d 29 0a 09 09 66 69 0a 09 65  fig.sh])...fi..e
0880: 6c 73 65 0a 09 09 74 6b 63 6f 6e 66 69 67 73 68  lse...tkconfigsh
0890: 64 69 72 3d 22 24 7b 77 69 74 68 5f 74 6b 7d 22  dir="${with_tk}"
08a0: 0a 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24  ...tkconfigsh="$
08b0: 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f  {tkconfigshdir}/
08c0: 74 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 66 69  tkConfig.sh"..fi
08d0: 0a 0a 09 69 66 20 74 65 73 74 20 2d 66 20 22 24  ...if test -f "$
08e0: 7b 74 6b 63 6f 6e 66 69 67 73 68 7d 22 3b 20 74  {tkconfigsh}"; t
08f0: 68 65 6e 0a 09 09 2e 20 22 24 7b 74 6b 63 6f 6e  hen.... "${tkcon
0900: 66 69 67 73 68 7d 22 0a 0a 09 09 43 46 4c 41 47  figsh}"....CFLAG
0910: 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 24 7b 54  S="${CFLAGS} ${T
0920: 4b 5f 49 4e 43 4c 55 44 45 5f 53 50 45 43 7d 20  K_INCLUDE_SPEC} 
0930: 2d 49 24 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69  -I${tkconfigshdi
0940: 72 7d 20 2d 49 24 7b 54 4b 5f 53 52 43 5f 44 49  r} -I${TK_SRC_DI
0950: 52 7d 2f 67 65 6e 65 72 69 63 20 2d 49 24 7b 54  R}/generic -I${T
0960: 4b 5f 53 52 43 5f 44 49 52 7d 2f 78 6c 69 62 22  K_SRC_DIR}/xlib"
0970: 0a 09 09 43 50 50 46 4c 41 47 53 3d 22 24 7b 43  ...CPPFLAGS="${C
0980: 50 50 46 4c 41 47 53 7d 20 24 7b 54 4b 5f 49 4e  PPFLAGS} ${TK_IN
0990: 43 4c 55 44 45 5f 53 50 45 43 7d 20 2d 49 24 7b  CLUDE_SPEC} -I${
09a0: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 20 2d  tkconfigshdir} -
09b0: 49 24 7b 54 4b 5f 53 52 43 5f 44 49 52 7d 2f 67  I${TK_SRC_DIR}/g
09c0: 65 6e 65 72 69 63 20 2d 49 24 7b 54 4b 5f 53 52  eneric -I${TK_SR
09d0: 43 5f 44 49 52 7d 2f 78 6c 69 62 22 0a 09 09 4c  C_DIR}/xlib"...L
09e0: 49 42 53 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 54  IBS="${LIBS} ${T
09f0: 4b 5f 4c 49 42 53 7d 22 0a 0a 09 09 4e 45 57 4c  K_LIBS}"....NEWL
0a00: 49 42 53 3d 22 22 0a 09 09 66 6f 72 20 6c 69 62  IBS=""...for lib
0a10: 20 69 6e 20 24 7b 4c 49 42 53 7d 3b 20 64 6f 0a   in ${LIBS}; do.
0a20: 09 09 09 69 66 20 65 63 68 6f 20 22 24 7b 6c 69  ...if echo "${li
0a30: 62 7d 22 20 7c 20 67 72 65 70 20 27 5e 2d 6c 27  b}" | grep '^-l'
0a40: 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65   >/dev/null; the
0a50: 6e 0a 09 09 09 09 69 66 20 65 63 68 6f 20 22 20  n.....if echo " 
0a60: 24 7b 4e 45 57 4c 49 42 53 7d 20 22 20 7c 20 67  ${NEWLIBS} " | g
0a70: 72 65 70 20 22 20 24 7b 6c 69 62 7d 20 22 20 3e  rep " ${lib} " >
0a80: 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a  /dev/null; then.
0a90: 09 09 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09  .....continue...
0aa0: 09 09 66 69 0a 09 09 09 66 69 0a 0a 09 09 09 4e  ..fi....fi.....N
0ab0: 45 57 4c 49 42 53 3d 22 24 7b 4e 45 57 4c 49 42  EWLIBS="${NEWLIB
0ac0: 53 7d 20 24 7b 6c 69 62 7d 22 0a 09 09 64 6f 6e  S} ${lib}"...don
0ad0: 65 0a 09 09 4c 49 42 53 3d 22 24 7b 4e 45 57 4c  e...LIBS="${NEWL
0ae0: 49 42 53 7d 22 0a 09 09 75 6e 73 65 74 20 4e 45  IBS}"...unset NE
0af0: 57 4c 49 42 53 0a 09 66 69 0a 0a 09 41 43 5f 53  WLIBS..fi...AC_S
0b00: 55 42 53 54 28 43 46 4c 41 47 53 29 0a 09 41 43  UBST(CFLAGS)..AC
0b10: 5f 53 55 42 53 54 28 43 50 50 46 4c 41 47 53 29  _SUBST(CPPFLAGS)
0b20: 0a 09 41 43 5f 53 55 42 53 54 28 4c 49 42 53 29  ..AC_SUBST(LIBS)
0b30: 0a 0a 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54  ...AC_MSG_RESULT
0b40: 28 5b 24 74 6b 63 6f 6e 66 69 67 73 68 5d 29 0a  ([$tkconfigsh]).
0b50: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f  ])..AC_DEFUN(DC_
0b60: 44 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b 5f 4c  DO_STATIC_LINK_L
0b70: 49 42 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48  IB, [..AC_MSG_CH
0b80: 45 43 4b 49 4e 47 28 5b 66 6f 72 20 68 6f 77 20  ECKING([for how 
0b90: 74 6f 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 69  to statically li
0ba0: 6e 6b 20 74 6f 20 24 31 5d 29 0a 0a 09 53 41 56  nk to $1])...SAV
0bb0: 45 4c 49 42 53 3d 22 24 7b 4c 49 42 53 7d 22 0a  ELIBS="${LIBS}".
0bc0: 09 73 74 61 74 69 63 6c 69 62 3d 22 22 0a 09 66  .staticlib=""..f
0bd0: 6f 75 6e 64 3d 22 30 22 0a 09 64 6e 6c 20 48 50  ound="0"..dnl HP
0be0: 2f 55 58 20 75 73 65 73 20 2d 57 6c 2c 2d 61 2c  /UX uses -Wl,-a,
0bf0: 61 72 63 68 69 76 65 20 2d 6c 73 74 64 63 2b 2b  archive -lstdc++
0c00: 20 2d 57 6c 2c 2d 61 2c 73 68 61 72 65 64 5f 61   -Wl,-a,shared_a
0c10: 72 63 68 69 76 65 0a 09 64 6e 6c 20 4c 69 6e 75  rchive..dnl Linu
0c20: 78 20 61 6e 64 20 53 6f 6c 61 72 69 73 20 75 73  x and Solaris us
0c30: 20 2d 57 6c 2c 2d 42 73 74 61 74 69 63 20 2e 2e   -Wl,-Bstatic ..
0c40: 2e 20 2d 57 6c 2c 2d 42 64 79 6e 61 6d 69 63 0a  . -Wl,-Bdynamic.
0c50: 09 66 6f 72 20 74 72 79 6c 69 6e 6b 20 69 6e 20  .for trylink in 
0c60: 22 2d 57 6c 2c 2d 61 2c 61 72 63 68 69 76 65 20  "-Wl,-a,archive 
0c70: 24 32 20 2d 57 6c 2c 2d 61 2c 73 68 61 72 65 64  $2 -Wl,-a,shared
0c80: 5f 61 72 63 68 69 76 65 22 20 22 2d 57 6c 2c 2d  _archive" "-Wl,-
0c90: 42 73 74 61 74 69 63 20 24 32 20 2d 57 6c 2c 2d  Bstatic $2 -Wl,-
0ca0: 42 64 79 6e 61 6d 69 63 22 20 22 24 32 22 3b 20  Bdynamic" "$2"; 
0cb0: 64 6f 0a 09 09 69 66 20 65 63 68 6f 20 22 20 24  do...if echo " $
0cc0: 7b 4c 44 46 4c 41 47 53 7d 20 22 20 7c 20 67 72  {LDFLAGS} " | gr
0cd0: 65 70 20 27 20 2d 73 74 61 74 69 63 20 27 20 3e  ep ' -static ' >
0ce0: 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a  /dev/null; then.
0cf0: 09 09 09 69 66 20 74 65 73 74 20 22 24 7b 74 72  ...if test "${tr
0d00: 79 6c 69 6e 6b 7d 22 20 21 3d 20 22 24 32 22 3b  ylink}" != "$2";
0d10: 20 74 68 65 6e 0a 09 09 09 09 63 6f 6e 74 69 6e   then.....contin
0d20: 75 65 0a 09 09 09 66 69 0a 09 09 66 69 0a 0a 09  ue....fi...fi...
0d30: 09 4c 49 42 53 3d 22 24 7b 53 41 56 45 4c 49 42  .LIBS="${SAVELIB
0d40: 53 7d 20 24 7b 74 72 79 6c 69 6e 6b 7d 22 0a 0a  S} ${trylink}"..
0d50: 09 09 41 43 5f 4c 49 4e 4b 5f 49 46 45 4c 53 45  ..AC_LINK_IFELSE
0d60: 28 41 43 5f 4c 41 4e 47 5f 50 52 4f 47 52 41 4d  (AC_LANG_PROGRAM
0d70: 28 5b 5d 2c 20 5b 5d 29 2c 20 5b 0a 09 09 09 73  ([], []), [....s
0d80: 74 61 74 69 63 6c 69 62 3d 22 24 7b 74 72 79 6c  taticlib="${tryl
0d90: 69 6e 6b 7d 22 0a 09 09 09 66 6f 75 6e 64 3d 22  ink}"....found="
0da0: 31 22 0a 0a 09 09 09 62 72 65 61 6b 0a 09 09 5d  1".....break...]
0db0: 29 0a 09 64 6f 6e 65 0a 0a 09 69 66 20 74 65 73  )..done...if tes
0dc0: 74 20 22 24 7b 66 6f 75 6e 64 7d 22 20 3d 20 22  t "${found}" = "
0dd0: 31 22 3b 20 74 68 65 6e 0a 09 09 53 41 56 45 4c  1"; then...SAVEL
0de0: 49 42 53 3d 60 65 63 68 6f 20 22 24 53 41 56 45  IBS=`echo "$SAVE
0df0: 4c 49 42 53 22 20 7c 20 73 65 64 20 27 73 40 20  LIBS" | sed 's@ 
0e00: 24 32 20 40 20 40 27 60 0a 09 09 4c 49 42 53 3d  $2 @ @'`...LIBS=
0e10: 22 24 7b 53 41 56 45 4c 49 42 53 7d 20 24 7b 73  "${SAVELIBS} ${s
0e20: 74 61 74 69 63 6c 69 62 7d 22 0a 0a 09 09 41 43  taticlib}"....AC
0e30: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 5b 24 7b 73  _MSG_RESULT([${s
0e40: 74 61 74 69 63 6c 69 62 7d 5d 29 0a 0a 09 09 41  taticlib}])....A
0e50: 43 5f 53 55 42 53 54 28 4c 49 42 53 29 0a 0a 09  C_SUBST(LIBS)...
0e60: 09 24 33 0a 09 65 6c 73 65 0a 09 09 4c 49 42 53  .$3..else...LIBS
0e70: 3d 22 24 7b 53 41 56 45 4c 49 42 53 7d 22 0a 0a  ="${SAVELIBS}"..
0e80: 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28  ..AC_MSG_RESULT(
0e90: 5b 63 61 6e 74 5d 29 0a 0a 09 09 24 34 0a 09 66  [cant])....$4..f
0ea0: 69 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44  i.])..AC_DEFUN(D
0eb0: 43 5f 44 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b  C_DO_STATIC_LINK
0ec0: 5f 4c 49 42 43 58 58 2c 20 5b 0a 09 64 6e 6c 20  _LIBCXX, [..dnl 
0ed0: 53 75 6e 20 53 74 75 64 69 6f 20 75 73 65 73 20  Sun Studio uses 
0ee0: 2d 6c 43 73 74 64 20 2d 6c 43 72 75 6e 2c 20 6d  -lCstd -lCrun, m
0ef0: 6f 73 74 20 70 6c 61 74 66 6f 72 6d 73 20 75 73  ost platforms us
0f00: 65 20 2d 6c 73 74 64 63 2b 2b 0a 09 44 43 5f 44  e -lstdc++..DC_D
0f10: 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b 5f 4c 49  O_STATIC_LINK_LI
0f20: 42 28 5b 43 2b 2b 20 4c 69 62 72 61 72 79 20 28  B([C++ Library (
0f30: 53 75 6e 20 53 74 75 64 69 6f 29 5d 2c 20 5b 2d  Sun Studio)], [-
0f40: 6c 43 73 74 64 20 2d 6c 43 72 75 6e 5d 2c 2c 20  lCstd -lCrun],, 
0f50: 5b 0a 09 09 44 43 5f 44 4f 5f 53 54 41 54 49 43  [...DC_DO_STATIC
0f60: 5f 4c 49 4e 4b 5f 4c 49 42 28 5b 43 2b 2b 20 4c  _LINK_LIB([C++ L
0f70: 69 62 72 61 72 79 20 28 55 4e 49 58 29 5d 2c 20  ibrary (UNIX)], 
0f80: 5b 2d 6c 73 74 64 63 2b 2b 5d 29 0a 09 5d 29 0a  [-lstdc++])..]).
0f90: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f  ])..AC_DEFUN(DC_
0fa0: 46 49 4e 44 5f 54 43 4c 4b 49 54 5f 4c 49 42 53  FIND_TCLKIT_LIBS
0fb0: 2c 20 5b 0a 09 44 43 5f 53 45 54 55 50 5f 54 43  , [..DC_SETUP_TC
0fc0: 4c 5f 50 4c 41 54 5f 44 45 46 53 0a 0a 09 64 6e  L_PLAT_DEFS...dn
0fd0: 6c 20 57 65 20 77 69 6c 6c 20 6e 65 65 64 20 74  l We will need t
0fe0: 68 69 73 20 66 6f 72 20 74 68 65 20 54 63 6c 20  his for the Tcl 
0ff0: 70 72 6f 6a 65 63 74 2c 20 77 68 69 63 68 20 77  project, which w
1000: 65 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 68 61  e will always ha
1010: 76 65 0a 09 44 43 5f 43 48 45 43 4b 5f 46 4f 52  ve..DC_CHECK_FOR
1020: 5f 57 48 4f 4c 45 5f 41 52 43 48 49 56 45 0a 0a  _WHOLE_ARCHIVE..
1030: 09 65 63 68 6f 20 27 2f 2a 20 44 79 6e 61 6d 69  .echo '/* Dynami
1040: 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e  cally generated.
1050: 20 2a 2f 27 20 3e 20 6b 69 74 49 6e 69 74 2d 6c   */' > kitInit-l
1060: 69 62 73 2e 68 0a 09 6c 69 62 73 5f 69 6e 69 74  ibs.h..libs_init
1070: 5f 66 75 6e 63 73 3d 22 22 0a 0a 09 66 6f 72 20  _funcs=""...for 
1080: 70 72 6f 6a 64 69 72 20 69 6e 20 2e 2e 2f 2e 2e  projdir in ../..
1090: 2f 2e 2e 2f 2a 2f 3b 20 64 6f 0a 09 09 70 72 6f  /../*/; do...pro
10a0: 6a 3d 22 60 62 61 73 65 6e 61 6d 65 20 22 24 7b  j="`basename "${
10b0: 70 72 6f 6a 64 69 72 7d 22 60 22 0a 09 09 73 75  projdir}"`"...su
10c0: 62 70 72 6f 6a 73 3d 22 24 70 72 6f 6a 22 0a 0a  bprojs="$proj"..
10d0: 09 09 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f  ..if test "${pro
10e0: 6a 7d 22 20 3d 20 22 62 75 69 6c 64 22 3b 20 74  j}" = "build"; t
10f0: 68 65 6e 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a  hen....continue.
1100: 09 09 66 69 0a 0a 09 09 69 66 20 74 65 73 74 20  ..fi....if test 
1110: 22 24 7b 70 72 6f 6a 7d 22 20 3d 20 22 6b 69 74  "${proj}" = "kit
1120: 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 63 6f 6e  sh"; then....con
1130: 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 69 66  tinue...fi....if
1140: 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20   test "${proj}" 
1150: 3d 20 22 63 6f 6d 6d 6f 6e 22 3b 20 74 68 65 6e  = "common"; then
1160: 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 66  ....continue...f
1170: 69 0a 0a 09 09 70 72 6f 6a 6c 69 62 64 69 72 3d  i....projlibdir=
1180: 22 2e 2e 2f 2e 2e 2f 2e 2e 2f 24 7b 70 72 6f 6a  "../../../${proj
1190: 7d 2f 69 6e 73 74 22 0a 0a 09 09 69 66 20 74 65  }/inst"....if te
11a0: 73 74 20 2d 64 20 22 24 7b 70 72 6f 6a 6c 69 62  st -d "${projlib
11b0: 64 69 72 7d 22 3b 20 74 68 65 6e 0a 09 09 09 74  dir}"; then....t
11c0: 72 75 65 0a 09 09 65 6c 73 65 0a 09 09 09 63 6f  rue...else....co
11d0: 6e 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 41  ntinue...fi....A
11e0: 43 5f 4d 53 47 5f 43 48 45 43 4b 49 4e 47 28 5b  C_MSG_CHECKING([
11f0: 66 6f 72 20 6c 69 62 72 61 72 69 65 73 20 72 65  for libraries re
1200: 71 75 69 72 65 64 20 66 6f 72 20 24 7b 70 72 6f  quired for ${pro
1210: 6a 7d 5d 29 0a 0a 09 09 70 72 6f 6a 6c 69 62 66  j}])....projlibf
1220: 69 6c 65 73 3d 22 60 66 69 6e 64 20 22 24 7b 70  iles="`find "${p
1230: 72 6f 6a 6c 69 62 64 69 72 7d 22 20 2d 6e 61 6d  rojlibdir}" -nam
1240: 65 20 27 2a 2e 61 27 20 32 3e 2f 64 65 76 2f 6e  e '*.a' 2>/dev/n
1250: 75 6c 6c 20 7c 20 73 6f 72 74 60 22 0a 09 09 70  ull | sort`"...p
1260: 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65 3d 22  rojexcludefile="
1270: 24 7b 70 72 6f 6a 6c 69 62 64 69 72 7d 2f 6b 69  ${projlibdir}/ki
1280: 74 63 72 65 61 74 6f 72 2d 6e 6f 6c 69 62 73 22  tcreator-nolibs"
1290: 0a 09 09 69 66 20 74 65 73 74 20 2d 65 20 22 24  ...if test -e "$
12a0: 7b 70 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65  {projexcludefile
12b0: 7d 22 3b 20 74 68 65 6e 0a 09 09 09 70 72 6f 6a  }"; then....proj
12c0: 65 78 63 6c 75 64 65 3d 22 60 63 61 74 20 22 24  exclude="`cat "$
12d0: 70 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65 22  projexcludefile"
12e0: 60 22 0a 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c  `"....projlibfil
12f0: 65 73 3d 22 60 65 63 68 6f 20 22 24 70 72 6f 6a  es="`echo "$proj
1300: 6c 69 62 66 69 6c 65 73 22 20 7c 20 65 67 72 65  libfiles" | egre
1310: 70 20 2d 76 20 22 24 70 72 6f 6a 65 78 63 6c 75  p -v "$projexclu
1320: 64 65 22 60 22 0a 09 09 66 69 0a 0a 09 09 70 72  de"`"...fi....pr
1330: 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62  ojlibfilesnostub
1340: 3d 22 60 65 63 68 6f 20 22 24 70 72 6f 6a 6c 69  ="`echo "$projli
1350: 62 66 69 6c 65 73 22 20 7c 20 67 72 65 70 20 2d  bfiles" | grep -
1360: 76 20 27 73 74 75 62 27 20 7c 20 74 72 20 22 5c  v 'stub' | tr "\
1370: 6e 22 20 27 20 27 60 22 0a 09 09 70 72 6f 6a 6c  n" ' '`"...projl
1380: 69 62 66 69 6c 65 73 3d 22 60 65 63 68 6f 20 22  ibfiles="`echo "
1390: 24 70 72 6f 6a 6c 69 62 66 69 6c 65 73 22 20 7c  $projlibfiles" |
13a0: 20 74 72 20 22 5c 6e 22 20 27 20 27 60 22 0a 09   tr "\n" ' '`"..
13b0: 09 70 72 6f 6a 6c 69 62 65 78 74 72 61 3d 22 22  .projlibextra=""
13c0: 0a 0a 09 09 69 66 20 74 65 73 74 20 22 24 70 72  ....if test "$pr
13d0: 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62  ojlibfilesnostub
13e0: 22 20 3d 20 27 20 27 3b 20 74 68 65 6e 0a 09 09  " = ' '; then...
13f0: 09 70 72 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73  .projlibfilesnos
1400: 74 75 62 3d 27 27 0a 09 09 66 69 0a 0a 09 09 69  tub=''...fi....i
1410: 66 20 74 65 73 74 20 22 24 70 72 6f 6a 6c 69 62  f test "$projlib
1420: 66 69 6c 65 73 22 20 3d 20 27 20 27 3b 20 74 68  files" = ' '; th
1430: 65 6e 0a 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c  en....projlibfil
1440: 65 73 3d 27 27 0a 09 09 66 69 0a 0a 09 09 70 72  es=''...fi....pr
1450: 6f 6a 6c 69 62 65 78 74 72 61 5f 73 74 61 74 69  ojlibextra_stati
1460: 63 3d 27 27 0a 09 09 66 6f 72 20 6c 69 62 66 69  c=''...for libfi
1470: 6c 65 20 69 6e 20 24 7b 70 72 6f 6a 6c 69 62 66  le in ${projlibf
1480: 69 6c 65 73 6e 6f 73 74 75 62 7d 3b 20 64 6f 0a  ilesnostub}; do.
1490: 09 09 09 69 66 20 74 65 73 74 20 2d 66 20 22 24  ...if test -f "$
14a0: 7b 6c 69 62 66 69 6c 65 7d 2e 6c 69 6e 6b 61 64  {libfile}.linkad
14b0: 64 22 3b 20 74 68 65 6e 0a 09 09 09 09 70 72 6f  d"; then.....pro
14c0: 6a 6c 69 62 65 78 74 72 61 3d 22 60 63 61 74 20  jlibextra="`cat 
14d0: 22 24 7b 6c 69 62 66 69 6c 65 7d 2e 6c 69 6e 6b  "${libfile}.link
14e0: 61 64 64 22 60 22 0a 0a 09 09 09 09 64 6e 6c 20  add"`"......dnl 
14f0: 52 65 70 6c 61 63 65 20 73 74 61 74 69 63 20 6c  Replace static l
1500: 69 6e 6b 69 6e 67 20 72 65 71 75 65 73 74 73 20  inking requests 
1510: 77 69 74 68 20 74 68 65 20 61 70 70 72 6f 70 72  with the appropr
1520: 69 61 74 65 20 76 61 6c 75 65 73 0a 09 09 09 09  iate values.....
1530: 69 66 20 65 63 68 6f 20 22 24 7b 70 72 6f 6a 6c  if echo "${projl
1540: 69 62 65 78 74 72 61 7d 22 20 7c 20 67 72 65 70  ibextra}" | grep
1550: 20 27 5e 23 53 54 41 54 49 43 20 27 20 3e 2f 64   '^#STATIC ' >/d
1560: 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09  ev/null; then...
1570: 09 09 09 70 72 6f 6a 6c 69 62 65 78 74 72 61 5f  ...projlibextra_
1580: 73 74 61 74 69 63 3d 22 24 7b 70 72 6f 6a 6c 69  static="${projli
1590: 62 65 78 74 72 61 5f 73 74 61 74 69 63 7d 20 60  bextra_static} `
15a0: 65 63 68 6f 20 22 24 7b 70 72 6f 6a 6c 69 62 65  echo "${projlibe
15b0: 78 74 72 61 7d 22 20 7c 20 73 65 64 20 27 73 40  xtra}" | sed 's@
15c0: 5e 23 53 54 41 54 49 43 20 40 40 27 60 22 0a 09  ^#STATIC @@'`"..
15d0: 09 09 09 09 70 72 6f 6a 6c 69 62 65 78 74 72 61  ....projlibextra
15e0: 3d 27 27 0a 09 09 09 09 66 69 0a 09 09 09 66 69  =''.....fi....fi
15f0: 0a 09 09 64 6f 6e 65 0a 0a 09 09 41 43 5f 4d 53  ...done....AC_MS
1600: 47 5f 52 45 53 55 4c 54 28 5b 24 7b 70 72 6f 6a  G_RESULT([${proj
1610: 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 7d 20  libfilesnostub} 
1620: 24 7b 70 72 6f 6a 6c 69 62 65 78 74 72 61 7d 5d  ${projlibextra}]
1630: 29 0a 0a 09 09 69 66 20 5b 20 2d 6e 20 22 24 7b  )....if [ -n "${
1640: 70 72 6f 6a 6c 69 62 65 78 74 72 61 5f 73 74 61  projlibextra_sta
1650: 74 69 63 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09  tic}" ]; then...
1660: 09 44 43 5f 44 4f 5f 53 54 41 54 49 43 5f 4c 49  .DC_DO_STATIC_LI
1670: 4e 4b 5f 4c 49 42 28 5b 41 64 64 69 74 69 6f 6e  NK_LIB([Addition
1680: 61 6c 20 6c 69 62 72 61 72 69 65 73 20 66 6f 72  al libraries for
1690: 20 24 7b 70 72 6f 6a 7d 5d 2c 20 24 7b 70 72 6f   ${proj}], ${pro
16a0: 6a 6c 69 62 65 78 74 72 61 5f 73 74 61 74 69 63  jlibextra_static
16b0: 7d 29 0a 09 09 66 69 0a 0a 09 09 68 69 64 65 5f  })...fi....hide_
16c0: 73 79 6d 62 6f 6c 73 3d 22 31 22 0a 0a 09 09 69  symbols="1"....i
16d0: 66 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22  f test "${proj}"
16e0: 20 3d 20 22 74 63 6c 22 3b 20 74 68 65 6e 0a 09   = "tcl"; then..
16f0: 09 09 44 43 5f 54 45 53 54 5f 57 48 4f 4c 45 5f  ..DC_TEST_WHOLE_
1700: 41 52 43 48 49 56 45 5f 53 48 41 52 45 44 5f 4c  ARCHIVE_SHARED_L
1710: 49 42 28 5b 24 41 52 43 48 53 20 24 70 72 6f 6a  IB([$ARCHS $proj
1720: 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 5d 2c  libfilesnostub],
1730: 20 5b 0a 09 09 09 09 70 72 6f 6a 6c 69 62 66 69   [.....projlibfi
1740: 6c 65 73 3d 22 24 7b 70 72 6f 6a 6c 69 62 66 69  les="${projlibfi
1750: 6c 65 73 6e 6f 73 74 75 62 7d 22 0a 09 09 09 5d  lesnostub}"....]
1760: 2c 20 5b 0a 09 09 09 09 44 43 5f 54 45 53 54 5f  , [.....DC_TEST_
1770: 57 48 4f 4c 45 5f 41 52 43 48 49 56 45 5f 53 48  WHOLE_ARCHIVE_SH
1780: 41 52 45 44 5f 4c 49 42 28 5b 24 41 52 43 48 53  ARED_LIB([$ARCHS
1790: 20 24 70 72 6f 6a 6c 69 62 66 69 6c 65 73 5d 2c   $projlibfiles],
17a0: 20 5b 0a 09 09 09 09 09 70 72 6f 6a 6c 69 62 66   [......projlibf
17b0: 69 6c 65 73 3d 22 24 7b 70 72 6f 6a 6c 69 62 66  iles="${projlibf
17c0: 69 6c 65 73 7d 22 0a 09 09 09 09 5d 29 0a 09 09  iles}".....])...
17d0: 09 5d 29 0a 0a 09 09 09 68 69 64 65 5f 73 79 6d  .]).....hide_sym
17e0: 62 6f 6c 73 3d 22 30 22 0a 09 09 09 73 75 62 70  bols="0"....subp
17f0: 72 6f 6a 73 3d 22 60 65 63 68 6f 20 22 20 24 70  rojs="`echo " $p
1800: 72 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75  rojlibfilesnostu
1810: 62 20 22 20 7c 20 73 65 64 20 27 73 40 20 5b 5b  b " | sed 's@ [[
1820: 5e 20 5d 5d 2a 2f 40 20 40 67 3b 73 40 20 6c 69  ^ ]]*/@ @g;s@ li
1830: 62 40 20 40 67 3b 73 40 5b 5b 30 2d 39 5c 2e 5d  b@ @g;s@[[0-9\.]
1840: 5d 2a 5c 2e 61 40 20 40 67 3b 73 40 20 74 64 62  ]*\.a@ @g;s@ tdb
1850: 63 5b 5b 5e 20 5d 5d 2a 40 20 40 67 3b 73 40 20  c[[^ ]]*@ @g;s@ 
1860: 73 71 6c 69 74 65 20 40 20 73 71 6c 69 74 65 33  sqlite @ sqlite3
1870: 20 40 3b 73 40 20 74 63 6c 64 64 65 5b 5b 30 2d   @;s@ tcldde[[0-
1880: 39 5d 5d 5b 5b 30 2d 39 5d 5d 2a 73 2a 67 2a 20  9]][[0-9]]*s*g* 
1890: 40 20 40 67 3b 73 40 20 74 63 6c 72 65 67 5b 5b  @ @g;s@ tclreg[[
18a0: 30 2d 39 5d 5d 5b 5b 30 2d 39 5d 5d 2a 73 2a 67  0-9]][[0-9]]*s*g
18b0: 2a 20 40 20 40 67 3b 73 40 20 74 63 6c 5b 5b 30  * @ @g;s@ tcl[[0
18c0: 2d 39 5d 5d 2a 73 2a 67 2a 20 40 20 40 67 3b 73  -9]]*s*g* @ @g;s
18d0: 40 5e 20 2a 40 40 3b 73 40 20 2a 5b 24 5d 40 40  @^ *@@;s@ *[$]@@
18e0: 27 60 22 0a 09 09 66 69 0a 0a 09 09 69 66 20 74  '`"...fi....if t
18f0: 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20 3d 20  est "${proj}" = 
1900: 22 6d 6b 34 74 63 6c 22 3b 20 74 68 65 6e 0a 09  "mk4tcl"; then..
1910: 09 09 69 66 20 74 65 73 74 20 2d 6e 20 22 24 7b  ..if test -n "${
1920: 70 72 6f 6a 6c 69 62 66 69 6c 65 73 7d 22 3b 20  projlibfiles}"; 
1930: 74 68 65 6e 0a 09 09 09 09 41 43 5f 44 45 46 49  then.....AC_DEFI
1940: 4e 45 28 4b 49 54 5f 49 4e 43 4c 55 44 45 53 5f  NE(KIT_INCLUDES_
1950: 4d 4b 34 54 43 4c 2c 20 5b 31 5d 2c 20 5b 53 70  MK4TCL, [1], [Sp
1960: 65 63 69 66 79 20 74 68 69 73 20 69 66 20 79 6f  ecify this if yo
1970: 75 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 6d  u link against m
1980: 6b 74 34 74 63 6c 5d 29 0a 0a 09 09 09 09 6b 63  kt4tcl])......kc
1990: 5f 63 76 5f 66 65 61 74 75 72 65 5f 6b 69 74 5f  _cv_feature_kit_
19a0: 69 6e 63 6c 75 64 65 73 5f 6d 6b 34 74 63 6c 3d  includes_mk4tcl=
19b0: 27 31 27 0a 0a 09 09 09 09 44 43 5f 44 4f 5f 53  '1'......DC_DO_S
19c0: 54 41 54 49 43 5f 4c 49 4e 4b 5f 4c 49 42 43 58  TATIC_LINK_LIBCX
19d0: 58 0a 09 09 09 66 69 0a 0a 09 09 09 73 75 62 70  X....fi.....subp
19e0: 72 6f 6a 73 3d 22 22 0a 09 09 66 69 0a 0a 09 09  rojs=""...fi....
19f0: 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d  if test "${proj}
1a00: 22 20 3d 20 22 74 6b 22 3b 20 74 68 65 6e 0a 09  " = "tk"; then..
1a10: 09 09 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f  ..if test "${pro
1a20: 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 7d  jlibfilesnostub}
1a30: 22 20 21 3d 20 22 22 3b 20 74 68 65 6e 0a 09 09  " != ""; then...
1a40: 09 09 44 43 5f 44 4f 5f 54 4b 0a 09 09 09 09 41  ..DC_DO_TK.....A
1a50: 43 5f 44 45 46 49 4e 45 28 4b 49 54 5f 49 4e 43  C_DEFINE(KIT_INC
1a60: 4c 55 44 45 53 5f 54 4b 2c 20 5b 31 5d 2c 20 5b  LUDES_TK, [1], [
1a70: 53 70 65 63 69 66 79 20 74 68 69 73 20 69 66 20  Specify this if 
1a80: 77 65 20 6c 69 6e 6b 20 73 74 61 74 69 63 61 6c  we link statical
1a90: 6c 79 20 74 6f 20 54 6b 5d 29 0a 09 09 09 09 69  ly to Tk]).....i
1aa0: 66 20 74 65 73 74 20 2d 6e 20 22 24 7b 54 4b 5f  f test -n "${TK_
1ab0: 56 45 52 53 49 4f 4e 7d 22 3b 20 74 68 65 6e 0a  VERSION}"; then.
1ac0: 09 09 09 09 09 41 43 5f 44 45 46 49 4e 45 5f 55  .....AC_DEFINE_U
1ad0: 4e 51 55 4f 54 45 44 28 4b 49 54 5f 54 4b 5f 56  NQUOTED(KIT_TK_V
1ae0: 45 52 53 49 4f 4e 2c 20 22 24 7b 54 4b 5f 56 45  ERSION, "${TK_VE
1af0: 52 53 49 4f 4e 7d 24 7b 54 4b 5f 50 41 54 43 48  RSION}${TK_PATCH
1b00: 5f 4c 45 56 45 4c 7d 22 2c 20 5b 53 70 65 63 69  _LEVEL}", [Speci
1b10: 66 79 20 74 68 65 20 76 65 72 73 69 6f 6e 20 6f  fy the version o
1b20: 66 20 54 6b 5d 29 0a 09 09 09 09 66 69 0a 0a 09  f Tk]).....fi...
1b30: 09 09 09 69 66 20 74 65 73 74 20 22 24 68 6f 73  ...if test "$hos
1b40: 74 5f 6f 73 22 20 3d 20 22 6d 69 6e 67 77 33 32  t_os" = "mingw32
1b50: 6d 73 76 63 22 20 2d 6f 20 22 24 68 6f 73 74 5f  msvc" -o "$host_
1b60: 6f 73 22 20 3d 20 22 6d 69 6e 67 77 33 32 22 3b  os" = "mingw32";
1b70: 20 74 68 65 6e 0a 09 09 09 09 09 41 43 5f 44 45   then......AC_DE
1b80: 46 49 4e 45 28 4b 49 54 53 48 5f 4e 45 45 44 5f  FINE(KITSH_NEED_
1b90: 57 49 4e 4d 41 49 4e 2c 20 5b 31 5d 2c 20 5b 44  WINMAIN, [1], [D
1ba0: 65 66 69 6e 65 20 69 66 20 79 6f 75 20 6e 65 65  efine if you nee
1bb0: 64 20 57 69 6e 4d 61 69 6e 20 28 57 69 6e 64 6f  d WinMain (Windo
1bc0: 77 73 29 5d 29 0a 09 09 09 09 09 43 46 4c 41 47  ws)])......CFLAG
1bd0: 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 2d 6d 77  S="${CFLAGS} -mw
1be0: 69 6e 64 6f 77 73 22 0a 09 09 09 09 66 69 0a 0a  indows".....fi..
1bf0: 09 09 09 09 44 43 5f 54 45 53 54 5f 57 48 4f 4c  ....DC_TEST_WHOL
1c00: 45 5f 41 52 43 48 49 56 45 5f 53 48 41 52 45 44  E_ARCHIVE_SHARED
1c10: 5f 4c 49 42 28 5b 24 41 52 43 48 53 20 24 70 72  _LIB([$ARCHS $pr
1c20: 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62  ojlibfilesnostub
1c30: 5d 2c 20 5b 0a 09 09 09 09 09 70 72 6f 6a 6c 69  ], [......projli
1c40: 62 66 69 6c 65 73 3d 22 24 7b 70 72 6f 6a 6c 69  bfiles="${projli
1c50: 62 66 69 6c 65 73 6e 6f 73 74 75 62 7d 22 0a 09  bfilesnostub}"..
1c60: 09 09 09 5d 2c 20 5b 0a 09 09 09 09 09 44 43 5f  ...], [......DC_
1c70: 54 45 53 54 5f 57 48 4f 4c 45 5f 41 52 43 48 49  TEST_WHOLE_ARCHI
1c80: 56 45 5f 53 48 41 52 45 44 5f 4c 49 42 28 5b 24  VE_SHARED_LIB([$
1c90: 41 52 43 48 53 20 24 70 72 6f 6a 6c 69 62 66 69  ARCHS $projlibfi
1ca0: 6c 65 73 5d 2c 20 5b 0a 09 09 09 09 09 09 70 72  les], [.......pr
1cb0: 6f 6a 6c 69 62 66 69 6c 65 73 3d 22 24 7b 70 72  ojlibfiles="${pr
1cc0: 6f 6a 6c 69 62 66 69 6c 65 73 7d 22 0a 09 09 09  ojlibfiles}"....
1cd0: 09 09 5d 29 0a 09 09 09 09 5d 29 0a 0a 09 09 09  ..]).....]).....
1ce0: 09 68 69 64 65 5f 73 79 6d 62 6f 6c 73 3d 22 30  .hide_symbols="0
1cf0: 22 0a 09 09 09 66 69 0a 0a 09 09 09 73 75 62 70  "....fi.....subp
1d00: 72 6f 6a 73 3d 22 22 0a 09 09 66 69 0a 0a 09 09  rojs=""...fi....
1d10: 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d  if test "${proj}
1d20: 22 20 3d 20 22 74 63 6c 76 66 73 22 3b 20 74 68  " = "tclvfs"; th
1d30: 65 6e 0a 09 09 09 73 75 62 70 72 6f 6a 73 3d 22  en....subprojs="
1d40: 22 0a 09 09 66 69 0a 0a 09 09 69 66 20 74 65 73  "...fi....if tes
1d50: 74 20 22 24 7b 68 69 64 65 5f 73 79 6d 62 6f 6c  t "${hide_symbol
1d60: 73 7d 22 20 3d 20 22 31 22 3b 20 74 68 65 6e 0a  s}" = "1"; then.
1d70: 09 09 09 53 54 52 49 50 4c 49 42 53 3d 22 24 7b  ...STRIPLIBS="${
1d80: 53 54 52 49 50 4c 49 42 53 7d 20 24 7b 70 72 6f  STRIPLIBS} ${pro
1d90: 6a 6c 69 62 66 69 6c 65 73 7d 22 0a 09 09 66 69  jlibfiles}"...fi
1da0: 0a 0a 09 09 64 6e 6c 20 44 6f 20 6e 6f 74 20 65  ....dnl Do not e
1db0: 78 70 6c 69 63 69 74 6c 79 20 6c 69 6e 6b 20 74  xplicitly link t
1dc0: 6f 20 5a 6c 69 62 2c 20 74 68 61 74 20 77 69 6c  o Zlib, that wil
1dd0: 6c 20 68 61 70 70 65 6e 20 65 6c 73 65 77 68 65  l happen elsewhe
1de0: 72 65 0a 09 09 69 66 20 74 65 73 74 20 22 24 7b  re...if test "${
1df0: 70 72 6f 6a 7d 22 20 3d 20 22 7a 6c 69 62 22 3b  proj}" = "zlib";
1e00: 20 74 68 65 6e 0a 09 09 09 63 6f 6e 74 69 6e 75   then....continu
1e10: 65 0a 09 09 66 69 0a 0a 09 09 69 66 20 74 65 73  e...fi....if tes
1e20: 74 20 2d 6e 20 22 24 7b 73 75 62 70 72 6f 6a 73  t -n "${subprojs
1e30: 7d 22 3b 20 74 68 65 6e 0a 09 09 09 69 66 20 74  }"; then....if t
1e40: 65 73 74 20 2d 6e 20 22 24 7b 70 72 6f 6a 6c 69  est -n "${projli
1e50: 62 66 69 6c 65 73 6e 6f 73 74 75 62 7d 22 3b 20  bfilesnostub}"; 
1e60: 74 68 65 6e 0a 09 09 09 09 66 6f 72 20 73 75 62  then.....for sub
1e70: 70 72 6f 6a 20 69 6e 20 24 73 75 62 70 72 6f 6a  proj in $subproj
1e80: 73 3b 20 64 6f 0a 09 09 09 09 09 73 75 62 70 72  s; do......subpr
1e90: 6f 6a 75 63 61 73 65 3d 22 60 65 63 68 6f 20 24  ojucase="`echo $
1ea0: 7b 73 75 62 70 72 6f 6a 7d 20 7c 20 64 64 20 63  {subproj} | dd c
1eb0: 6f 6e 76 3d 75 63 61 73 65 20 32 3e 2f 64 65 76  onv=ucase 2>/dev
1ec0: 2f 6e 75 6c 6c 60 22 0a 09 09 09 09 09 73 75 62  /null`"......sub
1ed0: 70 72 6f 6a 74 63 61 73 65 3d 22 60 65 63 68 6f  projtcase="`echo
1ee0: 20 24 7b 73 75 62 70 72 6f 6a 75 63 61 73 65 7d   ${subprojucase}
1ef0: 20 7c 20 63 75 74 20 2d 63 20 31 60 60 65 63 68   | cut -c 1``ech
1f00: 6f 20 24 7b 73 75 62 70 72 6f 6a 7d 20 7c 20 63  o ${subproj} | c
1f10: 75 74 20 2d 63 20 32 2d 60 22 0a 09 09 09 09 09  ut -c 2-`"......
1f20: 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63 3d 22 24  lib_init_func="$
1f30: 7b 73 75 62 70 72 6f 6a 74 63 61 73 65 7d 5f 49  {subprojtcase}_I
1f40: 6e 69 74 22 0a 0a 09 09 09 09 09 65 63 68 6f 20  nit".......echo 
1f50: 22 23 64 65 66 69 6e 65 20 4b 49 54 5f 49 4e 43  "#define KIT_INC
1f60: 4c 55 44 45 53 5f 24 7b 73 75 62 70 72 6f 6a 75  LUDES_${subproju
1f70: 63 61 73 65 7d 22 20 3e 3e 20 6b 69 74 49 6e 69  case}" >> kitIni
1f80: 74 2d 6c 69 62 73 2e 68 0a 09 09 09 09 09 65 63  t-libs.h......ec
1f90: 68 6f 20 22 54 63 6c 5f 41 70 70 49 6e 69 74 50  ho "Tcl_AppInitP
1fa0: 72 6f 63 20 24 7b 6c 69 62 5f 69 6e 69 74 5f 66  roc ${lib_init_f
1fb0: 75 6e 63 7d 3b 22 20 3e 3e 20 6b 69 74 49 6e 69  unc};" >> kitIni
1fc0: 74 2d 6c 69 62 73 2e 68 0a 0a 09 09 09 09 09 6c  t-libs.h.......l
1fd0: 69 62 73 5f 69 6e 69 74 5f 66 75 6e 63 73 3d 22  ibs_init_funcs="
1fe0: 24 7b 6c 69 62 73 5f 69 6e 69 74 5f 66 75 6e 63  ${libs_init_func
1ff0: 73 7d 20 24 7b 6c 69 62 5f 69 6e 69 74 5f 66 75  s} ${lib_init_fu
2000: 6e 63 7d 22 0a 09 09 09 09 64 6f 6e 65 0a 09 09  nc}".....done...
2010: 09 66 69 0a 09 09 66 69 0a 0a 09 09 41 52 43 48  .fi...fi....ARCH
2020: 53 3d 22 24 7b 41 52 43 48 53 7d 20 24 7b 70 72  S="${ARCHS} ${pr
2030: 6f 6a 6c 69 62 66 69 6c 65 73 7d 22 0a 09 09 4c  ojlibfiles}"...L
2040: 49 42 53 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 70  IBS="${LIBS} ${p
2050: 72 6f 6a 6c 69 62 65 78 74 72 61 7d 22 0a 09 64  rojlibextra}"..d
2060: 6f 6e 65 0a 0a 09 65 63 68 6f 20 27 27 20 3e 3e  one...echo '' >>
2070: 20 6b 69 74 49 6e 69 74 2d 6c 69 62 73 2e 68 0a   kitInit-libs.h.
2080: 09 65 63 68 6f 20 27 73 74 61 74 69 63 20 76 6f  .echo 'static vo
2090: 69 64 20 5f 54 63 6c 6b 69 74 5f 47 65 6e 65 72  id _Tclkit_Gener
20a0: 69 63 4c 69 62 5f 49 6e 69 74 28 76 6f 69 64 29  icLib_Init(void)
20b0: 20 7b 27 20 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c   {' >> kitInit-l
20c0: 69 62 73 2e 68 0a 09 66 6f 72 20 6c 69 62 5f 69  ibs.h..for lib_i
20d0: 6e 69 74 5f 66 75 6e 63 20 69 6e 20 24 7b 6c 69  nit_func in ${li
20e0: 62 73 5f 69 6e 69 74 5f 66 75 6e 63 73 7d 3b 20  bs_init_funcs}; 
20f0: 64 6f 0a 09 09 70 72 6f 6a 3d 22 60 65 63 68 6f  do...proj="`echo
2100: 20 24 7b 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63   ${lib_init_func
2110: 7d 20 7c 20 73 65 64 20 27 73 40 5f 49 6e 69 74  } | sed 's@_Init
2120: 24 24 40 40 40 27 20 7c 20 64 64 20 63 6f 6e 76  $$@@@' | dd conv
2130: 3d 6c 63 61 73 65 20 32 3e 2f 64 65 76 2f 6e 75  =lcase 2>/dev/nu
2140: 6c 6c 60 22 0a 09 09 65 63 68 6f 20 22 09 54 63  ll`"...echo ".Tc
2150: 6c 5f 53 74 61 74 69 63 50 61 63 6b 61 67 65 28  l_StaticPackage(
2160: 30 2c 20 5c 22 24 7b 70 72 6f 6a 7d 5c 22 2c 20  0, \"${proj}\", 
2170: 24 7b 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63 7d  ${lib_init_func}
2180: 2c 20 4e 55 4c 4c 29 3b 22 20 3e 3e 20 6b 69 74  , NULL);" >> kit
2190: 49 6e 69 74 2d 6c 69 62 73 2e 68 0a 09 64 6f 6e  Init-libs.h..don
21a0: 65 0a 09 65 63 68 6f 20 27 09 72 65 74 75 72 6e  e..echo '.return
21b0: 3b 27 20 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c 69  ;' >> kitInit-li
21c0: 62 73 2e 68 0a 09 65 63 68 6f 20 27 7d 27 20 3e  bs.h..echo '}' >
21d0: 3e 20 6b 69 74 49 6e 69 74 2d 6c 69 62 73 2e 68  > kitInit-libs.h
21e0: 0a 0a 09 41 43 5f 53 55 42 53 54 28 41 52 43 48  ...AC_SUBST(ARCH
21f0: 53 29 0a 09 41 43 5f 53 55 42 53 54 28 53 54 52  S)..AC_SUBST(STR
2200: 49 50 4c 49 42 53 29 0a 09 41 43 5f 53 55 42 53  IPLIBS)..AC_SUBS
2210: 54 28 4c 49 42 53 29 0a 5d 29 0a 0a 41 43 5f 44  T(LIBS).])..AC_D
2220: 45 46 55 4e 28 44 43 5f 53 45 54 55 50 5f 54 43  EFUN(DC_SETUP_TC
2230: 4c 5f 50 4c 41 54 5f 44 45 46 53 2c 20 5b 0a 09  L_PLAT_DEFS, [..
2240: 41 43 5f 43 41 4e 4f 4e 49 43 41 4c 5f 42 55 49  AC_CANONICAL_BUI
2250: 4c 44 0a 09 41 43 5f 43 41 4e 4f 4e 49 43 41 4c  LD..AC_CANONICAL
2260: 5f 48 4f 53 54 0a 20 20 0a 09 41 43 5f 4d 53 47  _HOST.  ..AC_MSG
2270: 5f 43 48 45 43 4b 49 4e 47 28 68 6f 73 74 20 6f  _CHECKING(host o
2280: 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 29  perating system)
2290: 0a 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28  ..AC_MSG_RESULT(
22a0: 24 68 6f 73 74 5f 6f 73 29 0a 20 20 0a 09 63 61  $host_os).  ..ca
22b0: 73 65 20 24 68 6f 73 74 5f 6f 73 20 69 6e 0a 09  se $host_os in..
22c0: 09 6d 69 6e 67 77 33 32 2a 29 0a 09 09 09 43 46  .mingw32*)....CF
22d0: 4c 41 47 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20  LAGS="${CFLAGS} 
22e0: 2d 6d 6d 73 2d 62 69 74 66 69 65 6c 64 73 22 0a  -mms-bitfields".
22f0: 09 09 09 57 49 53 48 5f 43 46 4c 41 47 53 3d 22  ...WISH_CFLAGS="
2300: 2d 6d 77 69 6e 64 6f 77 73 22 0a 0a 09 09 09 64  -mwindows".....d
2310: 6e 6c 20 49 66 20 77 65 20 61 72 65 20 62 75 69  nl If we are bui
2320: 6c 64 69 6e 67 20 66 6f 72 20 57 69 6e 33 32 2c  lding for Win32,
2330: 20 77 65 20 6e 65 65 64 20 74 6f 20 64 65 66 69   we need to defi
2340: 6e 65 20 22 42 55 49 4c 44 5f 74 63 6c 22 20 73  ne "BUILD_tcl" s
2350: 6f 20 74 68 61 74 0a 09 09 09 64 6e 6c 20 54 43  o that....dnl TC
2360: 4c 5f 53 54 4f 52 41 47 45 5f 43 4c 41 53 53 20  L_STORAGE_CLASS 
2370: 67 65 74 73 20 64 65 66 69 6e 65 64 20 61 73 20  gets defined as 
2380: 44 4c 4c 45 58 50 4f 52 54 2c 20 74 6f 20 6d 61  DLLEXPORT, to ma
2390: 6b 65 20 73 74 61 74 69 63 20 6c 69 6e 6b 69 6e  ke static linkin
23a0: 67 0a 09 09 09 64 6e 6c 20 77 6f 72 6b 0a 09 09  g....dnl work...
23b0: 09 41 43 5f 44 45 46 49 4e 45 28 42 55 49 4c 44  .AC_DEFINE(BUILD
23c0: 5f 74 63 6c 2c 20 5b 31 5d 2c 20 5b 44 65 66 69  _tcl, [1], [Defi
23d0: 6e 65 20 69 66 20 79 6f 75 20 6e 65 65 64 20 74  ne if you need t
23e0: 6f 20 70 72 65 74 65 6e 64 20 74 6f 20 62 65 20  o pretend to be 
23f0: 62 75 69 6c 64 69 6e 67 20 54 63 6c 20 28 57 69  building Tcl (Wi
2400: 6e 64 6f 77 73 29 5d 29 0a 09 09 09 41 43 5f 44  ndows)])....AC_D
2410: 45 46 49 4e 45 28 42 55 49 4c 44 5f 74 6b 2c 20  EFINE(BUILD_tk, 
2420: 5b 31 5d 2c 20 5b 44 65 66 69 6e 65 20 69 66 20  [1], [Define if 
2430: 79 6f 75 20 6e 65 65 64 20 74 6f 20 70 72 65 74  you need to pret
2440: 65 6e 64 20 74 6f 20 62 65 20 62 75 69 6c 64 69  end to be buildi
2450: 6e 67 20 54 6b 20 28 57 69 6e 64 6f 77 73 29 5d  ng Tk (Windows)]
2460: 29 0a 09 09 09 3b 3b 0a 09 09 63 79 67 77 69 6e  )....;;...cygwin
2470: 2a 29 0a 09 09 09 43 46 4c 41 47 53 3d 22 24 7b  *)....CFLAGS="${
2480: 43 46 4c 41 47 53 7d 20 2d 6d 6d 73 2d 62 69 74  CFLAGS} -mms-bit
2490: 66 69 65 6c 64 73 22 0a 09 09 09 57 49 53 48 5f  fields"....WISH_
24a0: 43 46 4c 41 47 53 3d 22 2d 6d 77 69 6e 64 6f 77  CFLAGS="-mwindow
24b0: 73 22 0a 09 09 09 3b 3b 0a 09 65 73 61 63 0a 0a  s"....;;..esac..
24c0: 09 41 43 5f 53 55 42 53 54 28 57 49 53 48 5f 43  .AC_SUBST(WISH_C
24d0: 46 4c 41 47 53 29 0a 5d 29 0a 0a 41 43 5f 44 45  FLAGS).])..AC_DE
24e0: 46 55 4e 28 44 43 5f 53 54 41 54 49 43 5f 4c 49  FUN(DC_STATIC_LI
24f0: 42 47 43 43 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f  BGCC, [..AC_MSG_
2500: 43 48 45 43 4b 49 4e 47 28 5b 68 6f 77 20 74 6f  CHECKING([how to
2510: 20 6c 69 6e 6b 20 73 74 61 74 69 63 61 6c 6c 79   link statically
2520: 20 61 67 61 69 6e 73 74 20 6c 69 62 67 63 63 5d   against libgcc]
2530: 29 0a 0a 09 53 41 56 45 4c 44 46 4c 41 47 53 3d  )...SAVELDFLAGS=
2540: 22 24 7b 4c 44 46 4c 41 47 53 7d 22 0a 09 73 74  "${LDFLAGS}"..st
2550: 61 74 69 63 6c 69 62 67 63 63 3d 22 22 0a 09 66  aticlibgcc=""..f
2560: 6f 72 20 74 72 79 6c 69 6e 6b 20 69 6e 20 22 2d  or trylink in "-
2570: 73 74 61 74 69 63 2d 6c 69 62 67 63 63 22 3b 20  static-libgcc"; 
2580: 64 6f 0a 09 09 4c 44 46 4c 41 47 53 3d 22 24 7b  do...LDFLAGS="${
2590: 53 41 56 45 4c 44 46 4c 41 47 53 7d 20 24 7b 74  SAVELDFLAGS} ${t
25a0: 72 79 6c 69 6e 6b 7d 22 0a 09 09 41 43 5f 4c 49  rylink}"...AC_LI
25b0: 4e 4b 5f 49 46 45 4c 53 45 28 41 43 5f 4c 41 4e  NK_IFELSE(AC_LAN
25c0: 47 5f 50 52 4f 47 52 41 4d 28 5b 5d 2c 20 5b 5d  G_PROGRAM([], []
25d0: 29 2c 20 5b 0a 09 09 09 73 74 61 74 69 63 6c 69  ), [....staticli
25e0: 62 67 63 63 3d 22 24 7b 74 72 79 6c 69 6e 6b 7d  bgcc="${trylink}
25f0: 22 0a 0a 09 09 09 62 72 65 61 6b 0a 09 09 5d 29  ".....break...])
2600: 0a 09 64 6f 6e 65 0a 09 69 66 20 74 65 73 74 20  ..done..if test 
2610: 2d 6e 20 22 24 7b 73 74 61 74 69 63 6c 69 62 67  -n "${staticlibg
2620: 63 63 7d 22 3b 20 74 68 65 6e 0a 09 09 4c 44 46  cc}"; then...LDF
2630: 4c 41 47 53 3d 22 24 7b 53 41 56 45 4c 44 46 4c  LAGS="${SAVELDFL
2640: 41 47 53 7d 20 24 7b 73 74 61 74 69 63 6c 69 62  AGS} ${staticlib
2650: 67 63 63 7d 22 0a 09 09 41 43 5f 4d 53 47 5f 52  gcc}"...AC_MSG_R
2660: 45 53 55 4c 54 28 5b 24 7b 73 74 61 74 69 63 6c  ESULT([${staticl
2670: 69 62 67 63 63 7d 5d 29 0a 09 65 6c 73 65 0a 09  ibgcc}])..else..
2680: 09 4c 44 46 4c 41 47 53 3d 22 24 7b 53 41 56 45  .LDFLAGS="${SAVE
2690: 4c 44 46 4c 41 47 53 7d 22 0a 09 09 41 43 5f 4d  LDFLAGS}"...AC_M
26a0: 53 47 5f 52 45 53 55 4c 54 28 5b 6e 6f 74 20 6e  SG_RESULT([not n
26b0: 65 65 64 65 64 5d 29 0a 09 66 69 0a 0a 09 41 43  eeded])..fi...AC
26c0: 5f 53 55 42 53 54 28 4c 44 46 4c 41 47 53 29 0a  _SUBST(LDFLAGS).
26d0: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f  ])..AC_DEFUN(DC_
26e0: 43 48 45 43 4b 5f 46 4f 52 5f 41 43 43 45 50 54  CHECK_FOR_ACCEPT
26f0: 41 42 4c 45 5f 44 4c 41 44 44 52 2c 20 5b 0a 09  ABLE_DLADDR, [..
2700: 41 43 5f 43 48 45 43 4b 5f 48 45 41 44 45 52 53  AC_CHECK_HEADERS
2710: 28 64 6c 66 63 6e 2e 68 29 0a 09 41 43 5f 43 48  (dlfcn.h)..AC_CH
2720: 45 43 4b 5f 46 55 4e 43 53 28 64 6c 61 64 64 72  ECK_FUNCS(dladdr
2730: 29 0a 0a 09 41 43 5f 4d 53 47 5f 43 48 45 43 4b  )...AC_MSG_CHECK
2740: 49 4e 47 28 5b 66 6f 72 20 61 63 63 65 70 74 61  ING([for accepta
2750: 62 6c 65 20 64 6c 61 64 64 72 5d 29 0a 0a 09 41  ble dladdr])...A
2760: 43 5f 4c 49 4e 4b 5f 49 46 45 4c 53 45 28 0a 09  C_LINK_IFELSE(..
2770: 09 41 43 5f 4c 41 4e 47 5f 50 52 4f 47 52 41 4d  .AC_LANG_PROGRAM
2780: 28 5b 5b 0a 23 69 66 64 65 66 20 48 41 56 45 5f  ([[.#ifdef HAVE_
2790: 44 4c 46 43 4e 5f 48 0a 23 69 6e 63 6c 75 64 65  DLFCN_H.#include
27a0: 20 3c 64 6c 66 63 6e 2e 68 3e 0a 23 65 6e 64 69   <dlfcn.h>.#endi
27b0: 66 0a 09 09 09 5d 5d 2c 20 5b 5b 0a 63 68 61 72  f....]], [[.char
27c0: 20 2a 78 3b 0a 44 6c 5f 69 6e 66 6f 20 73 79 6d   *x;.Dl_info sym
27d0: 69 6e 66 6f 3b 0a 64 6c 61 64 64 72 28 28 76 6f  info;.dladdr((vo
27e0: 69 64 20 2a 29 20 30 2c 20 26 73 79 6d 69 6e 66  id *) 0, &syminf
27f0: 6f 29 3b 0a 78 20 3d 20 73 79 6d 69 6e 66 6f 2e  o);.x = syminfo.
2800: 64 6c 69 5f 66 6e 61 6d 65 3b 0a 09 09 09 5d 5d  dli_fname;....]]
2810: 0a 09 09 29 2c 0a 09 09 5b 0a 09 09 09 41 43 5f  ...),...[....AC_
2820: 4d 53 47 5f 52 45 53 55 4c 54 28 5b 66 6f 75 6e  MSG_RESULT([foun
2830: 64 5d 29 0a 09 09 09 41 43 5f 44 45 46 49 4e 45  d])....AC_DEFINE
2840: 28 48 41 56 45 5f 41 43 43 45 50 54 41 42 4c 45  (HAVE_ACCEPTABLE
2850: 5f 44 4c 41 44 44 52 2c 20 5b 31 5d 2c 20 5b 44  _DLADDR, [1], [D
2860: 65 66 69 6e 65 20 74 6f 20 31 20 69 66 20 79 6f  efine to 1 if yo
2870: 75 20 68 61 76 65 20 61 6e 20 61 63 63 65 70 74  u have an accept
2880: 61 62 6c 65 20 64 6c 61 64 64 72 20 69 6d 70 6c  able dladdr impl
2890: 65 6d 65 6e 74 61 74 69 6f 6e 20 77 69 74 68 20  ementation with 
28a0: 64 6c 69 5f 66 6e 61 6d 65 5d 29 0a 09 09 5d 2c  dli_fname])...],
28b0: 20 5b 0a 09 09 09 41 43 5f 4d 53 47 5f 52 45 53   [....AC_MSG_RES
28c0: 55 4c 54 28 5b 6e 6f 74 20 66 6f 75 6e 64 5d 29  ULT([not found])
28d0: 0a 09 09 5d 0a 09 29 0a 5d 29 0a 0a 64 6e 6c 20  ...]..).])..dnl 
28e0: 55 73 61 67 65 3a 0a 64 6e 6c 20 20 20 20 44 43  Usage:.dnl    DC
28f0: 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53  _TEST_SHOBJFLAGS
2900: 28 73 68 6f 62 6a 66 6c 61 67 73 2c 20 73 68 6f  (shobjflags, sho
2910: 62 6a 6c 64 66 6c 61 67 73 2c 20 61 63 74 69 6f  bjldflags, actio
2920: 6e 2d 69 66 2d 6e 6f 74 2d 66 6f 75 6e 64 29 0a  n-if-not-found).
2930: 64 6e 6c 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f  dnl.AC_DEFUN(DC_
2940: 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 2c  TEST_SHOBJFLAGS,
2950: 20 5b 0a 20 20 41 43 5f 53 55 42 53 54 28 53 48   [.  AC_SUBST(SH
2960: 4f 42 4a 46 4c 41 47 53 29 0a 20 20 41 43 5f 53  OBJFLAGS).  AC_S
2970: 55 42 53 54 28 53 48 4f 42 4a 4c 44 46 4c 41 47  UBST(SHOBJLDFLAG
2980: 53 29 0a 0a 20 20 4f 4c 44 5f 4c 44 46 4c 41 47  S)..  OLD_LDFLAG
2990: 53 3d 22 24 4c 44 46 4c 41 47 53 22 0a 20 20 53  S="$LDFLAGS".  S
29a0: 48 4f 42 4a 46 4c 41 47 53 3d 22 22 0a 0a 20 20  HOBJFLAGS=""..  
29b0: 4c 44 46 4c 41 47 53 3d 22 24 4f 4c 44 5f 4c 44  LDFLAGS="$OLD_LD
29c0: 46 4c 41 47 53 20 24 31 20 24 32 22 0a 0a 20 20  FLAGS $1 $2"..  
29d0: 41 43 5f 54 52 59 5f 4c 49 4e 4b 28 5b 23 69 6e  AC_TRY_LINK([#in
29e0: 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e 0a  clude <stdio.h>.
29f0: 69 6e 74 20 75 6e 72 65 73 74 73 74 28 76 6f 69  int unrestst(voi
2a00: 64 29 3b 5d 2c 20 5b 20 70 72 69 6e 74 66 28 22  d);], [ printf("
2a10: 6f 6b 61 79 5c 6e 22 29 3b 20 75 6e 72 65 73 74  okay\n"); unrest
2a20: 73 74 28 29 3b 20 72 65 74 75 72 6e 28 30 29 3b  st(); return(0);
2a30: 20 5d 2c 20 5b 20 53 48 4f 42 4a 46 4c 41 47 53   ], [ SHOBJFLAGS
2a40: 3d 22 24 31 22 3b 20 53 48 4f 42 4a 4c 44 46 4c  ="$1"; SHOBJLDFL
2a50: 41 47 53 3d 22 24 32 22 20 5d 2c 20 5b 0a 20 20  AGS="$2" ], [.  
2a60: 4c 44 46 4c 41 47 53 3d 22 24 4f 4c 44 5f 4c 44  LDFLAGS="$OLD_LD
2a70: 46 4c 41 47 53 22 0a 20 20 24 33 0a 5d 29 0a 0a  FLAGS".  $3.])..
2a80: 20 20 4c 44 46 4c 41 47 53 3d 22 24 4f 4c 44 5f    LDFLAGS="$OLD_
2a90: 4c 44 46 4c 41 47 53 22 0a 5d 29 0a 0a 41 43 5f  LDFLAGS".])..AC_
2aa0: 44 45 46 55 4e 28 44 43 5f 47 45 54 5f 53 48 4f  DEFUN(DC_GET_SHO
2ab0: 42 4a 46 4c 41 47 53 2c 20 5b 0a 20 20 41 43 5f  BJFLAGS, [.  AC_
2ac0: 53 55 42 53 54 28 53 48 4f 42 4a 46 4c 41 47 53  SUBST(SHOBJFLAGS
2ad0: 29 0a 20 20 41 43 5f 53 55 42 53 54 28 53 48 4f  ).  AC_SUBST(SHO
2ae0: 42 4a 4c 44 46 4c 41 47 53 29 0a 0a 20 20 41 43  BJLDFLAGS)..  AC
2af0: 5f 4d 53 47 5f 43 48 45 43 4b 49 4e 47 28 68 6f  _MSG_CHECKING(ho
2b00: 77 20 74 6f 20 63 72 65 61 74 65 20 73 68 61 72  w to create shar
2b10: 65 64 20 6f 62 6a 65 63 74 73 29 0a 0a 20 20 69  ed objects)..  i
2b20: 66 20 74 65 73 74 20 2d 7a 20 22 24 53 48 4f 42  f test -z "$SHOB
2b30: 4a 46 4c 41 47 53 22 20 2d 61 20 2d 7a 20 22 24  JFLAGS" -a -z "$
2b40: 53 48 4f 42 4a 4c 44 46 4c 41 47 53 22 3b 20 74  SHOBJLDFLAGS"; t
2b50: 68 65 6e 0a 20 20 20 20 44 43 5f 54 45 53 54 5f  hen.    DC_TEST_
2b60: 53 48 4f 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49  SHOBJFLAGS([-fPI
2b70: 43 20 2d 44 50 49 43 5d 2c 20 5b 2d 73 68 61 72  C -DPIC], [-shar
2b80: 65 64 20 2d 72 64 79 6e 61 6d 69 63 5d 2c 20 5b  ed -rdynamic], [
2b90: 0a 20 20 20 20 20 20 44 43 5f 54 45 53 54 5f 53  .      DC_TEST_S
2ba0: 48 4f 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43  HOBJFLAGS([-fPIC
2bb0: 20 2d 44 50 49 43 5d 2c 20 5b 2d 73 68 61 72 65   -DPIC], [-share
2bc0: 64 5d 2c 20 5b 0a 20 20 20 20 20 20 20 20 44 43  d], [.        DC
2bd0: 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53  _TEST_SHOBJFLAGS
2be0: 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c 20  ([-fPIC -DPIC], 
2bf0: 5b 2d 73 68 61 72 65 64 20 2d 72 64 79 6e 61 6d  [-shared -rdynam
2c00: 69 63 20 2d 6d 69 6d 70 75 72 65 2d 74 65 78 74  ic -mimpure-text
2c10: 5d 2c 20 5b 0a 20 20 20 20 20 20 20 20 20 20 44  ], [.          D
2c20: 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47  C_TEST_SHOBJFLAG
2c30: 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c  S([-fPIC -DPIC],
2c40: 20 5b 2d 73 68 61 72 65 64 20 2d 6d 69 6d 70 75   [-shared -mimpu
2c50: 72 65 2d 74 65 78 74 5d 2c 20 5b 0a 20 20 20 20  re-text], [.    
2c60: 20 20 20 20 20 20 20 20 44 43 5f 54 45 53 54 5f          DC_TEST_
2c70: 53 48 4f 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49  SHOBJFLAGS([-fPI
2c80: 43 20 2d 44 50 49 43 5d 2c 20 5b 2d 73 68 61 72  C -DPIC], [-shar
2c90: 65 64 20 2d 72 64 79 6e 61 6d 69 63 20 2d 57 6c  ed -rdynamic -Wl
2ca0: 2c 2d 47 2c 2d 7a 2c 74 65 78 74 6f 66 66 5d 2c  ,-G,-z,textoff],
2cb0: 20 5b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   [.             
2cc0: 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c   DC_TEST_SHOBJFL
2cd0: 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 43  AGS([-fPIC -DPIC
2ce0: 5d 2c 20 5b 2d 73 68 61 72 65 64 20 2d 57 6c 2c  ], [-shared -Wl,
2cf0: 2d 47 2c 2d 7a 2c 74 65 78 74 6f 66 66 5d 2c 20  -G,-z,textoff], 
2d00: 5b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  [.              
2d10: 20 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46    DC_TEST_SHOBJF
2d20: 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 50 49  LAGS([-fPIC -DPI
2d30: 43 5d 2c 20 5b 2d 73 68 61 72 65 64 20 2d 64 79  C], [-shared -dy
2d40: 6e 61 6d 69 63 6c 69 62 20 2d 66 6c 61 74 5f 6e  namiclib -flat_n
2d50: 61 6d 65 73 70 61 63 65 20 2d 75 6e 64 65 66 69  amespace -undefi
2d60: 6e 65 64 20 73 75 70 70 72 65 73 73 20 2d 62 69  ned suppress -bi
2d70: 6e 64 5f 61 74 5f 6c 6f 61 64 5d 2c 20 5b 0a 20  nd_at_load], [. 
2d80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2d90: 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c   DC_TEST_SHOBJFL
2da0: 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 43  AGS([-fPIC -DPIC
2db0: 5d 2c 20 5b 2d 64 79 6e 61 6d 69 63 6c 69 62 20  ], [-dynamiclib 
2dc0: 2d 66 6c 61 74 5f 6e 61 6d 65 73 70 61 63 65 20  -flat_namespace 
2dd0: 2d 75 6e 64 65 66 69 6e 65 64 20 73 75 70 70 72  -undefined suppr
2de0: 65 73 73 20 2d 62 69 6e 64 5f 61 74 5f 6c 6f 61  ess -bind_at_loa
2df0: 64 5d 2c 20 5b 0a 20 20 20 20 20 20 20 20 20 20  d], [.          
2e00: 20 20 20 20 20 20 20 20 20 20 44 43 5f 54 45 53            DC_TES
2e10: 54 5f 53 48 4f 42 4a 46 4c 41 47 53 28 5b 2d 66  T_SHOBJFLAGS([-f
2e20: 50 49 43 20 2d 44 50 49 43 5d 2c 20 5b 2d 57 6c  PIC -DPIC], [-Wl
2e30: 2c 2d 64 79 6e 61 6d 69 63 6c 69 62 20 2d 57 6c  ,-dynamiclib -Wl
2e40: 2c 2d 66 6c 61 74 5f 6e 61 6d 65 73 70 61 63 65  ,-flat_namespace
2e50: 20 2d 57 6c 2c 2d 75 6e 64 65 66 69 6e 65 64 2c   -Wl,-undefined,
2e60: 73 75 70 70 72 65 73 73 20 2d 57 6c 2c 2d 62 69  suppress -Wl,-bi
2e70: 6e 64 5f 61 74 5f 6c 6f 61 64 5d 2c 20 5b 0a 20  nd_at_load], [. 
2e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2e90: 20 20 20 20 20 44 43 5f 54 45 53 54 5f 53 48 4f       DC_TEST_SHO
2ea0: 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d  BJFLAGS([-fPIC -
2eb0: 44 50 49 43 5d 2c 20 5b 2d 64 79 6e 61 6d 69 63  DPIC], [-dynamic
2ec0: 6c 69 62 20 2d 66 6c 61 74 5f 6e 61 6d 65 73 70  lib -flat_namesp
2ed0: 61 63 65 20 2d 75 6e 64 65 66 69 6e 65 64 20 73  ace -undefined s
2ee0: 75 70 70 72 65 73 73 5d 2c 20 5b 0a 20 20 20 20  uppress], [.    
2ef0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2f00: 20 20 20 20 44 43 5f 54 45 53 54 5f 53 48 4f 42      DC_TEST_SHOB
2f10: 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d 44  JFLAGS([-fPIC -D
2f20: 50 49 43 5d 2c 20 5b 2d 64 79 6e 61 6d 69 63 6c  PIC], [-dynamicl
2f30: 69 62 5d 2c 20 5b 0a 20 20 20 20 20 20 20 20 20  ib], [.         
2f40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2f50: 20 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 63   AC_MSG_RESULT(c
2f60: 61 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20  ant).           
2f70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41                 A
2f80: 43 5f 4d 53 47 5f 45 52 52 4f 52 28 5b 57 65 20  C_MSG_ERROR([We 
2f90: 61 72 65 20 75 6e 61 62 6c 65 20 74 6f 20 6d 61  are unable to ma
2fa0: 6b 65 20 73 68 61 72 65 64 20 6f 62 6a 65 63 74  ke shared object
2fb0: 73 2e 5d 29 0a 20 20 20 20 20 20 20 20 20 20 20  s.]).           
2fc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 5d 29 0a               ]).
2fd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2fe0: 20 20 20 20 20 20 5d 29 0a 20 20 20 20 20 20 20        ]).       
2ff0: 20 20 20 20 20 20 20 20 20 20 20 20 20 5d 29 0a               ]).
3000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3010: 20 20 5d 29 0a 20 20 20 20 20 20 20 20 20 20 20    ]).           
3020: 20 20 20 20 20 5d 29 0a 20 20 20 20 20 20 20 20       ]).        
3030: 20 20 20 20 20 20 5d 29 0a 20 20 20 20 20 20 20        ]).       
3040: 20 20 20 20 20 5d 29 0a 20 20 20 20 20 20 20 20       ]).        
3050: 20 20 5d 29 0a 20 20 20 20 20 20 20 20 5d 29 0a    ]).        ]).
3060: 20 20 20 20 20 20 5d 29 0a 20 20 20 20 5d 29 0a        ]).    ]).
3070: 20 20 66 69 0a 0a 20 20 41 43 5f 4d 53 47 5f 52    fi..  AC_MSG_R
3080: 45 53 55 4c 54 28 24 53 48 4f 42 4a 4c 44 46 4c  ESULT($SHOBJLDFL
3090: 41 47 53 20 24 53 48 4f 42 4a 46 4c 41 47 53 29  AGS $SHOBJFLAGS)
30a0: 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43  .])..AC_DEFUN(DC
30b0: 5f 43 48 4b 5f 4f 53 5f 49 4e 46 4f 2c 20 5b 0a  _CHK_OS_INFO, [.
30c0: 09 41 43 5f 43 41 4e 4f 4e 49 43 41 4c 5f 42 55  .AC_CANONICAL_BU
30d0: 49 4c 44 0a 09 41 43 5f 43 41 4e 4f 4e 49 43 41  ILD..AC_CANONICA
30e0: 4c 5f 48 4f 53 54 0a 0a 09 41 43 5f 53 55 42 53  L_HOST...AC_SUBS
30f0: 54 28 53 48 4f 42 4a 45 58 54 29 0a 09 41 43 5f  T(SHOBJEXT)..AC_
3100: 53 55 42 53 54 28 41 52 45 58 54 29 0a 20 20 20  SUBST(AREXT).   
3110: 20 20 20 20 20 41 43 5f 53 55 42 53 54 28 53 48       AC_SUBST(SH
3120: 4f 42 4a 46 4c 41 47 53 29 0a 20 20 20 20 20 20  OBJFLAGS).      
3130: 20 20 41 43 5f 53 55 42 53 54 28 53 48 4f 42 4a    AC_SUBST(SHOBJ
3140: 4c 44 46 4c 41 47 53 29 0a 0a 20 20 20 20 20 20  LDFLAGS)..      
3150: 20 20 41 43 5f 4d 53 47 5f 43 48 45 43 4b 49 4e    AC_MSG_CHECKIN
3160: 47 28 68 6f 73 74 20 6f 70 65 72 61 74 69 6e 67  G(host operating
3170: 20 73 79 73 74 65 6d 29 0a 20 20 20 20 20 20 20   system).       
3180: 20 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 24   AC_MSG_RESULT($
3190: 68 6f 73 74 5f 6f 73 29 0a 0a 09 53 48 4f 42 4a  host_os)...SHOBJ
31a0: 45 58 54 3d 22 73 6f 22 0a 09 41 52 45 58 54 3d  EXT="so"..AREXT=
31b0: 22 61 22 0a 0a 20 20 20 20 20 20 20 20 63 61 73  "a"..        cas
31c0: 65 20 24 68 6f 73 74 5f 6f 73 20 69 6e 0a 20 20  e $host_os in.  
31d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 61                da
31e0: 72 77 69 6e 2a 29 0a 09 09 09 53 48 4f 42 4a 45  rwin*)....SHOBJE
31f0: 58 54 3d 22 64 79 6c 69 62 22 0a 20 20 20 20 20  XT="dylib".     
3200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3210: 20 20 20 3b 3b 0a 09 09 68 70 75 78 2a 29 0a 09     ;;...hpux*)..
3220: 09 09 53 48 4f 42 4a 45 58 54 3d 22 73 6c 22 0a  ..SHOBJEXT="sl".
3230: 09 09 09 3b 3b 0a 09 09 6d 69 6e 67 77 2a 29 0a  ...;;...mingw*).
3240: 09 09 09 53 48 4f 42 4a 45 58 54 3d 22 64 6c 6c  ...SHOBJEXT="dll
3250: 22 0a 09 09 09 53 48 4f 42 4a 46 4c 41 47 53 3d  "....SHOBJFLAGS=
3260: 22 2d 6d 6d 73 2d 62 69 74 66 69 65 6c 64 73 20  "-mms-bitfields 
3270: 2d 44 50 49 43 22 0a 09 09 09 53 48 4f 42 4a 4c  -DPIC"....SHOBJL
3280: 44 46 4c 41 47 53 3d 27 2d 73 68 61 72 65 64 20  DFLAGS='-shared 
3290: 2d 57 6c 2c 2d 2d 64 6c 6c 20 2d 57 6c 2c 2d 2d  -Wl,--dll -Wl,--
32a0: 65 6e 61 62 6c 65 2d 61 75 74 6f 2d 69 6d 61 67  enable-auto-imag
32b0: 65 2d 62 61 73 65 20 2d 57 6c 2c 2d 2d 6f 75 74  e-base -Wl,--out
32c0: 70 75 74 2d 64 65 66 2c 24 5b 40 5d 2e 64 65 66  put-def,$[@].def
32d0: 2c 2d 2d 6f 75 74 2d 69 6d 70 6c 69 62 2c 24 5b  ,--out-implib,$[
32e0: 40 5d 2e 61 20 2d 57 6c 2c 2d 2d 65 78 70 6f 72  @].a -Wl,--expor
32f0: 74 2d 61 6c 6c 2d 73 79 6d 62 6f 6c 73 20 2d 57  t-all-symbols -W
3300: 6c 2c 2d 2d 61 64 64 2d 73 74 64 63 61 6c 6c 2d  l,--add-stdcall-
3310: 61 6c 69 61 73 27 0a 09 09 09 3b 3b 0a 09 65 73  alias'....;;..es
3320: 61 63 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28  ac.])..AC_DEFUN(
3330: 44 43 5f 54 45 53 54 5f 57 48 4f 4c 45 5f 41 52  DC_TEST_WHOLE_AR
3340: 43 48 49 56 45 5f 53 48 41 52 45 44 5f 4c 49 42  CHIVE_SHARED_LIB
3350: 2c 20 5b 0a 0a 09 53 41 56 45 5f 4c 49 42 53 3d  , [...SAVE_LIBS=
3360: 22 24 7b 4c 49 42 53 7d 22 0a 0a 09 4c 49 42 53  "${LIBS}"...LIBS
3370: 3d 22 24 7b 57 48 4f 4c 45 41 52 43 48 49 56 45  ="${WHOLEARCHIVE
3380: 7d 20 24 31 20 24 7b 4e 4f 57 48 4f 4c 45 41 52  } $1 ${NOWHOLEAR
3390: 43 48 49 56 45 7d 20 24 7b 53 41 56 45 5f 4c 49  CHIVE} ${SAVE_LI
33a0: 42 53 7d 22 0a 09 41 43 5f 4c 49 4e 4b 5f 49 46  BS}"..AC_LINK_IF
33b0: 45 4c 53 45 28 0a 09 09 41 43 5f 4c 41 4e 47 5f  ELSE(...AC_LANG_
33c0: 50 52 4f 47 52 41 4d 28 5b 5b 0a 09 09 09 5d 5d  PROGRAM([[....]]
33d0: 2c 20 5b 5b 0a 09 09 09 5d 5d 0a 09 09 29 2c 0a  , [[....]]...),.
33e0: 09 09 5b 0a 09 09 09 4c 49 42 53 3d 22 24 7b 53  ..[....LIBS="${S
33f0: 41 56 45 5f 4c 49 42 53 7d 22 0a 0a 09 09 09 24  AVE_LIBS}".....$
3400: 32 0a 09 09 5d 2c 20 5b 0a 09 09 09 4c 49 42 53  2...], [....LIBS
3410: 3d 22 24 7b 53 41 56 45 5f 4c 49 42 53 7d 22 0a  ="${SAVE_LIBS}".
3420: 0a 09 09 09 24 33 0a 09 09 5d 0a 09 29 0a 5d 29  ....$3...]..).])
3430: 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 43 48  ..AC_DEFUN(DC_CH
3440: 45 43 4b 5f 46 4f 52 5f 57 48 4f 4c 45 5f 41 52  ECK_FOR_WHOLE_AR
3450: 43 48 49 56 45 2c 20 5b 0a 09 41 43 5f 4d 53 47  CHIVE, [..AC_MSG
3460: 5f 43 48 45 43 4b 49 4e 47 28 5b 66 6f 72 20 68  _CHECKING([for h
3470: 6f 77 20 74 6f 20 6c 69 6e 6b 20 77 68 6f 6c 65  ow to link whole
3480: 20 61 72 63 68 69 76 65 5d 29 0a 0a 09 53 41 56   archive])...SAV
3490: 45 5f 43 46 4c 41 47 53 3d 22 24 7b 43 46 4c 41  E_CFLAGS="${CFLA
34a0: 47 53 7d 22 0a 0a 09 77 68 6f 6c 65 61 72 63 68  GS}"...wholearch
34b0: 69 76 65 3d 22 22 0a 0a 09 66 6f 72 20 63 68 65  ive=""...for che
34c0: 63 6b 20 69 6e 20 22 2d 57 6c 2c 2d 2d 77 68 6f  ck in "-Wl,--who
34d0: 6c 65 2d 61 72 63 68 69 76 65 20 2d 57 6c 2c 2d  le-archive -Wl,-
34e0: 2d 6e 6f 2d 77 68 6f 6c 65 2d 61 72 63 68 69 76  -no-whole-archiv
34f0: 65 22 20 22 2d 57 6c 2c 2d 7a 2c 61 6c 6c 65 78  e" "-Wl,-z,allex
3500: 74 72 61 63 74 20 2d 57 6c 2c 2d 7a 2c 64 65 66  tract -Wl,-z,def
3510: 61 75 6c 74 65 78 74 72 61 63 74 22 3b 20 64 6f  aultextract"; do
3520: 0a 09 09 43 46 4c 41 47 53 3d 22 24 7b 53 41 56  ...CFLAGS="${SAV
3530: 45 5f 43 46 4c 41 47 53 7d 20 24 7b 63 68 65 63  E_CFLAGS} ${chec
3540: 6b 7d 22 0a 0a 09 09 41 43 5f 4c 49 4e 4b 5f 49  k}"....AC_LINK_I
3550: 46 45 4c 53 45 28 41 43 5f 4c 41 4e 47 5f 50 52  FELSE(AC_LANG_PR
3560: 4f 47 52 41 4d 28 5b 5d 2c 20 5b 5d 29 2c 0a 09  OGRAM([], []),..
3570: 09 09 5b 0a 09 09 09 09 77 68 6f 6c 65 61 72 63  ..[.....wholearc
3580: 68 69 76 65 3d 22 24 7b 63 68 65 63 6b 7d 22 0a  hive="${check}".
3590: 0a 09 09 09 09 62 72 65 61 6b 0a 09 09 09 5d 0a  .....break....].
35a0: 09 09 29 0a 0a 09 64 6f 6e 65 0a 0a 09 43 46 4c  ..)...done...CFL
35b0: 41 47 53 3d 22 24 7b 53 41 56 45 5f 43 46 4c 41  AGS="${SAVE_CFLA
35c0: 47 53 7d 22 0a 0a 09 69 66 20 74 65 73 74 20 2d  GS}"...if test -
35d0: 7a 20 22 24 7b 77 68 6f 6c 65 61 72 63 68 69 76  z "${wholearchiv
35e0: 65 7d 22 3b 20 74 68 65 6e 0a 09 09 41 43 5f 4d  e}"; then...AC_M
35f0: 53 47 5f 52 45 53 55 4c 54 28 5b 6e 6f 74 20 66  SG_RESULT([not f
3600: 6f 75 6e 64 5d 29 0a 09 65 6c 73 65 0a 09 09 41  ound])..else...A
3610: 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 5b 24 7b  C_MSG_RESULT([${
3620: 77 68 6f 6c 65 61 72 63 68 69 76 65 7d 5d 29 0a  wholearchive}]).
3630: 0a 09 09 57 48 4f 4c 45 41 52 43 48 49 56 45 3d  ...WHOLEARCHIVE=
3640: 60 65 63 68 6f 20 22 24 7b 77 68 6f 6c 65 61 72  `echo "${wholear
3650: 63 68 69 76 65 7d 22 20 7c 20 63 75 74 20 2d 66  chive}" | cut -f
3660: 20 31 20 2d 64 20 27 20 27 60 0a 09 09 4e 4f 57   1 -d ' '`...NOW
3670: 48 4f 4c 45 41 52 43 48 49 56 45 3d 60 65 63 68  HOLEARCHIVE=`ech
3680: 6f 20 22 24 7b 77 68 6f 6c 65 61 72 63 68 69 76  o "${wholearchiv
3690: 65 7d 22 20 7c 20 63 75 74 20 2d 66 20 32 20 2d  e}" | cut -f 2 -
36a0: 64 20 27 20 27 60 0a 09 66 69 0a 0a 09 41 43 5f  d ' '`..fi...AC_
36b0: 53 55 42 53 54 28 57 48 4f 4c 45 41 52 43 48 49  SUBST(WHOLEARCHI
36c0: 56 45 29 0a 09 41 43 5f 53 55 42 53 54 28 4e 4f  VE)..AC_SUBST(NO
36d0: 57 48 4f 4c 45 41 52 43 48 49 56 45 29 0a 5d 29  WHOLEARCHIVE).])
36e0: 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 53 45  ..AC_DEFUN(DC_SE
36f0: 54 4c 44 52 55 4e 50 41 54 48 2c 20 5b 0a 09 4f  TLDRUNPATH, [..O
3700: 4c 44 5f 4c 44 46 4c 41 47 53 3d 22 24 7b 4c 44  LD_LDFLAGS="${LD
3710: 46 4c 41 47 53 7d 22 0a 0a 09 66 6f 72 20 74 65  FLAGS}"...for te
3720: 73 74 6c 64 66 6c 61 67 73 20 69 6e 20 22 2d 57  stldflags in "-W
3730: 6c 2c 2d 72 70 61 74 68 20 2d 57 6c 2c 24 31 22  l,-rpath -Wl,$1"
3740: 20 22 2d 57 6c 2c 2d 52 20 2d 57 6c 2c 24 31 22   "-Wl,-R -Wl,$1"
3750: 3b 20 64 6f 0a 09 09 4c 44 46 4c 41 47 53 3d 22  ; do...LDFLAGS="
3760: 24 7b 4f 4c 44 5f 4c 44 46 4c 41 47 53 7d 20 24  ${OLD_LDFLAGS} $
3770: 7b 74 65 73 74 6c 64 66 6c 61 67 73 7d 22 0a 09  {testldflags}"..
3780: 09 41 43 5f 54 52 59 5f 4c 49 4e 4b 28 5b 23 69  .AC_TRY_LINK([#i
3790: 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e  nclude <stdio.h>
37a0: 5d 2c 20 5b 20 72 65 74 75 72 6e 28 30 29 3b 20  ], [ return(0); 
37b0: 5d 2c 20 5b 0a 09 09 09 4c 44 52 55 4e 50 41 54  ], [....LDRUNPAT
37c0: 48 3d 22 24 4c 44 52 55 4e 50 41 54 48 20 24 74  H="$LDRUNPATH $t
37d0: 65 73 74 6c 64 66 6c 61 67 73 22 0a 0a 09 09 09  estldflags".....
37e0: 62 72 65 61 6b 0a 09 09 5d 29 0a 09 64 6f 6e 65  break...])..done
37f0: 0a 0a 09 4c 44 46 4c 41 47 53 3d 22 24 7b 4f 4c  ...LDFLAGS="${OL
3800: 44 5f 4c 44 46 4c 41 47 53 7d 22 0a 0a 09 41 43  D_LDFLAGS}"...AC
3810: 5f 53 55 42 53 54 28 4c 44 52 55 4e 50 41 54 48  _SUBST(LDRUNPATH
3820: 29 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44  ).])..AC_DEFUN(D
3830: 43 5f 53 45 54 5f 44 49 52 32 43 5f 46 4c 41 47  C_SET_DIR2C_FLAG
3840: 53 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 45  S, [..AC_MSG_CHE
3850: 43 4b 49 4e 47 28 5b 69 66 20 77 65 20 73 68 6f  CKING([if we sho
3860: 75 6c 64 20 6f 62 73 75 66 63 61 74 65 20 74 68  uld obsufcate th
3870: 65 20 43 56 46 53 5d 29 0a 0a 09 41 43 5f 41 52  e CVFS])...AC_AR
3880: 47 5f 57 49 54 48 28 6f 62 73 66 75 63 61 74 65  G_WITH(obsfucate
3890: 64 2d 63 76 66 73 2c 20 41 43 5f 48 45 4c 50 5f  d-cvfs, AC_HELP_
38a0: 53 54 52 49 4e 47 28 5b 2d 2d 77 69 74 68 2d 6f  STRING([--with-o
38b0: 62 73 66 75 63 61 74 65 64 2d 63 76 66 73 5d 2c  bsfucated-cvfs],
38c0: 20 5b 4f 62 73 66 75 63 61 74 65 20 43 56 46 53   [Obsfucate CVFS
38d0: 20 66 69 6c 65 73 79 73 74 65 6d 20 28 72 65 71   filesystem (req
38e0: 75 69 72 65 73 20 2d 2d 65 6e 61 62 6c 65 2d 6b  uires --enable-k
38f0: 69 74 2d 73 74 6f 72 61 67 65 3d 63 76 66 73 29  it-storage=cvfs)
3900: 5d 29 2c 20 5b 0a 09 09 6f 62 73 66 75 63 61 74  ]), [...obsfucat
3910: 65 5f 63 76 66 73 3d 24 77 69 74 68 76 61 6c 0a  e_cvfs=$withval.
3920: 09 5d 2c 20 5b 0a 09 09 6f 62 73 66 75 63 61 74  .], [...obsfucat
3930: 65 5f 63 76 66 73 3d 27 6e 6f 27 0a 09 5d 29 0a  e_cvfs='no'..]).
3940: 0a 09 63 61 73 65 20 22 24 6f 62 73 66 75 63 61  ..case "$obsfuca
3950: 74 65 5f 63 76 66 73 22 20 69 6e 0a 09 09 79 65  te_cvfs" in...ye
3960: 73 29 0a 09 09 09 41 43 5f 4d 53 47 5f 52 45 53  s)....AC_MSG_RES
3970: 55 4c 54 28 5b 79 65 73 5d 29 0a 09 09 09 44 49  ULT([yes])....DI
3980: 52 32 43 5f 46 4c 41 47 53 3d 27 2d 2d 6f 62 73  R2C_FLAGS='--obs
3990: 66 75 63 61 74 65 27 0a 09 09 09 3b 3b 0a 09 09  fucate'....;;...
39a0: 2a 29 0a 09 09 09 41 43 5f 4d 53 47 5f 52 45 53  *)....AC_MSG_RES
39b0: 55 4c 54 28 5b 6e 6f 5d 29 0a 09 09 09 44 49 52  ULT([no])....DIR
39c0: 32 43 5f 46 4c 41 47 53 3d 27 27 0a 09 09 09 3b  2C_FLAGS=''....;
39d0: 3b 0a 09 65 73 61 63 0a 0a 09 41 43 5f 53 55 42  ;..esac...AC_SUB
39e0: 53 54 28 44 49 52 32 43 5f 46 4c 41 47 53 29 0a  ST(DIR2C_FLAGS).
39f0: 5d 29 0a                                         ]).