Hex Artifact Content

Artifact ebda080a59a6f3dfb7a7c18050843e96c9d075b128e75f04e0b588ceffa2f7a5:


0000: 23 21 2f 62 69 6e 2f 62 61 73 68 20 2d 6e 6f 72  #!/bin/bash -nor
0010: 63 0a 64 6e 6c 09 54 68 69 73 20 66 69 6c 65 20  c.dnl.This file 
0020: 69 73 20 61 6e 20 69 6e 70 75 74 20 66 69 6c 65  is an input file
0030: 20 75 73 65 64 20 62 79 20 74 68 65 20 47 4e 55   used by the GNU
0040: 20 22 61 75 74 6f 63 6f 6e 66 22 20 70 72 6f 67   "autoconf" prog
0050: 72 61 6d 20 74 6f 0a 64 6e 6c 09 67 65 6e 65 72  ram to.dnl.gener
0060: 61 74 65 20 74 68 65 20 66 69 6c 65 20 22 63 6f  ate the file "co
0070: 6e 66 69 67 75 72 65 22 2c 20 77 68 69 63 68 20  nfigure", which 
0080: 69 73 20 72 75 6e 20 64 75 72 69 6e 67 20 54 63  is run during Tc
0090: 6c 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 64  l installation.d
00a0: 6e 6c 09 74 6f 20 63 6f 6e 66 69 67 75 72 65 20  nl.to configure 
00b0: 74 68 65 20 73 79 73 74 65 6d 20 66 6f 72 20 74  the system for t
00c0: 68 65 20 6c 6f 63 61 6c 20 65 6e 76 69 72 6f 6e  he local environ
00d0: 6d 65 6e 74 2e 0a 0a 23 0a 23 2d 2d 2d 2d 2d 2d  ment...#.#------
00e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
00f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0100: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0110: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0120: 2d 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20  -.# This is the 
0130: 63 6f 6e 66 69 67 75 72 65 2e 61 63 20 66 6f 72  configure.ac for
0140: 20 74 68 65 20 54 63 6c 54 4c 53 20 65 78 74 65   the TclTLS exte
0150: 6e 73 69 6f 6e 2e 20 20 54 68 65 20 6f 6e 6c 79  nsion.  The only
0160: 20 70 6c 61 63 65 73 20 79 6f 75 0a 23 20 73 68   places you.# sh
0170: 6f 75 6c 64 20 6e 65 65 64 20 74 6f 20 6d 6f 64  ould need to mod
0180: 69 66 79 20 74 68 69 73 20 66 69 6c 65 20 61 72  ify this file ar
0190: 65 20 6d 61 72 6b 65 64 20 62 79 20 74 68 65 20  e marked by the 
01a0: 73 74 72 69 6e 67 20 5f 5f 43 48 41 4e 47 45 5f  string __CHANGE_
01b0: 5f 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  _..#------------
01c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
01d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
01e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
01f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 23 2d 2d  -----------..#--
0200: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0240: 2d 2d 2d 2d 2d 0a 23 20 53 65 74 20 79 6f 75 72  -----.# Set your
0250: 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 61 6e   package name an
0260: 64 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72  d version number
0270: 73 20 68 65 72 65 2e 0a 23 0a 23 20 54 68 69 73  s here..#.# This
0280: 20 69 6e 69 74 69 61 6c 69 7a 65 73 20 74 68 65   initializes the
0290: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 77 69 74   environment wit
02a0: 68 20 50 41 43 4b 41 47 45 5f 4e 41 4d 45 20 61  h PACKAGE_NAME a
02b0: 6e 64 20 50 41 43 4b 41 47 45 5f 56 45 52 53 49  nd PACKAGE_VERSI
02c0: 4f 4e 0a 23 20 73 65 74 20 61 73 20 70 72 6f 76  ON.# set as prov
02d0: 69 64 65 64 2e 20 20 54 68 65 73 65 20 77 69 6c  ided.  These wil
02e0: 6c 20 61 6c 73 6f 20 62 65 20 61 64 64 65 64 20  l also be added 
02f0: 61 73 20 2d 44 20 64 65 66 73 20 69 6e 20 79 6f  as -D defs in yo
0300: 75 72 20 4d 61 6b 65 66 69 6c 65 0a 23 20 73 6f  ur Makefile.# so
0310: 20 79 6f 75 20 63 61 6e 20 65 6e 63 6f 64 65 20   you can encode 
0320: 74 68 65 20 70 61 63 6b 61 67 65 20 76 65 72 73  the package vers
0330: 69 6f 6e 20 64 69 72 65 63 74 6c 79 20 69 6e 74  ion directly int
0340: 6f 20 74 68 65 20 73 6f 75 72 63 65 20 66 69 6c  o the source fil
0350: 65 73 2e 0a 23 20 54 68 69 73 20 77 69 6c 6c 20  es..# This will 
0360: 61 6c 73 6f 20 64 65 66 69 6e 65 20 61 20 73 70  also define a sp
0370: 65 63 69 61 6c 20 73 79 6d 62 6f 6c 20 66 6f 72  ecial symbol for
0380: 20 57 69 6e 64 6f 77 73 20 28 42 55 49 4c 44 5f   Windows (BUILD_
0390: 3c 50 41 43 4b 41 47 45 5f 4e 41 4d 45 3e 0a 23  <PACKAGE_NAME>.#
03a0: 20 73 6f 20 74 68 61 74 20 77 65 20 63 72 65 61   so that we crea
03b0: 74 65 20 74 68 65 20 65 78 70 6f 72 74 20 6c 69  te the export li
03c0: 62 72 61 72 79 20 77 69 74 68 20 74 68 65 20 64  brary with the d
03d0: 6c 6c 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ll..#-----------
03e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
03f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0400: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0410: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43  ------------..AC
0420: 5f 49 4e 49 54 28 5b 74 6c 73 5d 2c 5b 31 2e 38  _INIT([tls],[1.8
0430: 2e 30 5d 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  .0])..#---------
0440: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0450: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0460: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0470: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43 61  -----------.# Ca
0480: 6c 6c 20 54 45 41 5f 49 4e 49 54 20 61 73 20 74  ll TEA_INIT as t
0490: 68 65 20 66 69 72 73 74 20 54 45 41 5f 20 6d 61  he first TEA_ ma
04a0: 63 72 6f 20 74 6f 20 73 65 74 20 75 70 20 69 6e  cro to set up in
04b0: 69 74 69 61 6c 20 76 61 72 73 2e 0a 23 20 54 68  itial vars..# Th
04c0: 69 73 20 77 69 6c 6c 20 64 65 66 69 6e 65 20 61  is will define a
04d0: 20 24 7b 54 45 41 5f 50 4c 41 54 46 4f 52 4d 7d   ${TEA_PLATFORM}
04e0: 20 76 61 72 69 61 62 6c 65 20 3d 3d 20 22 75 6e   variable == "un
04f0: 69 78 22 20 6f 72 20 22 77 69 6e 64 6f 77 73 22  ix" or "windows"
0500: 0a 23 20 61 73 20 77 65 6c 6c 20 61 73 20 50 4b  .# as well as PK
0510: 47 5f 4c 49 42 5f 46 49 4c 45 20 61 6e 64 20 50  G_LIB_FILE and P
0520: 4b 47 5f 53 54 55 42 5f 4c 49 42 5f 46 49 4c 45  KG_STUB_LIB_FILE
0530: 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
0540: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0550: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0560: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0570: 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 49 4e 49  -------..TEA_INI
0580: 54 0a 0a 41 43 5f 43 4f 4e 46 49 47 5f 41 55 58  T..AC_CONFIG_AUX
0590: 5f 44 49 52 28 74 63 6c 63 6f 6e 66 69 67 29 0a  _DIR(tclconfig).
05a0: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
05b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
05c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
05d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
05e0: 2d 2d 2d 2d 2d 2d 0a 23 20 4c 6f 61 64 20 74 68  ------.# Load th
05f0: 65 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 66  e tclConfig.sh f
0600: 69 6c 65 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ile.#-----------
0610: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0620: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0630: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 50  ---------..TEA_P
0650: 41 54 48 5f 54 43 4c 43 4f 4e 46 49 47 0a 54 45  ATH_TCLCONFIG.TE
0660: 41 5f 4c 4f 41 44 5f 54 43 4c 43 4f 4e 46 49 47  A_LOAD_TCLCONFIG
0670: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
0680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
06a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
06b0: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 4c 6f 61 64 20 74  -------.# Load t
06c0: 68 65 20 74 6b 43 6f 6e 66 69 67 2e 73 68 20 66  he tkConfig.sh f
06d0: 69 6c 65 20 69 66 20 6e 65 63 65 73 73 61 72 79  ile if necessary
06e0: 20 28 54 6b 20 65 78 74 65 6e 73 69 6f 6e 29 0a   (Tk extension).
06f0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
0700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0730: 2d 2d 2d 2d 2d 0a 0a 23 54 45 41 5f 50 41 54 48  -----..#TEA_PATH
0740: 5f 54 4b 43 4f 4e 46 49 47 0a 23 54 45 41 5f 4c  _TKCONFIG.#TEA_L
0750: 4f 41 44 5f 54 4b 43 4f 4e 46 49 47 0a 0a 23 2d  OAD_TKCONFIG..#-
0760: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0770: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0780: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0790: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
07a0: 2d 2d 2d 2d 2d 2d 0a 23 20 48 61 6e 64 6c 65 20  ------.# Handle 
07b0: 74 68 65 20 2d 2d 70 72 65 66 69 78 3d 2e 2e 2e  the --prefix=...
07c0: 20 6f 70 74 69 6f 6e 20 62 79 20 64 65 66 61 75   option by defau
07d0: 6c 74 69 6e 67 20 74 6f 20 77 68 61 74 20 54 63  lting to what Tc
07e0: 6c 20 67 61 76 65 2e 0a 23 20 4d 75 73 74 20 62  l gave..# Must b
07f0: 65 20 63 61 6c 6c 65 64 20 61 66 74 65 72 20 54  e called after T
0800: 45 41 5f 4c 4f 41 44 5f 54 43 4c 43 4f 4e 46 49  EA_LOAD_TCLCONFI
0810: 47 20 61 6e 64 20 62 65 66 6f 72 65 20 54 45 41  G and before TEA
0820: 5f 53 45 54 55 50 5f 43 4f 4d 50 49 4c 45 52 2e  _SETUP_COMPILER.
0830: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
0840: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0860: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 50  ---------..TEA_P
0880: 52 45 46 49 58 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  REFIX..#--------
0890: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
08d0: 23 20 53 74 61 6e 64 61 72 64 20 63 6f 6d 70 69  # Standard compi
08e0: 6c 65 72 20 63 68 65 63 6b 73 2e 0a 23 20 54 68  ler checks..# Th
08f0: 69 73 20 73 65 74 73 20 75 70 20 43 43 20 62 79  is sets up CC by
0900: 20 75 73 69 6e 67 20 74 68 65 20 43 43 20 65 6e   using the CC en
0910: 76 20 76 61 72 2c 20 6f 72 20 6c 6f 6f 6b 73 20  v var, or looks 
0920: 66 6f 72 20 67 63 63 20 6f 74 68 65 72 77 69 73  for gcc otherwis
0930: 65 2e 0a 23 20 54 68 69 73 20 61 6c 73 6f 20 63  e..# This also c
0940: 61 6c 6c 73 20 41 43 5f 50 52 4f 47 5f 43 43 20  alls AC_PROG_CC 
0950: 61 6e 64 20 61 20 66 65 77 20 6f 74 68 65 72 73  and a few others
0960: 20 74 6f 20 63 72 65 61 74 65 20 74 68 65 20 62   to create the b
0970: 61 73 69 63 20 73 65 74 75 70 0a 23 20 6e 65 63  asic setup.# nec
0980: 65 73 73 61 72 79 20 74 6f 20 63 6f 6d 70 69 6c  essary to compil
0990: 65 20 65 78 65 63 75 74 61 62 6c 65 73 2e 0a 23  e executables..#
09a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09e0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 53 45 54  -------..TEA_SET
09f0: 55 50 5f 43 4f 4d 50 49 4c 45 52 0a 0a 23 2d 2d  UP_COMPILER..#--
0a00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0a10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0a30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0a40: 2d 2d 2d 2d 2d 0a 23 20 5f 5f 43 48 41 4e 47 45  -----.# __CHANGE
0a50: 5f 5f 0a 23 20 53 70 65 63 69 66 79 20 74 68 65  __.# Specify the
0a60: 20 43 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20   C source files 
0a70: 74 6f 20 63 6f 6d 70 69 6c 65 20 69 6e 20 54 45  to compile in TE
0a80: 41 5f 41 44 44 5f 53 4f 55 52 43 45 53 2c 0a 23  A_ADD_SOURCES,.#
0a90: 20 70 75 62 6c 69 63 20 68 65 61 64 65 72 73 20   public headers 
0aa0: 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20  that need to be 
0ab0: 69 6e 73 74 61 6c 6c 65 64 20 69 6e 20 54 45 41  installed in TEA
0ac0: 5f 41 44 44 5f 48 45 41 44 45 52 53 2c 0a 23 20  _ADD_HEADERS,.# 
0ad0: 73 74 75 62 20 6c 69 62 72 61 72 79 20 43 20 73  stub library C s
0ae0: 6f 75 72 63 65 20 66 69 6c 65 73 20 74 6f 20 63  ource files to c
0af0: 6f 6d 70 69 6c 65 20 69 6e 20 54 45 41 5f 41 44  ompile in TEA_AD
0b00: 44 5f 53 54 55 42 5f 53 4f 55 52 43 45 53 2c 0a  D_STUB_SOURCES,.
0b10: 23 20 61 6e 64 20 72 75 6e 74 69 6d 65 20 54 63  # and runtime Tc
0b20: 6c 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 20  l library files 
0b30: 69 6e 20 54 45 41 5f 41 44 44 5f 54 43 4c 5f 53  in TEA_ADD_TCL_S
0b40: 4f 55 52 43 45 53 2e 0a 23 20 54 68 69 73 20 64  OURCES..# This d
0b50: 65 66 69 6e 65 73 20 50 4b 47 28 5f 53 54 55 42  efines PKG(_STUB
0b60: 29 5f 53 4f 55 52 43 45 53 2c 20 50 4b 47 28 5f  )_SOURCES, PKG(_
0b70: 53 54 55 42 29 5f 4f 42 4a 45 43 54 53 2c 20 50  STUB)_OBJECTS, P
0b80: 4b 47 5f 48 45 41 44 45 52 53 0a 23 20 61 6e 64  KG_HEADERS.# and
0b90: 20 50 4b 47 5f 54 43 4c 5f 53 4f 55 52 43 45 53   PKG_TCL_SOURCES
0ba0: 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
0bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f  ----------..TEA_
0bf0: 41 44 44 5f 53 4f 55 52 43 45 53 28 5b 74 6c 73  ADD_SOURCES([tls
0c00: 2e 63 20 74 6c 73 42 49 4f 2e 63 20 74 6c 73 49  .c tlsBIO.c tlsI
0c10: 4f 2e 63 20 74 6c 73 58 35 30 39 2e 63 5d 29 0a  O.c tlsX509.c]).
0c20: 54 45 41 5f 41 44 44 5f 48 45 41 44 45 52 53 28  TEA_ADD_HEADERS(
0c30: 5b 67 65 6e 65 72 69 63 2f 74 6c 73 2e 68 5d 29  [generic/tls.h])
0c40: 0a 54 45 41 5f 41 44 44 5f 49 4e 43 4c 55 44 45  .TEA_ADD_INCLUDE
0c50: 53 28 5b 5d 29 0a 54 45 41 5f 41 44 44 5f 4c 49  S([]).TEA_ADD_LI
0c60: 42 53 28 5b 5d 29 0a 54 45 41 5f 41 44 44 5f 43  BS([]).TEA_ADD_C
0c70: 46 4c 41 47 53 28 5b 5d 29 0a 54 45 41 5f 41 44  FLAGS([]).TEA_AD
0c80: 44 5f 53 54 55 42 5f 53 4f 55 52 43 45 53 28 5b  D_STUB_SOURCES([
0c90: 5d 29 0a 54 45 41 5f 41 44 44 5f 54 43 4c 5f 53  ]).TEA_ADD_TCL_S
0ca0: 4f 55 52 43 45 53 28 5b 6c 69 62 72 61 72 79 2f  OURCES([library/
0cb0: 74 6c 73 2e 74 63 6c 5d 29 0a 0a 23 2d 2d 2d 2d  tls.tcl])..#----
0cc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0cd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0ce0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0cf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0d00: 0a 23 0a 23 20 59 6f 75 20 63 61 6e 20 61 64 64  .#.# You can add
0d10: 20 6d 6f 72 65 20 66 69 6c 65 73 20 74 6f 20 63   more files to c
0d20: 6c 65 61 6e 20 69 66 20 79 6f 75 72 20 65 78 74  lean if your ext
0d30: 65 6e 73 69 6f 6e 20 63 72 65 61 74 65 73 20 61  ension creates a
0d40: 6e 79 20 65 78 74 72 61 0a 23 20 66 69 6c 65 73  ny extra.# files
0d50: 20 62 79 20 65 78 74 65 6e 64 69 6e 67 20 43 4c   by extending CL
0d60: 45 41 4e 46 49 4c 45 53 2e 0a 23 20 41 64 64 20  EANFILES..# Add 
0d70: 70 6b 67 49 6e 64 65 78 2e 74 63 6c 20 69 66 20  pkgIndex.tcl if 
0d80: 69 74 20 69 73 20 67 65 6e 65 72 61 74 65 64 20  it is generated 
0d90: 69 6e 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 20  in the Makefile 
0da0: 69 6e 73 74 65 61 64 20 6f 66 20 2e 2f 63 6f 6e  instead of ./con
0db0: 66 69 67 75 72 65 0a 23 20 61 6e 64 20 63 68 61  figure.# and cha
0dc0: 6e 67 65 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20  nge Makefile.in 
0dd0: 74 6f 20 6d 6f 76 65 20 69 74 20 66 72 6f 6d 20  to move it from 
0de0: 43 4f 4e 46 49 47 5f 43 4c 45 41 4e 5f 46 49 4c  CONFIG_CLEAN_FIL
0df0: 45 53 20 74 6f 20 42 49 4e 41 52 49 45 53 20 76  ES to BINARIES v
0e00: 61 72 2e 0a 23 0a 23 20 41 20 66 65 77 20 6d 69  ar..#.# A few mi
0e10: 73 63 65 6c 6c 61 6e 65 6f 75 73 20 70 6c 61 74  scellaneous plat
0e20: 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 69 74  form-specific it
0e30: 65 6d 73 3a 0a 23 20 54 45 41 5f 41 44 44 5f 2a  ems:.# TEA_ADD_*
0e40: 20 61 6e 79 20 70 6c 61 74 66 6f 72 6d 20 73 70   any platform sp
0e50: 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 72 2f  ecific compiler/
0e60: 62 75 69 6c 64 20 69 6e 66 6f 20 68 65 72 65 2e  build info here.
0e70: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
0e80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0e90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0ea0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0eb0: 2d 2d 2d 2d 2d 2d 0a 0a 43 4f 4e 46 49 47 5f 43  ------..CONFIG_C
0ec0: 4c 45 41 4e 5f 46 49 4c 45 53 3d 22 24 43 4f 4e  LEAN_FILES="$CON
0ed0: 46 49 47 5f 43 4c 45 41 4e 5f 46 49 4c 45 53 20  FIG_CLEAN_FILES 
0ee0: 74 6c 73 2e 74 63 6c 2e 68 2e 2a 20 63 6f 6e 66  tls.tcl.h.* conf
0ef0: 69 67 2e 6c 6f 67 20 63 6f 6e 66 69 67 2e 73 74  ig.log config.st
0f00: 61 74 75 73 20 64 68 5f 70 61 72 61 6d 73 2e 68  atus dh_params.h
0f10: 2e 6e 65 77 20 64 68 5f 70 61 72 61 6d 73 2e 68  .new dh_params.h
0f20: 20 4d 61 6b 65 66 69 6c 65 20 70 6b 67 49 6e 64   Makefile pkgInd
0f30: 65 78 2e 74 63 6c 20 74 63 6c 74 6c 73 2e 61 2e  ex.tcl tcltls.a.
0f40: 6c 69 6e 6b 61 64 64 20 74 63 6c 74 6c 73 2e 73  linkadd tcltls.s
0f50: 79 6d 73 22 0a 69 66 20 74 65 73 74 20 22 24 7b  yms".if test "${
0f60: 54 45 41 5f 50 4c 41 54 46 4f 52 4d 7d 22 20 3d  TEA_PLATFORM}" =
0f70: 20 22 77 69 6e 64 6f 77 73 22 20 3b 20 74 68 65   "windows" ; the
0f80: 6e 0a 20 20 20 20 41 43 5f 44 45 46 49 4e 45 28  n.    AC_DEFINE(
0f90: 42 55 49 4c 44 5f 74 6c 73 29 0a 20 20 20 20 41  BUILD_tls).    A
0fa0: 43 5f 44 45 46 49 4e 45 28 57 49 4e 44 4f 57 53  C_DEFINE(WINDOWS
0fb0: 29 0a 20 20 20 20 43 4c 45 41 4e 46 49 4c 45 53  ).    CLEANFILES
0fc0: 3d 22 70 6b 67 49 6e 64 65 78 2e 74 63 6c 20 2a  ="pkgIndex.tcl *
0fd0: 2e 6c 69 62 20 2a 2e 64 6c 6c 20 2a 2e 65 78 70  .lib *.dll *.exp
0fe0: 20 2a 2e 69 6c 6b 20 2a 2e 70 64 62 20 76 63 2a   *.ilk *.pdb vc*
0ff0: 2e 70 63 68 22 0a 65 6c 73 65 0a 20 20 20 20 43  .pch".else.    C
1000: 4c 45 41 4e 46 49 4c 45 53 3d 22 70 6b 67 49 6e  LEANFILES="pkgIn
1010: 64 65 78 2e 74 63 6c 20 2a 2e 73 6f 22 0a 66 69  dex.tcl *.so".fi
1020: 0a 41 43 5f 53 55 42 53 54 28 43 4c 45 41 4e 46  .AC_SUBST(CLEANF
1030: 49 4c 45 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  ILES)..#--------
1040: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1050: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1060: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1070: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43  ------------.# C
1080: 68 6f 6f 73 65 20 77 68 69 63 68 20 68 65 61 64  hoose which head
1090: 65 72 73 20 79 6f 75 20 6e 65 65 64 2e 20 20 45  ers you need.  E
10a0: 78 74 65 6e 73 69 6f 6e 20 61 75 74 68 6f 72 73  xtension authors
10b0: 20 73 68 6f 75 6c 64 20 74 72 79 20 76 65 72 79   should try very
10c0: 0a 23 20 68 61 72 64 20 74 6f 20 6f 6e 6c 79 20  .# hard to only 
10d0: 72 65 6c 79 20 6f 6e 20 74 68 65 20 54 63 6c 20  rely on the Tcl 
10e0: 70 75 62 6c 69 63 20 68 65 61 64 65 72 20 66 69  public header fi
10f0: 6c 65 73 2e 20 20 49 6e 74 65 72 6e 61 6c 20 68  les.  Internal h
1100: 65 61 64 65 72 73 0a 23 20 63 6f 6e 74 61 69 6e  eaders.# contain
1110: 20 70 72 69 76 61 74 65 20 64 61 74 61 20 73 74   private data st
1120: 72 75 63 74 75 72 65 73 20 61 6e 64 20 61 72 65  ructures and are
1130: 20 73 75 62 6a 65 63 74 20 74 6f 20 63 68 61 6e   subject to chan
1140: 67 65 20 77 69 74 68 6f 75 74 0a 23 20 6e 6f 74  ge without.# not
1150: 69 63 65 2e 0a 23 20 54 68 69 73 20 4d 55 53 54  ice..# This MUST
1160: 20 62 65 20 63 61 6c 6c 65 64 20 61 66 74 65 72   be called after
1170: 20 54 45 41 5f 4c 4f 41 44 5f 54 43 4c 43 4f 4e   TEA_LOAD_TCLCON
1180: 46 49 47 20 2f 20 54 45 41 5f 4c 4f 41 44 5f 54  FIG / TEA_LOAD_T
1190: 4b 43 4f 4e 46 49 47 0a 23 2d 2d 2d 2d 2d 2d 2d  KCONFIG.#-------
11a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
11b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
11c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
11d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54  -------------..T
11e0: 45 41 5f 50 55 42 4c 49 43 5f 54 43 4c 5f 48 45  EA_PUBLIC_TCL_HE
11f0: 41 44 45 52 53 0a 23 54 45 41 5f 50 52 49 56 41  ADERS.#TEA_PRIVA
1200: 54 45 5f 54 43 4c 5f 48 45 41 44 45 52 53 0a 0a  TE_TCL_HEADERS..
1210: 23 54 45 41 5f 50 55 42 4c 49 43 5f 54 4b 5f 48  #TEA_PUBLIC_TK_H
1220: 45 41 44 45 52 53 0a 23 54 45 41 5f 50 52 49 56  EADERS.#TEA_PRIV
1230: 41 54 45 5f 54 4b 5f 48 45 41 44 45 52 53 0a 23  ATE_TK_HEADERS.#
1240: 54 45 41 5f 50 41 54 48 5f 58 0a 0a 23 2d 2d 2d  TEA_PATH_X..#---
1250: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1270: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1280: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1290: 2d 0a 23 20 43 68 65 63 6b 20 77 68 65 74 68 65  -.# Check whethe
12a0: 72 20 2d 2d 65 6e 61 62 6c 65 2d 74 68 72 65 61  r --enable-threa
12b0: 64 73 20 6f 72 20 2d 2d 64 69 73 61 62 6c 65 2d  ds or --disable-
12c0: 74 68 72 65 61 64 73 20 77 61 73 20 67 69 76 65  threads was give
12d0: 6e 2e 0a 23 20 54 68 69 73 20 61 75 74 6f 2d 65  n..# This auto-e
12e0: 6e 61 62 6c 65 73 20 69 66 20 54 63 6c 20 77 61  nables if Tcl wa
12f0: 73 20 63 6f 6d 70 69 6c 65 64 20 74 68 72 65 61  s compiled threa
1300: 64 65 64 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ded..#----------
1310: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1320: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1330: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1340: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f  ----------..TEA_
1350: 45 4e 41 42 4c 45 5f 54 48 52 45 41 44 53 0a 0a  ENABLE_THREADS..
1360: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
1370: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1380: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1390: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13a0: 2d 2d 2d 2d 2d 0a 23 20 54 68 65 20 73 74 61 74  -----.# The stat
13b0: 65 6d 65 6e 74 20 62 65 6c 6f 77 20 64 65 66 69  ement below defi
13c0: 6e 65 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e  nes a collection
13d0: 20 6f 66 20 73 79 6d 62 6f 6c 73 20 72 65 6c 61   of symbols rela
13e0: 74 65 64 20 74 6f 0a 23 20 62 75 69 6c 64 69 6e  ted to.# buildin
13f0: 67 20 61 73 20 61 20 73 68 61 72 65 64 20 6c 69  g as a shared li
1400: 62 72 61 72 79 20 69 6e 73 74 65 61 64 20 6f 66  brary instead of
1410: 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61 72   a static librar
1420: 79 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  y..#------------
1430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1440: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1450: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1460: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 45 4e  --------..TEA_EN
1470: 41 42 4c 45 5f 53 48 41 52 45 44 0a 0a 23 2d 2d  ABLE_SHARED..#--
1480: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1490: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
14a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
14b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
14c0: 2d 2d 0a 23 20 54 68 69 73 20 6d 61 63 72 6f 20  --.# This macro 
14d0: 66 69 67 75 72 65 73 20 6f 75 74 20 77 68 61 74  figures out what
14e0: 20 66 6c 61 67 73 20 74 6f 20 75 73 65 20 77 69   flags to use wi
14f0: 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2f  th the compiler/
1500: 6c 69 6e 6b 65 72 0a 23 20 77 68 65 6e 20 62 75  linker.# when bu
1510: 69 6c 64 69 6e 67 20 73 68 61 72 65 64 2f 73 74  ilding shared/st
1520: 61 74 69 63 20 64 65 62 75 67 2f 6f 70 74 69 6d  atic debug/optim
1530: 69 7a 65 64 20 6f 62 6a 65 63 74 73 2e 20 20 54  ized objects.  T
1540: 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a  his information.
1550: 23 20 63 61 6e 20 62 65 20 74 61 6b 65 6e 20 66  # can be taken f
1560: 72 6f 6d 20 74 68 65 20 74 63 6c 43 6f 6e 66 69  rom the tclConfi
1570: 67 2e 73 68 20 66 69 6c 65 2c 20 62 75 74 20 74  g.sh file, but t
1580: 68 69 73 20 66 69 67 75 72 65 73 20 69 74 20 61  his figures it a
1590: 6c 6c 20 6f 75 74 2e 0a 23 2d 2d 2d 2d 2d 2d 2d  ll out..#-------
15a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
15b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
15c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
15d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54  -------------..T
15e0: 45 41 5f 43 4f 4e 46 49 47 5f 43 46 4c 41 47 53  EA_CONFIG_CFLAGS
15f0: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
1600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1610: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1620: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1630: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 53 65 74 20 74 68  -------.# Set th
1640: 65 20 64 65 66 61 75 6c 74 20 63 6f 6d 70 69 6c  e default compil
1650: 65 72 20 73 77 69 74 63 68 65 73 20 62 61 73 65  er switches base
1660: 64 20 6f 6e 20 74 68 65 20 2d 2d 65 6e 61 62 6c  d on the --enabl
1670: 65 2d 73 79 6d 62 6f 6c 73 20 6f 70 74 69 6f 6e  e-symbols option
1680: 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
1690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
16a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
16b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
16c0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f 45 4e 41  -------..TEA_ENA
16d0: 42 4c 45 5f 53 59 4d 42 4f 4c 53 0a 0a 23 2d 2d  BLE_SYMBOLS..#--
16e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
16f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1720: 2d 2d 0a 23 20 45 76 65 72 79 6f 6e 65 20 73 68  --.# Everyone sh
1730: 6f 75 6c 64 20 62 65 20 6c 69 6e 6b 69 6e 67 20  ould be linking 
1740: 61 67 61 69 6e 73 74 20 74 68 65 20 54 63 6c 20  against the Tcl 
1750: 73 74 75 62 20 6c 69 62 72 61 72 79 2e 20 20 49  stub library.  I
1760: 66 20 79 6f 75 0a 23 20 63 61 6e 27 74 20 66 6f  f you.# can't fo
1770: 72 20 73 6f 6d 65 20 72 65 61 73 6f 6e 2c 20 72  r some reason, r
1780: 65 6d 6f 76 65 20 74 68 69 73 20 64 65 66 69 6e  emove this defin
1790: 69 74 69 6f 6e 2e 20 20 49 66 20 79 6f 75 20 61  ition.  If you a
17a0: 72 65 6e 27 74 20 75 73 69 6e 67 0a 23 20 73 74  ren't using.# st
17b0: 75 62 73 2c 20 79 6f 75 20 61 6c 73 6f 20 6e 65  ubs, you also ne
17c0: 65 64 20 74 6f 20 6d 6f 64 69 66 79 20 74 68 65  ed to modify the
17d0: 20 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 20 73   SHLIB_LD_LIBS s
17e0: 65 74 74 69 6e 67 20 62 65 6c 6f 77 20 74 6f 0a  etting below to.
17f0: 23 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 74  # link against t
1800: 68 65 20 6e 6f 6e 2d 73 74 75 62 62 65 64 20 54  he non-stubbed T
1810: 63 6c 20 6c 69 62 72 61 72 79 2e 20 20 41 64 64  cl library.  Add
1820: 20 54 6b 20 74 6f 6f 20 69 66 20 6e 65 63 65 73   Tk too if neces
1830: 73 61 72 79 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  sary..#---------
1840: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1860: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f  -----------..AC_
1880: 44 45 46 49 4e 45 28 55 53 45 5f 54 43 4c 5f 53  DEFINE(USE_TCL_S
1890: 54 55 42 53 29 0a 23 41 43 5f 44 45 46 49 4e 45  TUBS).#AC_DEFINE
18a0: 28 55 53 45 5f 54 4b 5f 53 54 55 42 53 29 0a 0a  (USE_TK_STUBS)..
18b0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
18c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18f0: 2d 2d 2d 2d 2d 0a 23 20 54 68 69 73 20 6d 61 63  -----.# This mac
1900: 72 6f 20 67 65 6e 65 72 61 74 65 73 20 61 20 6c  ro generates a l
1910: 69 6e 65 20 74 6f 20 75 73 65 20 77 68 65 6e 20  ine to use when 
1920: 62 75 69 6c 64 69 6e 67 20 61 20 6c 69 62 72 61  building a libra
1930: 72 79 2e 20 20 49 74 0a 23 20 64 65 70 65 6e 64  ry.  It.# depend
1940: 73 20 6f 6e 20 76 61 6c 75 65 73 20 73 65 74 20  s on values set 
1950: 62 79 20 74 68 65 20 54 45 41 5f 45 4e 41 42 4c  by the TEA_ENABL
1960: 45 5f 53 48 41 52 45 44 2c 20 54 45 41 5f 45 4e  E_SHARED, TEA_EN
1970: 41 42 4c 45 5f 53 59 4d 42 4f 4c 53 2c 0a 23 20  ABLE_SYMBOLS,.# 
1980: 61 6e 64 20 54 45 41 5f 4c 4f 41 44 5f 54 43 4c  and TEA_LOAD_TCL
1990: 43 4f 4e 46 49 47 20 6d 61 63 72 6f 73 20 61 62  CONFIG macros ab
19a0: 6f 76 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ove..#----------
19b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
19c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
19d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
19e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 45 41 5f  ----------..TEA_
19f0: 4d 41 4b 45 5f 4c 49 42 0a 0a 23 2d 2d 2d 2d 2d  MAKE_LIB..#-----
1a00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
1a40: 23 20 49 66 20 74 68 65 20 76 61 72 69 61 62 6c  # If the variabl
1a50: 65 20 4f 50 45 4e 53 53 4c 20 69 73 20 73 65 74  e OPENSSL is set
1a60: 2c 20 77 65 20 77 69 6c 6c 20 62 75 69 6c 64 20  , we will build 
1a70: 77 69 74 68 20 74 68 65 20 4f 70 65 6e 53 53 4c  with the OpenSSL
1a80: 0a 23 20 6c 69 62 72 61 72 69 65 73 2e 20 20 49  .# libraries.  I
1a90: 66 20 69 74 20 69 73 20 6e 6f 74 20 73 65 74 2c  f it is not set,
1aa0: 20 74 68 65 6e 20 77 65 20 77 69 6c 6c 20 75 73   then we will us
1ab0: 65 20 52 53 41 20 42 53 41 46 45 20 53 53 4c 2d  e RSA BSAFE SSL-
1ac0: 43 0a 23 20 6c 69 62 72 61 72 69 65 73 20 69 6e  C.# libraries in
1ad0: 73 74 65 61 64 20 6f 66 20 74 68 65 20 64 65 66  stead of the def
1ae0: 61 75 6c 74 20 4f 70 65 6e 53 53 4c 20 6c 69 62  ault OpenSSL lib
1af0: 61 72 69 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  aries..#--------
1b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4f 50  ------------..OP
1b40: 45 4e 53 53 4c 3d 22 31 22 0a 41 43 5f 53 55 42  ENSSL="1".AC_SUB
1b50: 53 54 28 4f 50 45 4e 53 53 4c 2c 22 31 22 29 0a  ST(OPENSSL,"1").
1b60: 0a 54 43 4c 54 4c 53 5f 53 53 4c 5f 4f 50 45 4e  .TCLTLS_SSL_OPEN
1b70: 53 53 4c 0a 0a 23 20 54 65 6d 70 20 77 6f 72 6b  SSL..# Temp work
1b80: 2d 61 72 6f 75 6e 64 0a 53 53 4c 5f 44 49 52 3d  -around.SSL_DIR=
1b90: 22 2f 75 73 72 22 0a 53 53 4c 5f 4c 49 42 5f 44  "/usr".SSL_LIB_D
1ba0: 49 52 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 6c 69  IR=${SSL_DIR}/li
1bb0: 62 36 34 0a 53 53 4c 5f 49 4e 43 4c 55 44 45 5f  b64.SSL_INCLUDE_
1bc0: 44 49 52 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 69  DIR=${SSL_DIR}/i
1bd0: 6e 63 6c 75 64 65 2f 6f 70 65 6e 73 73 6c 0a 0a  nclude/openssl..
1be0: 41 43 5f 53 55 42 53 54 28 53 53 4c 5f 44 49 52  AC_SUBST(SSL_DIR
1bf0: 29 0a 41 43 5f 53 55 42 53 54 28 53 53 4c 5f 4c  ).AC_SUBST(SSL_L
1c00: 49 42 5f 44 49 52 29 0a 41 43 5f 53 55 42 53 54  IB_DIR).AC_SUBST
1c10: 28 53 53 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52  (SSL_INCLUDE_DIR
1c20: 29 0a 0a 53 53 4c 5f 49 4e 43 4c 55 44 45 5f 44  )..SSL_INCLUDE_D
1c30: 49 52 5f 4e 41 54 49 56 45 3d 5c 22 60 24 7b 43  IR_NATIVE=\"`${C
1c40: 59 47 50 41 54 48 7d 20 24 7b 53 53 4c 5f 49 4e  YGPATH} ${SSL_IN
1c50: 43 4c 55 44 45 5f 44 49 52 7d 60 5c 22 0a 53 53  CLUDE_DIR}`\".SS
1c60: 4c 5f 4c 49 42 5f 44 49 52 5f 4e 41 54 49 56 45  L_LIB_DIR_NATIVE
1c70: 3d 5c 22 60 24 7b 43 59 47 50 41 54 48 7d 20 24  =\"`${CYGPATH} $
1c80: 7b 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 60 5c 22  {SSL_LIB_DIR}`\"
1c90: 0a 41 43 5f 53 55 42 53 54 28 53 53 4c 5f 49 4e  .AC_SUBST(SSL_IN
1ca0: 43 4c 55 44 45 5f 44 49 52 5f 4e 41 54 49 56 45  CLUDE_DIR_NATIVE
1cb0: 29 0a 41 43 5f 53 55 42 53 54 28 53 53 4c 5f 4c  ).AC_SUBST(SSL_L
1cc0: 49 42 5f 44 49 52 5f 4e 41 54 49 56 45 29 0a 0a  IB_DIR_NATIVE)..
1cd0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
1ce0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1d00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1d10: 2d 2d 2d 2d 2d 0a 23 20 53 68 61 72 65 64 20 6c  -----.# Shared l
1d20: 69 62 72 61 72 69 65 73 20 61 6e 64 20 73 74 61  ibraries and sta
1d30: 74 69 63 20 6c 69 62 72 61 72 69 65 73 20 68 61  tic libraries ha
1d40: 76 65 20 64 69 66 66 65 72 65 6e 74 20 6e 61 6d  ve different nam
1d50: 65 73 2e 0a 23 20 41 6c 73 6f 2c 20 77 69 6e 64  es..# Also, wind
1d60: 6f 77 73 20 6c 69 62 72 61 72 69 65 73 20 61 6e  ows libraries an
1d70: 64 20 75 6e 69 78 20 6c 69 62 72 61 72 69 65 73  d unix libraries
1d80: 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 20   have different 
1d90: 6e 61 6d 65 73 2e 0a 23 20 46 6f 72 20 74 68 65  names..# For the
1da0: 20 4f 70 65 6e 53 53 4c 20 76 65 72 73 69 6f 6e   OpenSSL version
1db0: 2c 20 49 20 63 68 6f 73 65 20 74 6f 20 75 73 65  , I chose to use
1dc0: 20 74 68 65 20 73 61 6d 65 20 6c 69 62 72 61 72   the same librar
1dd0: 79 20 6e 61 6d 65 73 20 74 68 61 74 0a 23 20 4f  y names that.# O
1de0: 70 65 6e 53 53 4c 20 75 73 65 73 20 61 73 20 69  penSSL uses as i
1df0: 74 73 20 64 65 66 61 75 6c 74 20 6e 61 6d 65 73  ts default names
1e00: 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
1e10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1e20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1e30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1e40: 2d 2d 2d 2d 2d 2d 2d 0a 0a 69 66 20 74 65 73 74  -------..if test
1e50: 20 22 24 7b 54 45 41 5f 50 4c 41 54 46 4f 52 4d   "${TEA_PLATFORM
1e60: 7d 22 20 3d 20 22 77 69 6e 64 6f 77 73 22 20 3b  }" = "windows" ;
1e70: 20 74 68 65 6e 0a 20 20 20 20 69 66 20 74 65 73   then.    if tes
1e80: 74 20 22 24 47 43 43 22 20 3d 20 22 79 65 73 22  t "$GCC" = "yes"
1e90: 3b 20 74 68 65 6e 0a 09 54 45 41 5f 41 44 44 5f  ; then..TEA_ADD_
1ea0: 49 4e 43 4c 55 44 45 53 28 5b 2d 49 24 7b 53 53  INCLUDES([-I${SS
1eb0: 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52 5f 4e 41  L_INCLUDE_DIR_NA
1ec0: 54 49 56 45 7d 5d 29 0a 09 54 45 41 5f 41 44 44  TIVE}])..TEA_ADD
1ed0: 5f 4c 49 42 53 28 5b 2d 4c 24 7b 53 53 4c 5f 4c  _LIBS([-L${SSL_L
1ee0: 49 42 5f 44 49 52 5f 4e 41 54 49 56 45 7d 5d 29  IB_DIR_NATIVE}])
1ef0: 0a 20 20 20 20 65 6c 73 65 0a 09 54 45 41 5f 41  .    else..TEA_A
1f00: 44 44 5f 49 4e 43 4c 55 44 45 53 28 5b 2d 69 6e  DD_INCLUDES([-in
1f10: 63 6c 75 64 65 3a 24 7b 53 53 4c 5f 49 4e 43 4c  clude:${SSL_INCL
1f20: 55 44 45 5f 44 49 52 5f 4e 41 54 49 56 45 7d 5d  UDE_DIR_NATIVE}]
1f30: 29 0a 09 54 45 41 5f 41 44 44 5f 4c 49 42 53 28  )..TEA_ADD_LIBS(
1f40: 5b 2d 6c 69 62 70 61 74 68 3a 24 7b 53 53 4c 5f  [-libpath:${SSL_
1f50: 4c 49 42 5f 44 49 52 5f 4e 41 54 49 56 45 7d 5d  LIB_DIR_NATIVE}]
1f60: 29 0a 20 20 20 20 66 69 0a 20 20 20 20 69 66 20  ).    fi.    if 
1f70: 74 65 73 74 20 2d 6e 20 22 24 7b 4f 50 45 4e 53  test -n "${OPENS
1f80: 53 4c 7d 22 3b 20 74 68 65 6e 0a 20 20 20 20 20  SL}"; then.     
1f90: 20 20 20 54 45 41 5f 41 44 44 5f 4c 49 42 53 28     TEA_ADD_LIBS(
1fa0: 5b 6c 69 62 63 72 79 70 74 6f 2e 6c 69 62 20 6c  [libcrypto.lib l
1fb0: 69 62 73 73 6c 2e 6c 69 62 5d 29 0a 20 20 20 20  ibssl.lib]).    
1fc0: 65 6c 73 65 0a 20 20 20 20 20 20 20 20 54 45 41  else.        TEA
1fd0: 5f 41 44 44 5f 4c 49 42 53 28 5b 73 73 6c 63 33  _ADD_LIBS([sslc3
1fe0: 32 2e 6c 69 62 5d 29 0a 20 20 20 20 66 69 0a 65  2.lib]).    fi.e
1ff0: 6c 73 65 0a 20 20 20 20 23 20 53 75 62 73 74 20  lse.    # Subst 
2000: 72 75 6e 74 69 6d 65 20 64 69 72 20 68 65 72 65  runtime dir here
2010: 2c 20 75 73 65 20 2d 52 20 61 6e 64 20 2d 4c 20  , use -R and -L 
2020: 77 68 65 72 65 20 6e 65 63 65 73 73 61 72 79 2e  where necessary.
2030: 20 5b 42 75 67 20 31 37 34 32 38 35 39 5d 0a 20   [Bug 1742859]. 
2040: 20 20 20 4c 49 42 5f 52 55 4e 54 49 4d 45 5f 44     LIB_RUNTIME_D
2050: 49 52 3d 24 7b 53 53 4c 5f 4c 49 42 5f 44 49 52  IR=${SSL_LIB_DIR
2060: 7d 0a 20 20 20 20 65 76 61 6c 20 22 4c 44 5f 53  }.    eval "LD_S
2070: 45 41 52 43 48 5f 46 4c 41 47 53 3d 5c 22 24 7b  EARCH_FLAGS=\"${
2080: 4c 44 5f 53 45 41 52 43 48 5f 46 4c 41 47 53 7d  LD_SEARCH_FLAGS}
2090: 5c 22 22 0a 20 20 20 20 69 66 20 74 65 73 74 20  \"".    if test 
20a0: 2d 6e 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b  -n "${OPENSSL}";
20b0: 20 74 68 65 6e 0a 09 54 45 41 5f 41 44 44 5f 49   then..TEA_ADD_I
20c0: 4e 43 4c 55 44 45 53 28 5b 2d 49 24 7b 53 53 4c  NCLUDES([-I${SSL
20d0: 5f 49 4e 43 4c 55 44 45 5f 44 49 52 7d 5d 29 0a  _INCLUDE_DIR}]).
20e0: 09 54 45 41 5f 41 44 44 5f 4c 49 42 53 28 5b 24  .TEA_ADD_LIBS([$
20f0: 7b 4c 44 5f 53 45 41 52 43 48 5f 46 4c 41 47 53  {LD_SEARCH_FLAGS
2100: 7d 20 2d 4c 24 7b 53 53 4c 5f 4c 49 42 5f 44 49  } -L${SSL_LIB_DI
2110: 52 7d 20 2d 6c 73 73 6c 20 2d 6c 63 72 79 70 74  R} -lssl -lcrypt
2120: 6f 20 24 7b 47 43 43 50 41 54 48 7d 20 24 7b 47  o ${GCCPATH} ${G
2130: 43 43 4c 49 42 7d 5d 29 0a 20 20 20 20 65 6c 73  CCLIB}]).    els
2140: 65 0a 09 54 45 41 5f 41 44 44 5f 49 4e 43 4c 55  e..TEA_ADD_INCLU
2150: 44 45 53 28 5b 2d 49 24 7b 53 53 4c 5f 49 4e 43  DES([-I${SSL_INC
2160: 4c 55 44 45 5f 44 49 52 7d 5d 29 0a 09 54 45 41  LUDE_DIR}])..TEA
2170: 5f 41 44 44 5f 4c 49 42 53 28 5b 24 7b 4c 44 5f  _ADD_LIBS([${LD_
2180: 53 45 41 52 43 48 5f 46 4c 41 47 53 7d 20 2d 4c  SEARCH_FLAGS} -L
2190: 24 7b 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 20 2d  ${SSL_LIB_DIR} -
21a0: 6c 73 73 6c 63 5d 29 0a 20 20 20 20 66 69 0a 66  lsslc]).    fi.f
21b0: 69 0a 0a 69 66 20 74 65 73 74 20 22 24 7b 53 48  i..if test "${SH
21c0: 41 52 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20 22  ARED_BUILD}" = "
21d0: 31 22 20 3b 20 74 68 65 6e 0a 20 20 20 20 41 43  1" ; then.    AC
21e0: 5f 53 55 42 53 54 28 54 43 4c 45 58 54 5f 42 55  _SUBST(TCLEXT_BU
21f0: 49 4c 44 2c 22 73 68 61 72 65 64 22 29 0a 65 6c  ILD,"shared").el
2200: 73 65 0a 20 20 20 20 41 43 5f 53 55 42 53 54 28  se.    AC_SUBST(
2210: 54 43 4c 45 58 54 5f 42 55 49 4c 44 2c 22 73 74  TCLEXT_BUILD,"st
2220: 61 74 69 63 22 29 0a 66 69 0a 0a 23 2d 2d 2d 2d  atic").fi..#----
2230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2250: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2270: 0a 23 20 44 65 74 65 72 6d 69 6e 65 20 74 68 65  .# Determine the
2280: 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 63 6c   name of the tcl
2290: 73 68 20 61 6e 64 2f 6f 72 20 77 69 73 68 20 65  sh and/or wish e
22a0: 78 65 63 75 74 61 62 6c 65 73 20 69 6e 20 74 68  xecutables in th
22b0: 65 0a 23 20 54 63 6c 20 61 6e 64 20 54 6b 20 62  e.# Tcl and Tk b
22c0: 75 69 6c 64 20 64 69 72 65 63 74 6f 72 69 65 73  uild directories
22d0: 20 6f 72 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e   or the location
22e0: 20 74 68 65 79 20 77 65 72 65 20 69 6e 73 74 61   they were insta
22f0: 6c 6c 65 64 0a 23 20 69 6e 74 6f 2e 20 54 68 65  lled.# into. The
2300: 73 65 20 70 61 74 68 73 20 61 72 65 20 75 73 65  se paths are use
2310: 64 20 74 6f 20 73 75 70 70 6f 72 74 20 72 75 6e  d to support run
2320: 6e 69 6e 67 20 74 65 73 74 20 63 61 73 65 73 20  ning test cases 
2330: 6f 6e 6c 79 2c 0a 23 20 74 68 65 20 4d 61 6b 65  only,.# the Make
2340: 66 69 6c 65 20 73 68 6f 75 6c 64 20 6e 6f 74 20  file should not 
2350: 62 65 20 6d 61 6b 69 6e 67 20 75 73 65 20 6f 66  be making use of
2360: 20 74 68 65 73 65 20 70 61 74 68 73 20 74 6f 20   these paths to 
2370: 67 65 6e 65 72 61 74 65 0a 23 20 61 20 70 6b 67  generate.# a pkg
2380: 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 20 6f  Index.tcl file o
2390: 72 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 20  r anything else 
23a0: 61 74 20 65 78 74 65 6e 73 69 6f 6e 20 62 75 69  at extension bui
23b0: 6c 64 20 74 69 6d 65 2e 0a 23 2d 2d 2d 2d 2d 2d  ld time..#------
23c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
23d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
23e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
23f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
2400: 54 45 41 5f 50 52 4f 47 5f 54 43 4c 53 48 0a 23  TEA_PROG_TCLSH.#
2410: 54 45 41 5f 50 52 4f 47 5f 57 49 53 48 0a 0a 23  TEA_PROG_WISH..#
2420: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2440: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2450: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2460: 2d 2d 2d 2d 0a 23 20 53 65 74 75 70 20 61 20 2a  ----.# Setup a *
2470: 43 6f 6e 66 69 67 2e 73 68 2e 69 6e 20 63 6f 6e  Config.sh.in con
2480: 66 69 67 75 72 61 74 69 6f 6e 20 66 69 6c 65 2e  figuration file.
2490: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
24a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24d0: 2d 2d 2d 2d 2d 2d 0a 0a 23 54 45 41 5f 45 58 50  ------..#TEA_EXP
24e0: 4f 52 54 5f 43 4f 4e 46 49 47 28 5b 74 6c 73 5d  ORT_CONFIG([tls]
24f0: 29 0a 23 41 43 5f 53 55 42 53 54 28 53 41 4d 50  ).#AC_SUBST(SAMP
2500: 4c 45 5f 56 41 52 29 0a 0a 0a 23 2d 2d 2d 2d 2d  LE_VAR)...#-----
2510: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2520: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2530: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2540: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
2550: 23 20 43 75 73 74 6f 6d 0a 23 2d 2d 2d 2d 2d 2d  # Custom.#------
2560: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2570: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2580: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2590: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
25a0: 64 6e 6c 20 44 69 73 61 62 6c 65 20 73 75 70 70  dnl Disable supp
25b0: 6f 72 74 20 66 6f 72 20 54 4c 53 20 31 2e 30 0a  ort for TLS 1.0.
25c0: 41 43 5f 41 52 47 5f 45 4e 41 42 4c 45 28 5b 74  AC_ARG_ENABLE([t
25d0: 6c 73 31 5d 2c 20 41 53 5f 48 45 4c 50 5f 53 54  ls1], AS_HELP_ST
25e0: 52 49 4e 47 28 5b 2d 2d 64 69 73 61 62 6c 65 2d  RING([--disable-
25f0: 74 6c 73 31 5d 2c 20 5b 64 69 73 61 62 6c 65 20  tls1], [disable 
2600: 54 4c 53 31 20 73 75 70 70 6f 72 74 5d 29 2c 20  TLS1 support]), 
2610: 5b 0a 09 69 66 20 74 65 73 74 20 22 24 7b 65 6e  [..if test "${en
2620: 61 62 6c 65 76 61 6c 7d 22 20 3d 20 22 6e 6f 22  ableval}" = "no"
2630: 3b 20 74 68 65 6e 0a 09 09 41 43 5f 44 45 46 49  ; then...AC_DEFI
2640: 4e 45 28 5b 4e 4f 5f 54 4c 53 31 5d 2c 20 5b 31  NE([NO_TLS1], [1
2650: 5d 2c 20 5b 44 69 73 61 62 6c 65 20 54 4c 53 31  ], [Disable TLS1
2660: 20 73 75 70 70 6f 72 74 5d 29 0a 09 66 69 0a 5d   support])..fi.]
2670: 29 0a 0a 64 6e 6c 20 44 69 73 61 62 6c 65 20 73  )..dnl Disable s
2680: 75 70 70 6f 72 74 20 66 6f 72 20 54 4c 53 20 31  upport for TLS 1
2690: 2e 31 0a 41 43 5f 41 52 47 5f 45 4e 41 42 4c 45  .1.AC_ARG_ENABLE
26a0: 28 5b 74 6c 73 31 5f 31 5d 2c 20 41 53 5f 48 45  ([tls1_1], AS_HE
26b0: 4c 50 5f 53 54 52 49 4e 47 28 5b 2d 2d 64 69 73  LP_STRING([--dis
26c0: 61 62 6c 65 2d 74 6c 73 31 5f 31 5d 2c 20 5b 64  able-tls1_1], [d
26d0: 69 73 61 62 6c 65 20 54 4c 53 31 2e 31 20 73 75  isable TLS1.1 su
26e0: 70 70 6f 72 74 5d 29 2c 20 5b 0a 09 69 66 20 74  pport]), [..if t
26f0: 65 73 74 20 22 24 7b 65 6e 61 62 6c 65 76 61 6c  est "${enableval
2700: 7d 22 20 3d 20 22 6e 6f 22 3b 20 74 68 65 6e 0a  }" = "no"; then.
2710: 09 09 41 43 5f 44 45 46 49 4e 45 28 5b 4e 4f 5f  ..AC_DEFINE([NO_
2720: 54 4c 53 31 5f 31 5d 2c 20 5b 31 5d 2c 20 5b 44  TLS1_1], [1], [D
2730: 69 73 61 62 6c 65 20 54 4c 53 31 2e 31 20 73 75  isable TLS1.1 su
2740: 70 70 6f 72 74 5d 29 0a 09 66 69 0a 5d 29 0a 0a  pport])..fi.])..
2750: 64 6e 6c 20 44 69 73 61 62 6c 65 20 73 75 70 70  dnl Disable supp
2760: 6f 72 74 20 66 6f 72 20 54 4c 53 20 31 2e 32 0a  ort for TLS 1.2.
2770: 41 43 5f 41 52 47 5f 45 4e 41 42 4c 45 28 5b 74  AC_ARG_ENABLE([t
2780: 6c 73 31 5f 32 5d 2c 20 41 53 5f 48 45 4c 50 5f  ls1_2], AS_HELP_
2790: 53 54 52 49 4e 47 28 5b 2d 2d 64 69 73 61 62 6c  STRING([--disabl
27a0: 65 2d 74 6c 73 31 5f 32 5d 2c 20 5b 64 69 73 61  e-tls1_2], [disa
27b0: 62 6c 65 20 54 4c 53 31 2e 32 20 73 75 70 70 6f  ble TLS1.2 suppo
27c0: 72 74 5d 29 2c 20 5b 0a 09 69 66 20 74 65 73 74  rt]), [..if test
27d0: 20 22 24 7b 65 6e 61 62 6c 65 76 61 6c 7d 22 20   "${enableval}" 
27e0: 3d 20 22 6e 6f 22 3b 20 74 68 65 6e 0a 09 09 41  = "no"; then...A
27f0: 43 5f 44 45 46 49 4e 45 28 5b 4e 4f 5f 54 4c 53  C_DEFINE([NO_TLS
2800: 31 5f 32 5d 2c 20 5b 31 5d 2c 20 5b 44 69 73 61  1_2], [1], [Disa
2810: 62 6c 65 20 54 4c 53 31 2e 32 20 73 75 70 70 6f  ble TLS1.2 suppo
2820: 72 74 5d 29 0a 09 66 69 0a 5d 29 0a 0a 64 6e 6c  rt])..fi.])..dnl
2830: 20 44 69 73 61 62 6c 65 20 73 75 70 70 6f 72 74   Disable support
2840: 20 66 6f 72 20 54 4c 53 20 31 2e 33 0a 41 43 5f   for TLS 1.3.AC_
2850: 41 52 47 5f 45 4e 41 42 4c 45 28 5b 74 6c 73 31  ARG_ENABLE([tls1
2860: 5f 33 5d 2c 20 41 53 5f 48 45 4c 50 5f 53 54 52  _3], AS_HELP_STR
2870: 49 4e 47 28 5b 2d 2d 64 69 73 61 62 6c 65 2d 74  ING([--disable-t
2880: 6c 73 31 5f 33 5d 2c 20 5b 64 69 73 61 62 6c 65  ls1_3], [disable
2890: 20 54 4c 53 31 2e 33 20 73 75 70 70 6f 72 74 5d   TLS1.3 support]
28a0: 29 2c 20 5b 0a 09 69 66 20 74 65 73 74 20 22 24  ), [..if test "$
28b0: 7b 65 6e 61 62 6c 65 76 61 6c 7d 22 20 3d 20 22  {enableval}" = "
28c0: 6e 6f 22 3b 20 74 68 65 6e 0a 09 09 41 43 5f 44  no"; then...AC_D
28d0: 45 46 49 4e 45 28 5b 4e 4f 5f 54 4c 53 31 5f 33  EFINE([NO_TLS1_3
28e0: 5d 2c 20 5b 31 5d 2c 20 5b 44 69 73 61 62 6c 65  ], [1], [Disable
28f0: 20 54 4c 53 31 2e 33 20 73 75 70 70 6f 72 74 5d   TLS1.3 support]
2900: 29 0a 09 66 69 0a 5d 29 0a 0a 64 6e 6c 20 45 6e  )..fi.])..dnl En
2910: 61 62 6c 65 20 73 75 70 70 6f 72 74 20 66 6f 72  able support for
2920: 20 62 75 69 6c 64 69 6e 67 20 74 68 65 20 73 61   building the sa
2930: 6d 65 20 6c 69 62 72 61 72 79 20 65 76 65 72 79  me library every
2940: 20 74 69 6d 65 0a 74 63 6c 74 6c 73 5f 64 65 74   time.tcltls_det
2950: 65 72 6d 69 6e 69 73 74 69 63 3d 27 66 61 6c 73  erministic='fals
2960: 65 27 0a 41 43 5f 41 52 47 5f 45 4e 41 42 4c 45  e'.AC_ARG_ENABLE
2970: 28 5b 64 65 74 65 72 6d 69 6e 69 73 74 69 63 5d  ([deterministic]
2980: 2c 20 41 53 5f 48 45 4c 50 5f 53 54 52 49 4e 47  , AS_HELP_STRING
2990: 28 5b 2d 2d 65 6e 61 62 6c 65 2d 64 65 74 65 72  ([--enable-deter
29a0: 6d 69 6e 69 73 74 69 63 5d 2c 20 5b 65 6e 61 62  ministic], [enab
29b0: 6c 65 20 64 65 74 65 72 6d 69 6e 69 73 74 69 63  le deterministic
29c0: 20 70 61 72 61 6d 65 74 65 72 73 5d 29 2c 20 5b   parameters]), [
29d0: 0a 09 69 66 20 74 65 73 74 20 22 24 65 6e 61 62  ..if test "$enab
29e0: 6c 65 76 61 6c 22 20 3d 20 22 79 65 73 22 3b 20  leval" = "yes"; 
29f0: 74 68 65 6e 0a 09 09 74 63 6c 74 6c 73 5f 64 65  then...tcltls_de
2a00: 74 65 72 6d 69 6e 69 73 74 69 63 3d 27 74 72 75  terministic='tru
2a10: 65 27 0a 09 66 69 0a 5d 29 0a 69 66 20 74 65 73  e'..fi.]).if tes
2a20: 74 20 22 24 74 63 6c 74 6c 73 5f 64 65 74 65 72  t "$tcltls_deter
2a30: 6d 69 6e 69 73 74 69 63 22 20 3d 20 27 74 72 75  ministic" = 'tru
2a40: 65 27 3b 20 74 68 65 6e 0a 09 47 45 4e 5f 44 48  e'; then..GEN_DH
2a50: 5f 50 41 52 41 4d 53 5f 41 52 47 53 3d 27 66 61  _PARAMS_ARGS='fa
2a60: 6c 6c 62 61 63 6b 27 0a 65 6c 73 65 0a 09 47 45  llback'.else..GE
2a70: 4e 5f 44 48 5f 50 41 52 41 4d 53 5f 41 52 47 53  N_DH_PARAMS_ARGS
2a80: 3d 27 27 0a 66 69 0a 0a 0a 64 6e 6c 20 45 6e 61  =''.fi...dnl Ena
2a90: 62 6c 65 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ble support for 
2aa0: 73 70 65 63 69 66 79 69 6e 67 20 70 72 65 2d 63  specifying pre-c
2ab0: 6f 6d 70 75 74 65 64 20 44 48 20 70 61 72 61 6d  omputed DH param
2ac0: 73 20 73 69 7a 65 0a 41 43 5f 41 52 47 5f 57 49  s size.AC_ARG_WI
2ad0: 54 48 28 5b 62 75 69 6c 74 69 6e 2d 64 68 2d 70  TH([builtin-dh-p
2ae0: 61 72 61 6d 73 2d 73 69 7a 65 5d 2c 20 41 53 5f  arams-size], AS_
2af0: 48 45 4c 50 5f 53 54 52 49 4e 47 28 5b 2d 2d 77  HELP_STRING([--w
2b00: 69 74 68 2d 62 75 69 6c 74 69 6e 2d 64 68 2d 70  ith-builtin-dh-p
2b10: 61 72 61 6d 73 2d 73 69 7a 65 3d 3c 62 69 74 73  arams-size=<bits
2b20: 3e 5d 2c 20 5b 73 70 65 63 69 66 79 20 74 68 65  >], [specify the
2b30: 20 73 69 7a 65 20 6f 66 20 74 68 65 20 62 75 69   size of the bui
2b40: 6c 74 2d 69 6e 2c 20 70 72 65 63 6f 6d 70 75 74  lt-in, precomput
2b50: 65 64 2c 20 44 48 20 70 61 72 61 6d 73 5d 29 2c  ed, DH params]),
2b60: 20 5b 0a 09 41 53 5f 43 41 53 45 28 5b 24 77 69   [..AS_CASE([$wi
2b70: 74 68 76 61 6c 5d 2c 5b 32 30 34 38 7c 34 30 39  thval],[2048|409
2b80: 36 7c 38 31 39 32 5d 2c 2c 5b 41 43 5f 4d 53 47  6|8192],,[AC_MSG
2b90: 5f 45 52 52 4f 52 28 5b 55 6e 73 75 70 70 6f 72  _ERROR([Unsuppor
2ba0: 74 65 64 20 44 48 20 70 61 72 61 6d 73 20 73 69  ted DH params si
2bb0: 7a 65 3a 20 24 77 69 74 68 76 61 6c 5d 29 5d 29  ze: $withval])])
2bc0: 0a 09 47 45 4e 5f 44 48 5f 50 41 52 41 4d 53 5f  ..GEN_DH_PARAMS_
2bd0: 41 52 47 53 3d 22 24 7b 47 45 4e 5f 44 48 5f 50  ARGS="${GEN_DH_P
2be0: 41 52 41 4d 53 5f 41 52 47 53 7d 20 62 69 74 73  ARAMS_ARGS} bits
2bf0: 3d 24 77 69 74 68 76 61 6c 22 0a 5d 29 0a 41 43  =$withval".]).AC
2c00: 5f 53 55 42 53 54 28 47 45 4e 5f 44 48 5f 50 41  _SUBST(GEN_DH_PA
2c10: 52 41 4d 53 5f 41 52 47 53 29 0a 0a 0a 64 6e 6c  RAMS_ARGS)...dnl
2c20: 20 44 65 74 65 72 6d 69 6e 65 20 69 66 20 77 65   Determine if we
2c30: 20 68 61 76 65 20 62 65 65 6e 20 61 73 6b 65 64   have been asked
2c40: 20 74 6f 20 75 73 65 20 61 20 66 61 73 74 20 70   to use a fast p
2c50: 61 74 68 20 69 66 20 70 6f 73 73 69 62 6c 65 0a  ath if possible.
2c60: 74 63 6c 74 6c 73 5f 73 73 6c 5f 66 61 73 74 70  tcltls_ssl_fastp
2c70: 61 74 68 3d 27 6e 6f 27 0a 41 43 5f 41 52 47 5f  ath='no'.AC_ARG_
2c80: 45 4e 41 42 4c 45 28 5b 73 73 6c 2d 66 61 73 74  ENABLE([ssl-fast
2c90: 70 61 74 68 5d 2c 20 41 53 5f 48 45 4c 50 5f 53  path], AS_HELP_S
2ca0: 54 52 49 4e 47 28 5b 2d 2d 65 6e 61 62 6c 65 2d  TRING([--enable-
2cb0: 73 73 6c 2d 66 61 73 74 70 61 74 68 5d 2c 20 5b  ssl-fastpath], [
2cc0: 65 6e 61 62 6c 65 20 75 73 69 6e 67 20 74 68 65  enable using the
2cd0: 20 75 6e 64 65 72 6c 79 69 6e 67 20 66 69 6c 65   underlying file
2ce0: 20 64 65 73 63 72 69 70 74 6f 72 20 66 6f 72 20   descriptor for 
2cf0: 74 61 6c 6b 69 6e 67 20 64 69 72 65 63 74 6c 79  talking directly
2d00: 20 74 6f 20 74 68 65 20 53 53 4c 20 6c 69 62 72   to the SSL libr
2d10: 61 72 79 5d 29 2c 20 5b 0a 09 69 66 20 74 65 73  ary]), [..if tes
2d20: 74 20 22 24 65 6e 61 62 6c 65 76 61 6c 22 20 3d  t "$enableval" =
2d30: 20 27 79 65 73 27 3b 20 74 68 65 6e 0a 09 09 74   'yes'; then...t
2d40: 63 6c 74 6c 73 5f 73 73 6c 5f 66 61 73 74 70 61  cltls_ssl_fastpa
2d50: 74 68 3d 27 79 65 73 27 0a 09 65 6c 73 65 0a 09  th='yes'..else..
2d60: 09 74 63 6c 74 6c 73 5f 73 73 6c 5f 66 61 73 74  .tcltls_ssl_fast
2d70: 70 61 74 68 3d 27 6e 6f 27 0a 09 66 69 0a 5d 29  path='no'..fi.])
2d80: 0a 0a 69 66 20 74 65 73 74 20 22 24 74 63 6c 74  ..if test "$tclt
2d90: 6c 73 5f 73 73 6c 5f 66 61 73 74 70 61 74 68 22  ls_ssl_fastpath"
2da0: 20 3d 20 27 79 65 73 27 3b 20 74 68 65 6e 0a 09   = 'yes'; then..
2db0: 41 43 5f 44 45 46 49 4e 45 28 54 43 4c 54 4c 53  AC_DEFINE(TCLTLS
2dc0: 5f 53 53 4c 5f 55 53 45 5f 46 41 53 54 50 41 54  _SSL_USE_FASTPAT
2dd0: 48 2c 20 5b 31 5d 2c 20 5b 44 65 66 69 6e 65 20  H, [1], [Define 
2de0: 74 68 69 73 20 74 6f 20 65 6e 61 62 6c 65 20 75  this to enable u
2df0: 73 69 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 79  sing the underly
2e00: 69 6e 67 20 66 69 6c 65 20 64 65 73 63 72 69 70  ing file descrip
2e10: 74 6f 72 20 66 6f 72 20 74 61 6c 6b 69 6e 67 20  tor for talking 
2e20: 64 69 72 65 63 74 6c 79 20 74 6f 20 74 68 65 20  directly to the 
2e30: 53 53 4c 20 6c 69 62 72 61 72 79 5d 29 0a 66 69  SSL library]).fi
2e40: 0a 0a 0a 64 6e 6c 20 44 65 74 65 72 6d 69 6e 65  ...dnl Determine
2e50: 20 69 66 20 77 65 20 68 61 76 65 20 62 65 65 6e   if we have been
2e60: 20 61 73 6b 65 64 20 74 6f 20 73 74 61 74 69 63   asked to static
2e70: 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65  ally link to the
2e80: 20 53 53 4c 20 6c 69 62 72 61 72 79 0a 54 43 4c   SSL library.TCL
2e90: 45 58 54 5f 54 4c 53 5f 53 54 41 54 49 43 5f 53  EXT_TLS_STATIC_S
2ea0: 53 4c 3d 27 6e 6f 27 0a 41 43 5f 41 52 47 5f 45  SL='no'.AC_ARG_E
2eb0: 4e 41 42 4c 45 28 5b 73 74 61 74 69 63 2d 73 73  NABLE([static-ss
2ec0: 6c 5d 2c 20 41 53 5f 48 45 4c 50 5f 53 54 52 49  l], AS_HELP_STRI
2ed0: 4e 47 28 5b 2d 2d 65 6e 61 62 6c 65 2d 73 74 61  NG([--enable-sta
2ee0: 74 69 63 2d 73 73 6c 5d 2c 20 5b 65 6e 61 62 6c  tic-ssl], [enabl
2ef0: 65 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 69 6e  e statically lin
2f00: 6b 69 6e 67 20 74 6f 20 74 68 65 20 73 70 65 63  king to the spec
2f10: 69 66 69 65 64 20 53 53 4c 20 6c 69 62 72 61 72  ified SSL librar
2f20: 79 5d 29 2c 20 5b 0a 09 69 66 20 74 65 73 74 20  y]), [..if test 
2f30: 22 24 65 6e 61 62 6c 65 76 61 6c 22 20 3d 20 27  "$enableval" = '
2f40: 79 65 73 27 3b 20 74 68 65 6e 0a 09 09 54 43 4c  yes'; then...TCL
2f50: 45 58 54 5f 54 4c 53 5f 53 54 41 54 49 43 5f 53  EXT_TLS_STATIC_S
2f60: 53 4c 3d 27 79 65 73 27 0a 09 66 69 0a 5d 29 0a  SL='yes'..fi.]).
2f70: 0a 0a 64 6e 6c 20 45 6e 61 62 6c 65 20 68 61 72  ..dnl Enable har
2f80: 64 65 6e 69 6e 67 0a 74 63 6c 74 6c 73 5f 65 6e  dening.tcltls_en
2f90: 61 62 6c 65 5f 68 61 72 64 65 6e 69 6e 67 3d 27  able_hardening='
2fa0: 61 75 74 6f 27 0a 41 43 5f 41 52 47 5f 45 4e 41  auto'.AC_ARG_ENA
2fb0: 42 4c 45 28 5b 68 61 72 64 65 6e 69 6e 67 5d 2c  BLE([hardening],
2fc0: 20 41 53 5f 48 45 4c 50 5f 53 54 52 49 4e 47 28   AS_HELP_STRING(
2fd0: 5b 2d 2d 64 69 73 61 62 6c 65 2d 68 61 72 64 65  [--disable-harde
2fe0: 6e 69 6e 67 5d 2c 20 5b 64 69 73 61 62 6c 65 20  ning], [disable 
2ff0: 68 61 72 64 65 6e 69 6e 67 20 61 74 74 65 6d 70  hardening attemp
3000: 74 73 5d 29 2c 20 5b 0a 09 74 63 6c 74 6c 73 5f  ts]), [..tcltls_
3010: 65 6e 61 62 6c 65 5f 68 61 72 64 65 6e 69 6e 67  enable_hardening
3020: 3d 22 24 65 6e 61 62 6c 65 76 61 6c 22 0a 5d 29  ="$enableval".])
3030: 0a 69 66 20 74 65 73 74 20 22 24 74 63 6c 74 6c  .if test "$tcltl
3040: 73 5f 65 6e 61 62 6c 65 5f 68 61 72 64 65 6e 69  s_enable_hardeni
3050: 6e 67 22 20 3d 20 27 61 75 74 6f 27 3b 20 74 68  ng" = 'auto'; th
3060: 65 6e 0a 09 74 63 6c 74 6c 73 5f 65 6e 61 62 6c  en..tcltls_enabl
3070: 65 5f 68 61 72 64 65 6e 69 6e 67 3d 27 74 72 75  e_hardening='tru
3080: 65 27 0a 09 69 66 20 74 65 73 74 20 22 24 54 43  e'..if test "$TC
3090: 4c 45 58 54 5f 42 55 49 4c 44 22 20 3d 20 27 73  LEXT_BUILD" = 's
30a0: 74 61 74 69 63 27 3b 20 74 68 65 6e 0a 09 09 74  tatic'; then...t
30b0: 63 6c 74 6c 73 5f 65 6e 61 62 6c 65 5f 68 61 72  cltls_enable_har
30c0: 64 65 6e 69 6e 67 3d 27 66 61 6c 73 65 27 0a 09  dening='false'..
30d0: 66 69 0a 65 6c 69 66 20 74 65 73 74 20 22 24 74  fi.elif test "$t
30e0: 63 6c 74 6c 73 5f 65 6e 61 62 6c 65 5f 68 61 72  cltls_enable_har
30f0: 64 65 6e 69 6e 67 22 20 3d 20 27 79 65 73 27 3b  dening" = 'yes';
3100: 20 74 68 65 6e 0a 09 74 63 6c 74 6c 73 5f 65 6e   then..tcltls_en
3110: 61 62 6c 65 5f 68 61 72 64 65 6e 69 6e 67 3d 27  able_hardening='
3120: 74 72 75 65 27 0a 65 6c 73 65 0a 09 74 63 6c 74  true'.else..tclt
3130: 6c 73 5f 65 6e 61 62 6c 65 5f 68 61 72 64 65 6e  ls_enable_harden
3140: 69 6e 67 3d 27 66 61 6c 73 65 27 0a 66 69 0a 69  ing='false'.fi.i
3150: 66 20 74 65 73 74 20 22 24 74 63 6c 74 6c 73 5f  f test "$tcltls_
3160: 65 6e 61 62 6c 65 5f 68 61 72 64 65 6e 69 6e 67  enable_hardening
3170: 22 20 3d 20 27 74 72 75 65 27 3b 20 74 68 65 6e  " = 'true'; then
3180: 0a 09 41 58 5f 43 48 45 43 4b 5f 43 4f 4d 50 49  ..AX_CHECK_COMPI
3190: 4c 45 5f 46 4c 41 47 28 5b 2d 66 73 74 61 63 6b  LE_FLAG([-fstack
31a0: 2d 70 72 6f 74 65 63 74 6f 72 2d 61 6c 6c 5d 2c  -protector-all],
31b0: 20 5b 43 46 4c 41 47 53 3d 22 24 43 46 4c 41 47   [CFLAGS="$CFLAG
31c0: 53 20 2d 66 73 74 61 63 6b 2d 70 72 6f 74 65 63  S -fstack-protec
31d0: 74 6f 72 2d 61 6c 6c 22 5d 29 0a 09 41 58 5f 43  tor-all"])..AX_C
31e0: 48 45 43 4b 5f 43 4f 4d 50 49 4c 45 5f 46 4c 41  HECK_COMPILE_FLA
31f0: 47 28 5b 2d 66 6e 6f 2d 73 74 72 69 63 74 2d 6f  G([-fno-strict-o
3200: 76 65 72 66 6c 6f 77 5d 2c 20 5b 43 46 4c 41 47  verflow], [CFLAG
3210: 53 3d 22 24 43 46 4c 41 47 53 20 2d 66 6e 6f 2d  S="$CFLAGS -fno-
3220: 73 74 72 69 63 74 2d 6f 76 65 72 66 6c 6f 77 22  strict-overflow"
3230: 5d 29 0a 09 41 43 5f 44 45 46 49 4e 45 28 5b 5f  ])..AC_DEFINE([_
3240: 46 4f 52 54 49 46 59 5f 53 4f 55 52 43 45 5d 2c  FORTIFY_SOURCE],
3250: 20 5b 32 5d 2c 20 5b 45 6e 61 62 6c 65 20 66 6f   [2], [Enable fo
3260: 72 74 69 66 69 63 61 74 69 6f 6e 5d 29 0a 66 69  rtification]).fi
3270: 0a 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...#------------
3280: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
32a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
32b0: 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 53 70 65 63 69  --------.# Speci
32c0: 66 79 20 66 69 6c 65 73 20 74 6f 20 73 75 62 73  fy files to subs
32d0: 74 69 74 75 74 65 20 41 43 20 76 61 72 69 61 62  titute AC variab
32e0: 6c 65 73 20 69 6e 2e 20 59 6f 75 20 6d 61 79 20  les in. You may 
32f0: 61 6c 74 65 72 6e 61 74 69 76 65 6c 79 0a 23 20  alternatively.# 
3300: 68 61 76 65 20 61 20 73 70 65 63 69 61 6c 20 70  have a special p
3310: 6b 67 49 6e 64 65 78 2e 74 63 6c 2e 69 6e 20 6f  kgIndex.tcl.in o
3320: 72 20 6f 74 68 65 72 20 66 69 6c 65 73 20 77 68  r other files wh
3330: 69 63 68 20 72 65 71 75 69 72 65 0a 23 20 73 75  ich require.# su
3340: 62 73 74 69 74 75 74 69 6e 67 20 74 68 65 20 41  bstituting the A
3350: 43 20 76 61 72 69 61 62 6c 65 73 20 69 6e 2e 20  C variables in. 
3360: 49 6e 63 6c 75 64 65 20 74 68 65 73 65 20 68 65  Include these he
3370: 72 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  re..#-----------
3380: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3390: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
33a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
33b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f 43 4f  ---------..AC_CO
33c0: 4e 46 49 47 5f 46 49 4c 45 53 28 5b 4d 61 6b 65  NFIG_FILES([Make
33d0: 66 69 6c 65 20 70 6b 67 49 6e 64 65 78 2e 74 63  file pkgIndex.tc
33e0: 6c 5d 29 0a 23 41 43 5f 43 4f 4e 46 49 47 5f 46  l]).#AC_CONFIG_F
33f0: 49 4c 45 53 28 5b 74 6c 73 43 6f 6e 66 69 67 2e  ILES([tlsConfig.
3400: 73 68 5d 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  sh])..#---------
3410: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3420: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3440: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 46 69  -----------.# Fi
3450: 6e 61 6c 6c 79 2c 20 73 75 62 73 74 69 74 75 74  nally, substitut
3460: 65 20 61 6c 6c 20 6f 66 20 74 68 65 20 76 61 72  e all of the var
3470: 69 6f 75 73 20 76 61 6c 75 65 73 20 69 6e 74 6f  ious values into
3480: 20 74 68 65 20 66 69 6c 65 73 0a 23 20 73 70 65   the files.# spe
3490: 63 69 66 69 65 64 20 77 69 74 68 20 41 43 5f 43  cified with AC_C
34a0: 4f 4e 46 49 47 5f 46 49 4c 45 53 2e 0a 23 2d 2d  ONFIG_FILES..#--
34b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34f0: 2d 2d 0a 0a 41 43 5f 4f 55 54 50 55 54 0a        --..AC_OUTPUT.