Hex Artifact Content

Artifact b7f03645a18384938ae708b5be9a7dd9a608ae89:


0000: 0a 64 6e 6c 20 22 63 6f 6e 66 69 67 75 72 65 2e  .dnl "configure.
0010: 69 6e 22 20 66 6f 72 20 74 68 65 20 22 74 6c 73  in" for the "tls
0020: 22 20 54 63 6c 20 65 78 74 65 6e 73 69 6f 6e 2e  " Tcl extension.
0030: 0a 64 6e 6c 20 0a 64 6e 6c 20 54 68 69 73 20 66  .dnl .dnl This f
0040: 69 6c 65 20 69 73 20 61 6e 20 69 6e 70 75 74 20  ile is an input 
0050: 66 69 6c 65 20 75 73 65 64 20 62 79 20 74 68 65  file used by the
0060: 20 47 4e 55 20 22 61 75 74 6f 63 6f 6e 66 22 20   GNU "autoconf" 
0070: 70 72 6f 67 72 61 6d 20 74 6f 0a 64 6e 6c 20 67  program to.dnl g
0080: 65 6e 65 72 61 74 65 20 74 68 65 20 66 69 6c 65  enerate the file
0090: 20 22 63 6f 6e 66 69 67 75 72 65 22 2c 20 77 68   "configure", wh
00a0: 69 63 68 20 69 73 20 72 75 6e 20 64 75 72 69 6e  ich is run durin
00b0: 67 20 54 63 6c 0a 64 6e 6c 20 69 6e 73 74 61 6c  g Tcl.dnl instal
00c0: 6c 61 74 69 6f 6e 20 74 6f 20 63 6f 6e 66 69 67  lation to config
00d0: 75 72 65 20 74 68 65 20 73 79 73 74 65 6d 20 66  ure the system f
00e0: 6f 72 20 74 68 65 20 6c 6f 63 61 6c 20 65 6e 76  or the local env
00f0: 69 72 6f 6e 6d 65 6e 74 2e 0a 64 6e 6c 20 0a 64  ironment..dnl .d
0100: 6e 6c 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e  nl This file con
0110: 74 61 69 6e 73 20 63 6f 64 65 20 74 6f 20 67 65  tains code to ge
0120: 6e 65 72 61 74 65 20 22 74 6c 73 22 20 75 73 69  nerate "tls" usi
0130: 6e 67 20 65 69 74 68 65 72 20 74 68 65 0a 64 6e  ng either the.dn
0140: 6c 20 4f 70 65 6e 53 53 4c 20 6c 69 62 72 61 72  l OpenSSL librar
0150: 69 65 73 20 6f 72 20 6c 69 62 72 61 72 69 65 73  ies or libraries
0160: 20 66 72 6f 6d 20 74 68 65 20 63 6f 6d 6d 65 72   from the commer
0170: 63 69 61 6c 20 42 53 41 46 45 20 53 53 4c 2d 43  cial BSAFE SSL-C
0180: 0a 64 6e 6c 20 70 72 6f 64 75 63 74 20 66 72 6f  .dnl product fro
0190: 6d 20 52 53 41 20 53 65 63 75 72 69 74 79 2e 20  m RSA Security. 
01a0: 20 49 6e 20 74 68 65 20 55 6e 69 74 65 64 20 53   In the United S
01b0: 74 61 74 65 73 2c 20 69 74 20 69 73 20 6e 65 63  tates, it is nec
01c0: 65 73 73 61 72 79 0a 64 6e 6c 20 74 6f 20 75 73  essary.dnl to us
01d0: 65 20 74 68 65 20 52 53 41 20 42 53 41 46 45 20  e the RSA BSAFE 
01e0: 6c 69 62 72 61 72 69 65 73 20 66 6f 72 20 61 6e  libraries for an
01f0: 79 20 70 72 6f 64 75 63 74 20 64 65 76 65 6c 6f  y product develo
0200: 70 65 64 20 66 6f 72 0a 64 6e 6c 20 63 6f 6d 6d  ped for.dnl comm
0210: 65 72 63 69 61 6c 20 75 73 65 2e 20 4c 69 63 65  ercial use. Lice
0220: 6e 73 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f  nsing informatio
0230: 6e 20 66 6f 72 20 42 53 41 46 45 20 53 53 4c 2d  n for BSAFE SSL-
0240: 43 20 6d 61 79 20 62 65 0a 64 6e 6c 20 6f 62 74  C may be.dnl obt
0250: 61 69 6e 65 64 20 66 72 6f 6d 20 52 53 41 20 44  ained from RSA D
0260: 61 74 61 20 53 63 75 72 69 74 79 20 49 6e 63 2e  ata Scurity Inc.
0270: 2c 20 53 61 6e 20 4d 61 74 65 6f 2c 20 43 61 6c  , San Mateo, Cal
0280: 69 66 6f 72 6e 69 61 2c 20 55 53 41 2e 0a 64 6e  ifornia, USA..dn
0290: 6c 20 54 68 65 69 72 20 68 6f 6d 65 20 70 61 67  l Their home pag
02a0: 65 20 6f 6e 20 74 68 65 20 77 65 62 20 69 73 20  e on the web is 
02b0: 22 77 77 77 2e 72 73 61 73 65 63 75 72 69 74 79  "www.rsasecurity
02c0: 2e 63 6f 6d 22 2e 20 0a 0a 0a 23 2d 2d 2d 2d 2d  .com". ...#-----
02d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
02e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
02f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0300: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
0310: 23 20 6d 61 63 72 6f 20 75 73 65 64 20 74 6f 20  # macro used to 
0320: 76 65 72 69 66 79 20 74 68 61 74 20 74 68 65 20  verify that the 
0330: 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74  configure script
0340: 20 63 61 6e 20 66 69 6e 64 20 74 68 65 20 73 6f   can find the so
0350: 75 72 63 65 73 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  urces.#---------
0360: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0370: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0380: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0390: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f  -----------..AC_
03a0: 49 4e 49 54 28 74 6c 73 2e 68 29 0a 0a 41 43 5f  INIT(tls.h)..AC_
03b0: 43 4f 4e 46 49 47 5f 41 55 58 5f 44 49 52 28 63  CONFIG_AUX_DIR(c
03c0: 6f 6e 66 69 67 29 0a 43 4f 4e 46 49 47 44 49 52  onfig).CONFIGDIR
03d0: 3d 24 7b 73 72 63 64 69 72 7d 2f 63 6f 6e 66 69  =${srcdir}/confi
03e0: 67 0a 41 43 5f 53 55 42 53 54 28 43 4f 4e 46 49  g.AC_SUBST(CONFI
03f0: 47 44 49 52 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  GDIR)..#--------
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 2d 2d 2d 2d  ----------------
0420: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 53  ------------.# S
0440: 65 74 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20  et package name 
0450: 61 6e 64 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62  and version numb
0460: 65 72 73 20 68 65 72 65 2e 20 20 54 68 65 20 4e  ers here.  The N
0470: 4f 44 4f 54 5f 56 45 52 53 49 4f 4e 20 69 73 0a  ODOT_VERSION is.
0480: 23 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 63  # required for c
0490: 6f 6e 73 74 72 75 63 74 69 6e 67 20 74 68 65 20  onstructing the 
04a0: 6c 69 62 72 61 72 79 20 6e 61 6d 65 20 6f 6e 20  library name on 
04b0: 73 79 73 74 65 6d 73 20 74 68 61 74 20 64 6f 6e  systems that don
04c0: 27 74 0a 23 20 6c 69 6b 65 20 64 6f 74 73 20 69  't.# like dots i
04d0: 6e 20 23 20 6c 69 62 72 61 72 79 20 6e 61 6d 65  n # library name
04e0: 73 20 28 57 69 6e 64 6f 77 73 29 2e 20 20 54 68  s (Windows).  Th
04f0: 65 20 56 45 52 53 49 4f 4e 20 76 61 72 69 61 62  e VERSION variab
0500: 6c 65 20 69 73 0a 23 20 75 73 65 64 20 6f 6e 20  le is.# used on 
0510: 74 68 65 20 6f 74 68 65 72 20 73 79 73 74 65 6d  the other system
0520: 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  s..#------------
0530: 2d 2d 2d 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 0a 0a 50 41 43 4b 41 47  --------..PACKAG
0570: 45 3d 74 6c 73 0a 0a 4d 41 4a 4f 52 5f 56 45 52  E=tls..MAJOR_VER
0580: 53 49 4f 4e 3d 31 0a 4d 49 4e 4f 52 5f 56 45 52  SION=1.MINOR_VER
0590: 53 49 4f 4e 3d 33 0a 50 41 54 43 48 4c 45 56 45  SION=3.PATCHLEVE
05a0: 4c 3d 0a 0a 56 45 52 53 49 4f 4e 3d 24 7b 4d 41  L=..VERSION=${MA
05b0: 4a 4f 52 5f 56 45 52 53 49 4f 4e 7d 2e 24 7b 4d  JOR_VERSION}.${M
05c0: 49 4e 4f 52 5f 56 45 52 53 49 4f 4e 7d 24 7b 50  INOR_VERSION}${P
05d0: 41 54 43 48 4c 45 56 45 4c 7d 0a 4e 4f 44 4f 54  ATCHLEVEL}.NODOT
05e0: 5f 56 45 52 53 49 4f 4e 3d 24 7b 4d 41 4a 4f 52  _VERSION=${MAJOR
05f0: 5f 56 45 52 53 49 4f 4e 7d 24 7b 4d 49 4e 4f 52  _VERSION}${MINOR
0600: 5f 56 45 52 53 49 4f 4e 7d 0a 0a 41 43 5f 53 55  _VERSION}..AC_SU
0610: 42 53 54 28 50 41 43 4b 41 47 45 29 0a 41 43 5f  BST(PACKAGE).AC_
0620: 53 55 42 53 54 28 56 45 52 53 49 4f 4e 29 0a 0a  SUBST(VERSION)..
0630: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
0640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0650: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0670: 2d 2d 2d 2d 2d 2d 0a 23 20 57 65 20 70 75 74 20  ------.# We put 
0680: 74 68 69 73 20 68 65 72 65 20 73 6f 20 74 68 61  this here so tha
0690: 74 20 79 6f 75 20 63 61 6e 20 63 6f 6d 70 69 6c  t you can compil
06a0: 65 20 77 69 74 68 20 2d 44 56 45 52 53 49 4f 4e  e with -DVERSION
06b0: 3d 22 31 2e 32 22 20 74 6f 0a 23 20 65 6e 63 6f  ="1.2" to.# enco
06c0: 64 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 76  de the package v
06d0: 65 72 73 69 6f 6e 20 64 69 72 65 63 74 6c 79 20  ersion directly 
06e0: 69 6e 74 6f 20 74 68 65 20 73 6f 75 72 63 65 20  into the source 
06f0: 66 69 6c 65 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  files..#--------
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 2d 2d 2d 2d 2d 2d 2d 0a 0a 65 76  ------------..ev
0740: 61 6c 20 41 43 5f 44 45 46 49 4e 45 5f 55 4e 51  al AC_DEFINE_UNQ
0750: 55 4f 54 45 44 28 56 45 52 53 49 4f 4e 2c 20 22  UOTED(VERSION, "
0760: 24 7b 56 45 52 53 49 4f 4e 7d 22 29 0a 65 76 61  ${VERSION}").eva
0770: 6c 20 41 43 5f 44 45 46 49 4e 45 5f 55 4e 51 55  l AC_DEFINE_UNQU
0780: 4f 54 45 44 28 50 41 43 4b 41 47 45 2c 20 22 24  OTED(PACKAGE, "$
0790: 7b 50 41 43 4b 41 47 45 7d 22 29 0a 0a 23 2d 2d  {PACKAGE}")..#--
07a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
07b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
07c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
07d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
07e0: 2d 2d 0a 23 20 49 66 20 74 68 65 20 76 61 72 69  --.# If the vari
07f0: 61 62 6c 65 20 4f 50 45 4e 53 53 4c 20 69 73 20  able OPENSSL is 
0800: 73 65 74 2c 20 77 65 20 77 69 6c 6c 20 62 75 69  set, we will bui
0810: 6c 64 20 77 69 74 68 20 74 68 65 20 4f 70 65 6e  ld with the Open
0820: 53 53 4c 0a 23 20 6c 69 62 72 61 72 69 65 73 2e  SSL.# libraries.
0830: 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20 73    If it is not s
0840: 65 74 2c 20 74 68 65 6e 20 77 65 20 77 69 6c 6c  et, then we will
0850: 20 75 73 65 20 52 53 41 20 42 53 41 46 45 20 53   use RSA BSAFE S
0860: 53 4c 2d 43 0a 23 20 6c 69 62 72 61 72 69 65 73  SL-C.# libraries
0870: 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20   instead of the 
0880: 64 65 66 61 75 6c 74 20 4f 70 65 6e 53 53 4c 20  default OpenSSL 
0890: 6c 69 62 61 72 69 65 73 2e 0a 23 2d 2d 2d 2d 2d  libaries..#-----
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 2d  ----------------
08d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
08e0: 0a 4f 50 45 4e 53 53 4c 3d 22 31 22 0a 0a 41 43  .OPENSSL="1"..AC
08f0: 5f 41 52 47 5f 45 4e 41 42 4c 45 28 62 73 61 66  _ARG_ENABLE(bsaf
0900: 65 2c 20 5b 20 20 2d 2d 65 6e 61 62 6c 65 2d 62  e, [  --enable-b
0910: 73 61 66 65 20 20 55 73 65 20 52 53 41 20 42 53  safe  Use RSA BS
0920: 41 46 45 20 53 53 4c 2d 43 20 6c 69 62 72 61 72  AFE SSL-C librar
0930: 69 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20 74  ies instead of t
0940: 68 65 20 64 65 66 61 75 6c 74 20 4f 70 65 6e 53  he default OpenS
0950: 53 4c 20 6c 69 62 72 61 72 69 65 73 2e 5d 2c 20  SL libraries.], 
0960: 4f 50 45 4e 53 53 4c 3d 22 22 2c 20 4f 50 45 4e  OPENSSL="", OPEN
0970: 53 53 4c 3d 22 31 22 29 0a 0a 23 2d 2d 2d 2d 2d  SSL="1")..#-----
0980: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0990: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a  ---------------.
09c0: 23 20 45 73 74 61 62 6c 69 73 68 20 74 68 65 20  # Establish the 
09d0: 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20  location of the 
09e0: 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 20 66  root directory f
09f0: 6f 72 20 4f 70 65 6e 53 53 4c 2e 0a 23 20 49 66  or OpenSSL..# If
0a00: 20 77 65 27 72 65 20 6e 6f 74 20 75 73 69 6e 67   we're not using
0a10: 20 4f 70 65 6e 53 53 4c 2c 20 73 65 74 20 74 68   OpenSSL, set th
0a20: 65 20 72 6f 6f 74 20 66 6f 72 20 42 53 41 46 45  e root for BSAFE
0a30: 20 53 53 4c 2d 43 2e 0a 23 20 49 66 20 77 65 27   SSL-C..# If we'
0a40: 72 65 20 75 73 69 6e 67 20 42 53 41 46 45 2c 20  re using BSAFE, 
0a50: 64 65 66 69 6e 65 20 74 68 65 20 42 53 41 46 45  define the BSAFE
0a60: 20 63 6f 6d 70 69 6c 65 72 20 66 6c 61 67 2e 0a   compiler flag..
0a70: 23 20 54 68 65 20 22 46 4c 41 54 5f 49 4e 43 22  # The "FLAT_INC"
0a80: 20 66 6c 61 67 20 69 73 20 75 73 65 64 20 69 6e   flag is used in
0a90: 20 74 68 65 20 42 53 41 46 45 20 73 73 6c 2e 68   the BSAFE ssl.h
0aa0: 20 68 65 61 64 65 72 20 66 69 6c 65 20 61 6e 64   header file and
0ab0: 0a 23 20 64 6f 65 73 6e 27 74 20 73 65 65 6d 20  .# doesn't seem 
0ac0: 74 6f 20 62 65 20 72 65 66 65 72 65 6e 63 65 64  to be referenced
0ad0: 20 61 6e 79 77 68 65 72 65 20 65 6c 73 65 2e 0a   anywhere else..
0ae0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
0af0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0b20: 2d 2d 2d 2d 2d 0a 0a 69 66 20 74 65 73 74 20 2d  -----..if test -
0b30: 6e 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20  n "${OPENSSL}"; 
0b40: 74 68 65 6e 0a 20 20 20 20 53 53 4c 5f 44 49 52  then.    SSL_DIR
0b50: 3d 27 2f 75 73 72 2f 6c 6f 63 61 6c 2f 6f 70 65  ='/usr/local/ope
0b60: 6e 73 73 6c 27 0a 65 6c 73 65 0a 20 20 20 20 53  nssl'.else.    S
0b70: 53 4c 5f 44 49 52 3d 27 2f 75 73 65 2f 6c 6f 63  SL_DIR='/use/loc
0b80: 61 6c 2f 73 73 6c 63 27 0a 20 20 20 20 41 43 5f  al/sslc'.    AC_
0b90: 44 45 46 49 4e 45 28 42 53 41 46 45 29 0a 20 20  DEFINE(BSAFE).  
0ba0: 20 20 41 43 5f 44 45 46 49 4e 45 28 46 4c 41 54    AC_DEFINE(FLAT
0bb0: 5f 49 4e 43 29 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d  _INC).fi..#-----
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 2d 2d 2d 2d 2d 2d  ----------------
0bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
0c00: 23 20 49 66 20 77 65 27 72 65 20 75 73 69 6e 67  # If we're using
0c10: 20 52 53 41 20 42 53 41 46 45 20 53 53 4c 2d 43   RSA BSAFE SSL-C
0c20: 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 65 73 74  , we need to est
0c30: 61 62 6c 69 73 68 20 77 68 61 74 20 70 6c 61 74  ablish what plat
0c40: 66 6f 72 6d 0a 23 20 77 65 27 72 65 20 72 75 6e  form.# we're run
0c50: 6e 69 6e 67 20 6f 6e 20 62 65 66 6f 72 65 20 77  ning on before w
0c60: 65 20 63 61 6e 20 66 69 67 75 72 65 20 6f 75 74  e can figure out
0c70: 20 73 6f 6d 65 20 70 61 74 68 73 2e 0a 23 20 54   some paths..# T
0c80: 68 69 73 20 73 74 65 70 20 69 73 6e 27 74 20 6e  his step isn't n
0c90: 65 63 65 73 73 61 72 79 20 69 66 20 77 65 27 72  ecessary if we'r
0ca0: 65 20 75 73 69 6e 67 20 4f 70 65 6e 53 53 4c 2e  e using OpenSSL.
0cb0: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
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 0a 0a 0a 69 66 20 74 65 73 74  ------...if test
0d00: 20 2d 7a 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22   -z "${OPENSSL}"
0d10: 3b 20 74 68 65 6e 0a 20 20 20 20 41 43 5f 4d 53  ; then.    AC_MS
0d20: 47 5f 43 48 45 43 4b 49 4e 47 28 68 6f 73 74 20  G_CHECKING(host 
0d30: 74 79 70 65 29 0a 20 20 20 20 63 61 73 65 20 22  type).    case "
0d40: 60 75 6e 61 6d 65 20 2d 73 60 22 20 69 6e 0a 09  `uname -s`" in..
0d50: 2a 77 69 6e 33 32 2a 20 7c 20 2a 57 49 4e 33 32  *win32* | *WIN32
0d60: 2a 20 7c 20 2a 43 59 47 57 49 4e 5f 4e 54 2a 7c  * | *CYGWIN_NT*|
0d70: 2a 43 59 47 57 49 4e 5f 39 38 2a 7c 2a 43 59 47  *CYGWIN_98*|*CYG
0d80: 57 49 4e 5f 39 35 2a 29 0a 09 20 20 20 20 50 4c  WIN_95*)..    PL
0d90: 41 54 46 4f 52 4d 3d 57 49 4e 33 32 0a 09 20 20  ATFORM=WIN32..  
0da0: 20 20 41 43 5f 44 45 46 49 4e 45 28 57 49 4e 44    AC_DEFINE(WIND
0db0: 4f 57 53 29 0a 09 20 20 20 20 3b 3b 0a 09 2a 53  OWS)..    ;;..*S
0dc0: 75 6e 4f 53 2a 29 0a 09 20 20 20 20 50 4c 41 54  unOS*)..    PLAT
0dd0: 46 4f 52 4d 3d 53 4f 4c 41 52 49 53 0a 09 20 20  FORM=SOLARIS..  
0de0: 20 20 3b 3b 0a 09 48 50 2d 55 58 29 0a 09 20 20    ;;..HP-UX)..  
0df0: 20 20 50 4c 41 54 46 4f 52 4d 3d 48 50 55 58 0a    PLATFORM=HPUX.
0e00: 09 20 20 20 20 3b 3b 0a 09 2a 29 0a 09 20 20 20  .    ;;..*)..   
0e10: 20 50 4c 41 54 46 4f 52 4d 3d 4c 49 4e 55 58 0a   PLATFORM=LINUX.
0e20: 09 20 20 20 20 3b 3b 0a 20 20 20 20 65 73 61 63  .    ;;.    esac
0e30: 0a 20 20 20 20 41 43 5f 4d 53 47 5f 52 45 53 55  .    AC_MSG_RESU
0e40: 4c 54 28 24 7b 50 4c 41 54 46 4f 52 4d 7d 29 0a  LT(${PLATFORM}).
0e50: 66 69 0a 0a 41 43 5f 41 52 47 5f 57 49 54 48 28  fi..AC_ARG_WITH(
0e60: 73 73 6c 2d 64 69 72 2c 20 5b 20 20 2d 2d 77 69  ssl-dir, [  --wi
0e70: 74 68 2d 73 73 6c 2d 64 69 72 3d 44 49 52 20 20  th-ssl-dir=DIR  
0e80: 53 53 4c 20 72 6f 6f 74 20 64 69 72 65 63 74 6f  SSL root directo
0e90: 72 79 5d 2c 20 53 53 4c 5f 44 49 52 3d 24 77 69  ry], SSL_DIR=$wi
0ea0: 74 68 76 61 6c 29 0a 0a 69 66 20 74 65 73 74 20  thval)..if test 
0eb0: 21 20 2d 64 20 22 24 7b 53 53 4c 5f 44 49 52 7d  ! -d "${SSL_DIR}
0ec0: 22 3b 20 74 68 65 6e 0a 20 20 20 20 41 43 5f 45  "; then.    AC_E
0ed0: 52 52 4f 52 28 24 7b 53 53 4c 5f 44 49 52 7d 20  RROR(${SSL_DIR} 
0ee0: 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 64  is not a valid d
0ef0: 69 72 65 63 74 6f 72 79 29 0a 66 69 0a 0a 23 2d  irectory).fi..#-
0f00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f40: 2d 2d 2d 0a 23 20 54 68 65 20 4f 70 65 6e 53 53  ---.# The OpenSS
0f50: 4c 20 61 6e 64 20 42 53 41 46 45 20 53 53 4c 2d  L and BSAFE SSL-
0f60: 43 20 64 69 72 65 63 74 6f 72 79 20 73 74 72 75  C directory stru
0f70: 63 74 75 72 65 73 20 64 69 66 66 65 72 2e 0a 23  ctures differ..#
0f80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fc0: 2d 2d 2d 2d 0a 0a 69 66 20 74 65 73 74 20 2d 6e  ----..if test -n
0fd0: 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20 74   "${OPENSSL}"; t
0fe0: 68 65 6e 0a 20 20 20 20 53 53 4c 5f 4c 49 42 5f  hen.    SSL_LIB_
0ff0: 44 49 52 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 6c  DIR=${SSL_DIR}/l
1000: 69 62 0a 20 20 20 20 53 53 4c 5f 49 4e 43 4c 55  ib.    SSL_INCLU
1010: 44 45 5f 44 49 52 3d 24 7b 53 53 4c 5f 44 49 52  DE_DIR=${SSL_DIR
1020: 7d 2f 69 6e 63 6c 75 64 65 0a 20 20 20 20 69 66  }/include.    if
1030: 20 74 65 73 74 20 21 20 2d 66 20 22 24 7b 53 53   test ! -f "${SS
1040: 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52 7d 2f 6f  L_INCLUDE_DIR}/o
1050: 70 65 6e 73 73 6c 2f 6f 70 65 6e 73 73 6c 76 2e  penssl/opensslv.
1060: 68 22 3b 20 74 68 65 6e 0a 20 20 20 20 20 20 20  h"; then.       
1070: 20 41 43 5f 45 52 52 4f 52 28 62 61 64 20 73 73   AC_ERROR(bad ss
1080: 6c 2d 64 69 72 3a 20 63 61 6e 6e 6f 74 20 66 69  l-dir: cannot fi
1090: 6e 64 20 6f 70 65 6e 73 73 6c 2f 6f 70 65 6e 73  nd openssl/opens
10a0: 73 6c 76 2e 68 20 75 6e 64 65 72 20 24 7b 53 53  slv.h under ${SS
10b0: 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52 7d 29 0a  L_INCLUDE_DIR}).
10c0: 20 20 20 20 66 69 0a 65 6c 73 65 0a 20 20 20 20      fi.else.    
10d0: 53 53 4c 5f 4c 49 42 5f 44 49 52 3d 24 7b 53 53  SSL_LIB_DIR=${SS
10e0: 4c 5f 44 49 52 7d 2f 24 7b 50 4c 41 54 46 4f 52  L_DIR}/${PLATFOR
10f0: 4d 7d 2f 6c 69 62 72 61 72 79 2f 6c 69 62 0a 20  M}/library/lib. 
1100: 20 20 20 53 53 4c 5f 49 4e 43 4c 55 44 45 5f 44     SSL_INCLUDE_D
1110: 49 52 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 24 7b  IR=${SSL_DIR}/${
1120: 50 4c 41 54 46 4f 52 4d 7d 2f 6c 69 62 72 61 72  PLATFORM}/librar
1130: 79 2f 69 6e 63 6c 75 64 65 0a 20 20 20 20 69 66  y/include.    if
1140: 20 74 65 73 74 20 21 20 2d 66 20 22 24 7b 53 53   test ! -f "${SS
1150: 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52 7d 2f 63  L_INCLUDE_DIR}/c
1160: 72 79 70 74 6f 2e 68 22 3b 20 74 68 65 6e 0a 20  rypto.h"; then. 
1170: 20 20 20 20 20 20 20 41 43 5f 45 52 52 4f 52 28         AC_ERROR(
1180: 62 61 64 20 73 73 6c 2d 64 69 72 3a 20 63 61 6e  bad ssl-dir: can
1190: 6e 6f 74 20 66 69 6e 64 20 63 72 79 70 74 6f 2e  not find crypto.
11a0: 68 20 75 6e 64 65 72 20 24 7b 53 53 4c 5f 49 4e  h under ${SSL_IN
11b0: 43 4c 55 44 45 5f 44 49 52 7d 29 0a 20 20 20 20  CLUDE_DIR}).    
11c0: 66 69 0a 66 69 0a 0a 41 43 5f 53 55 42 53 54 28  fi.fi..AC_SUBST(
11d0: 53 53 4c 5f 44 49 52 29 0a 41 43 5f 53 55 42 53  SSL_DIR).AC_SUBS
11e0: 54 28 53 53 4c 5f 4c 49 42 5f 44 49 52 29 0a 41  T(SSL_LIB_DIR).A
11f0: 43 5f 53 55 42 53 54 28 53 53 4c 5f 49 4e 43 4c  C_SUBST(SSL_INCL
1200: 55 44 45 5f 44 49 52 29 0a 0a 23 2d 2d 2d 2d 2d  UDE_DIR)..#-----
1210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
1250: 23 20 44 65 74 65 72 6d 69 6e 65 20 69 66 20 77  # Determine if w
1260: 65 20 73 68 6f 75 6c 64 20 75 73 65 20 74 68 65  e should use the
1270: 20 70 61 74 65 6e 74 65 64 20 65 6e 63 72 79 70   patented encryp
1280: 74 69 6f 6e 20 63 6f 64 65 0a 23 2d 2d 2d 2d 2d  tion code.#-----
1290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
12d0: 0a 41 43 5f 41 52 47 5f 45 4e 41 42 4c 45 28 70  .AC_ARG_ENABLE(p
12e0: 61 74 65 6e 74 73 2c 20 5b 20 20 65 6e 61 62 6c  atents, [  enabl
12f0: 65 20 6f 72 20 64 69 73 61 62 6c 65 20 70 61 74  e or disable pat
1300: 65 6e 74 65 64 20 63 6f 64 65 2e 20 20 44 65 66  ented code.  Def
1310: 61 75 6c 74 20 69 73 20 70 61 74 65 6e 74 65 64  ault is patented
1320: 20 63 6f 64 65 20 65 6e 61 62 6c 65 64 2e 5d 2c   code enabled.],
1330: 20 50 41 54 45 4e 54 53 3d 24 7b 65 6e 61 62 6c   PATENTS=${enabl
1340: 65 76 61 6c 7d 2c 20 50 41 54 45 4e 54 53 3d 79  eval}, PATENTS=y
1350: 65 73 29 20 20 0a 0a 69 66 20 74 65 73 74 20 24  es)  ..if test $
1360: 7b 50 41 54 45 4e 54 53 7d 20 3d 20 6e 6f 3b 20  {PATENTS} = no; 
1370: 74 68 65 6e 0a 20 20 20 20 41 43 5f 44 45 46 49  then.    AC_DEFI
1380: 4e 45 28 22 4e 4f 5f 50 41 54 45 4e 54 53 22 29  NE("NO_PATENTS")
1390: 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .fi..#----------
13a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43 68 65  ----------.# Che
13e0: 63 6b 20 77 68 65 74 68 65 72 20 2d 2d 65 6e 61  ck whether --ena
13f0: 62 6c 65 2d 67 63 63 20 6f 72 20 2d 2d 64 69 73  ble-gcc or --dis
1400: 61 62 6c 65 2d 67 63 63 20 77 61 73 20 67 69 76  able-gcc was giv
1410: 65 6e 2e 20 20 44 6f 20 74 68 69 73 20 0a 23 20  en.  Do this .# 
1420: 62 65 66 6f 72 65 20 41 43 5f 43 59 47 57 49 4e  before AC_CYGWIN
1430: 20 69 73 20 63 61 6c 6c 65 64 20 73 6f 20 74 68   is called so th
1440: 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e 20 62  e compiler can b
1450: 65 20 66 75 6c 6c 79 20 74 65 73 74 65 64 20 62  e fully tested b
1460: 79 0a 23 20 62 75 69 6c 74 2d 69 6e 20 61 75 74  y.# built-in aut
1470: 6f 63 6f 6e 66 20 74 6f 6f 6c 73 2e 20 20 54 68  oconf tools.  Th
1480: 69 73 20 6d 61 63 72 6f 20 61 6c 73 6f 20 63 61  is macro also ca
1490: 6c 6c 73 20 41 43 5f 50 52 4f 47 5f 43 43 20 74  lls AC_PROG_CC t
14a0: 6f 20 73 65 74 0a 23 20 74 68 65 20 63 6f 6d 70  o set.# the comp
14b0: 69 6c 65 72 20 69 66 20 2d 2d 65 6e 61 62 6c 65  iler if --enable
14c0: 2d 67 63 63 20 77 61 73 20 6e 6f 74 20 75 73 65  -gcc was not use
14d0: 64 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  d..#------------
14e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
14f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1510: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 53 43 5f 45 4e 41  --------..SC_ENA
1520: 42 4c 45 5f 47 43 43 0a 41 43 5f 50 52 4f 47 5f  BLE_GCC.AC_PROG_
1530: 49 4e 53 54 41 4c 4c 0a 0a 23 2d 2d 2d 2d 2d 2d  INSTALL..#------
1540: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1550: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1560: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1570: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23  --------------.#
1580: 20 49 66 20 4f 70 65 6e 53 53 4c 20 77 61 73 20   If OpenSSL was 
1590: 62 75 69 6c 74 20 77 69 74 68 20 67 63 63 20 74  built with gcc t
15a0: 68 65 6e 20 74 68 65 72 65 20 6d 61 79 20 62 65  hen there may be
15b0: 20 73 6f 6d 65 20 73 79 6d 62 6f 6c 73 20 74 68   some symbols th
15c0: 61 74 20 6e 65 65 64 0a 23 20 72 65 73 6f 6c 76  at need.# resolv
15d0: 69 6e 67 20 62 65 66 6f 72 65 20 77 65 20 63 61  ing before we ca
15e0: 6e 20 6c 6f 61 64 20 69 74 20 69 6e 74 6f 20 74  n load it into t
15f0: 63 6c 73 68 20 28 5f 5f 75 64 69 76 64 33 69 20  clsh (__udivd3i 
1600: 6f 6e 20 73 6f 6c 61 72 69 73 2e 20 20 4c 65 74  on solaris.  Let
1610: 20 74 68 65 0a 23 20 75 73 65 72 20 73 70 65 63   the.# user spec
1620: 69 66 79 20 69 66 20 77 65 20 6e 65 65 64 20 74  ify if we need t
1630: 6f 20 61 64 64 20 6c 69 62 67 63 63 20 74 6f 20  o add libgcc to 
1640: 74 68 65 20 6c 69 6e 6b 20 6c 69 6e 65 20 74 6f  the link line to
1650: 20 72 65 73 6f 6c 76 65 20 74 68 65 73 65 0a 23   resolve these.#
1660: 20 73 79 6d 62 6f 6c 73 2e 0a 23 0a 23 20 54 68   symbols..#.# Th
1670: 69 73 20 64 6f 65 73 6e 27 74 20 73 65 65 6d 20  is doesn't seem 
1680: 74 6f 20 62 65 20 6e 65 63 65 73 73 61 72 79 20  to be necessary 
1690: 69 66 20 74 68 65 20 52 53 41 20 42 53 41 46 45  if the RSA BSAFE
16a0: 20 53 53 4c 2d 43 20 6c 69 62 72 61 72 69 65 73   SSL-C libraries
16b0: 0a 23 20 61 72 65 20 75 73 65 64 20 69 6e 73 74  .# are used inst
16c0: 65 61 64 20 6f 66 20 4f 70 65 6e 53 53 4c 2e 0a  ead of OpenSSL..
16d0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
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 0a 0a 69 66 20 74 65 73 74 20 2d  -----..if test -
1720: 6e 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20  n "${OPENSSL}"; 
1730: 74 68 65 6e 0a 0a 20 20 20 20 41 43 5f 4d 53 47  then..    AC_MSG
1740: 5f 43 48 45 43 4b 49 4e 47 28 69 66 20 6c 69 62  _CHECKING(if lib
1750: 67 63 63 20 69 73 20 6e 65 65 64 65 64 20 74 6f  gcc is needed to
1760: 20 72 65 73 6f 6c 76 65 20 6f 70 65 6e 73 73 6c   resolve openssl
1770: 20 73 79 6d 62 6f 6c 73 29 0a 0a 20 20 20 20 41   symbols)..    A
1780: 43 5f 41 52 47 5f 57 49 54 48 28 67 63 63 6c 69  C_ARG_WITH(gccli
1790: 62 2c 20 5b 20 20 2d 2d 77 69 74 68 2d 67 63 63  b, [  --with-gcc
17a0: 6c 69 62 20 20 20 20 20 20 20 20 20 6c 69 6e 6b  lib         link
17b0: 20 77 69 74 68 20 6c 69 62 67 63 63 20 74 6f 20   with libgcc to 
17c0: 72 65 73 6f 6c 76 65 20 73 79 6d 62 6f 6c 73 20  resolve symbols 
17d0: 69 6e 20 61 20 67 63 63 2d 62 75 69 6c 74 20 6f  in a gcc-built o
17e0: 70 65 6e 73 73 6c 20 6c 69 62 72 61 72 79 5d 2c  penssl library],
17f0: 20 47 43 43 4c 49 42 3d 22 2d 6c 67 63 63 22 2c   GCCLIB="-lgcc",
1800: 20 47 43 43 4c 49 42 3d 22 22 29 0a 0a 20 20 20   GCCLIB="")..   
1810: 20 69 66 20 74 65 73 74 20 22 78 24 7b 47 43 43   if test "x${GCC
1820: 4c 49 42 7d 22 20 3d 20 22 78 22 20 3b 20 74 68  LIB}" = "x" ; th
1830: 65 6e 0a 20 20 20 20 20 20 20 20 41 43 5f 4d 53  en.        AC_MS
1840: 47 5f 52 45 53 55 4c 54 28 6e 6f 29 0a 20 20 20  G_RESULT(no).   
1850: 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 41 43   else.        AC
1860: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 79 65 73 29  _MSG_RESULT(yes)
1870: 0a 20 20 20 20 20 20 20 20 41 43 5f 4d 53 47 5f  .        AC_MSG_
1880: 43 48 45 43 4b 49 4e 47 28 66 6f 72 20 67 63 63  CHECKING(for gcc
1890: 20 6c 69 62 72 61 72 79 20 6c 6f 63 61 74 69 6f   library locatio
18a0: 6e 29 0a 20 20 20 20 20 20 20 20 47 43 43 50 41  n).        GCCPA
18b0: 54 48 3d 60 24 7b 43 43 7d 20 2d 70 72 69 6e 74  TH=`${CC} -print
18c0: 2d 6c 69 62 67 63 63 2d 66 69 6c 65 2d 6e 61 6d  -libgcc-file-nam
18d0: 65 20 7c 20 73 65 64 20 2d 65 20 27 73 23 5b 5e  e | sed -e 's#[^
18e0: 2f 5d 2a 24 23 23 27 60 0a 20 20 20 20 20 20 20  /]*$##'`.       
18f0: 20 47 43 43 50 41 54 48 3d 22 2d 4c 24 7b 47 43   GCCPATH="-L${GC
1900: 43 50 41 54 48 7d 22 0a 20 20 20 20 20 20 20 20  CPATH}".        
1910: 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 24 7b  AC_MSG_RESULT(${
1920: 47 43 43 50 41 54 48 7d 29 0a 20 20 20 20 66 69  GCCPATH}).    fi
1930: 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .fi..#----------
1940: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1950: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1970: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43 68 65  ----------.# Che
1980: 63 6b 73 20 74 6f 20 73 65 65 20 69 66 20 74 68  cks to see if th
1990: 65 20 6d 61 6b 65 20 70 72 6f 67 72 61 6d 20 73  e make program s
19a0: 65 74 73 20 74 68 65 20 24 4d 41 4b 45 20 76 61  ets the $MAKE va
19b0: 72 69 61 62 6c 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d  riable..#-------
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 2d 2d 2d 2d 2d 2d  ----------------
19f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41  -------------..A
1a00: 43 5f 50 52 4f 47 5f 4d 41 4b 45 5f 53 45 54 0a  C_PROG_MAKE_SET.
1a10: 0a 23 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 2d  ----------------
1a40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a50: 2d 2d 2d 2d 2d 2d 0a 23 20 46 69 6e 64 20 72 61  ------.# Find ra
1a60: 6e 6c 69 62 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  nlib.#----------
1a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f 50  ----------..AC_P
1ab0: 52 4f 47 5f 52 41 4e 4c 49 42 0a 0a 23 2d 2d 2d  ROG_RANLIB..#---
1ac0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ad0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ae0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b00: 2d 0a 23 20 54 68 69 73 20 6d 61 63 72 6f 20 70  -.# This macro p
1b10: 65 72 66 6f 72 6d 73 20 61 64 64 69 74 69 6f 6e  erforms addition
1b20: 61 6c 20 63 6f 6d 70 69 6c 65 72 20 74 65 73 74  al compiler test
1b30: 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  s..#------------
1b40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b70: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f 43 59 47  --------..AC_CYG
1b80: 57 49 4e 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  WIN..#----------
1b90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 74  ----------.# Det
1bd0: 65 72 6d 69 6e 65 73 20 74 68 65 20 63 6f 72 72  ermines the corr
1be0: 65 63 74 20 62 69 6e 61 72 79 20 66 69 6c 65 20  ect binary file 
1bf0: 65 78 74 65 6e 73 69 6f 6e 20 28 2e 6f 2c 20 2e  extension (.o, .
1c00: 6f 62 6a 2c 20 2e 65 78 65 20 65 74 63 2e 29 0a  obj, .exe etc.).
1c10: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
1c20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c50: 2d 2d 2d 2d 2d 0a 0a 41 43 5f 4f 42 4a 45 58 54  -----..AC_OBJEXT
1c60: 0a 41 43 5f 45 58 45 45 58 54 0a 0a 23 2d 2d 2d  .AC_EXEEXT..#---
1c70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ca0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cb0: 2d 0a 23 20 22 63 79 67 70 61 74 68 22 20 69 73  -.# "cygpath" is
1cc0: 20 75 73 65 64 20 6f 6e 20 77 69 6e 64 6f 77 73   used on windows
1cd0: 20 74 6f 20 67 65 6e 65 72 61 74 65 20 6e 61 74   to generate nat
1ce0: 69 76 65 20 70 61 74 68 20 6e 61 6d 65 73 20 66  ive path names f
1cf0: 6f 72 0a 23 20 69 6e 63 6c 75 64 65 20 66 69 6c  or.# include fil
1d00: 65 73 2e 20 20 54 68 65 73 65 20 76 61 72 69 61  es.  These varia
1d10: 62 6c 65 73 20 73 68 6f 75 6c 64 20 6f 6e 6c 79  bles should only
1d20: 20 62 65 20 75 73 65 64 20 77 69 74 68 20 74 68   be used with th
1d30: 65 0a 23 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64  e.# compiler and
1d40: 20 6c 69 6e 6b 65 72 20 73 69 6e 63 65 20 23 20   linker since # 
1d50: 74 68 65 79 20 67 65 6e 65 72 61 74 65 20 6e 61  they generate na
1d60: 74 69 76 65 20 70 61 74 68 20 6e 61 6d 65 73 2e  tive path names.
1d70: 0a 23 0a 23 20 55 6e 69 78 20 74 63 6c 43 6f 6e  .#.# Unix tclCon
1d80: 66 69 67 2e 73 68 20 70 6f 69 6e 74 73 20 53 52  fig.sh points SR
1d90: 43 5f 44 49 52 20 61 74 20 74 68 65 20 74 6f 70  C_DIR at the top
1da0: 2d 6c 65 76 65 6c 20 64 69 72 65 63 74 6f 72 79  -level directory
1db0: 20 6f 66 0a 23 20 74 68 65 20 54 63 6c 20 73 6f   of.# the Tcl so
1dc0: 75 72 63 65 73 2c 20 77 68 69 6c 65 20 74 68 65  urces, while the
1dd0: 20 57 69 6e 64 6f 77 73 20 74 63 6c 43 6f 6e 66   Windows tclConf
1de0: 69 67 2e 73 68 20 70 6f 69 6e 74 73 20 53 52 43  ig.sh points SRC
1df0: 5f 44 49 52 20 61 74 0a 23 20 74 68 65 20 77 69  _DIR at.# the wi
1e00: 6e 20 73 75 62 64 69 72 65 63 74 6f 72 79 2e 20  n subdirectory. 
1e10: 20 48 65 6e 63 65 20 74 68 65 20 64 69 66 66 65   Hence the diffe
1e20: 72 65 6e 74 20 75 73 61 67 65 73 20 6f 66 20 53  rent usages of S
1e30: 52 43 5f 44 49 52 20 62 65 6c 6f 77 2e 0a 23 0a  RC_DIR below..#.
1e40: 23 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 64  # This must be d
1e50: 6f 6e 65 20 62 65 66 6f 72 65 20 63 61 6c 6c 69  one before calli
1e60: 6e 67 20 53 43 5f 50 55 42 4c 49 43 5f 54 43 4c  ng SC_PUBLIC_TCL
1e70: 5f 48 45 41 44 45 52 53 20 6f 72 0a 23 20 53 43  _HEADERS or.# SC
1e80: 5f 50 52 49 56 41 54 45 5f 54 43 4c 5f 48 45 41  _PRIVATE_TCL_HEA
1e90: 44 45 52 53 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  DERS..#---------
1ea0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1eb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ec0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ed0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 63 61 73  -----------..cas
1ee0: 65 20 22 60 75 6e 61 6d 65 20 2d 73 60 22 20 69  e "`uname -s`" i
1ef0: 6e 0a 20 20 20 20 2a 77 69 6e 33 32 2a 20 7c 20  n.    *win32* | 
1f00: 2a 57 49 4e 33 32 2a 20 7c 20 2a 43 59 47 57 49  *WIN32* | *CYGWI
1f10: 4e 5f 4e 54 2a 7c 2a 43 59 47 57 49 4e 5f 39 38  N_NT*|*CYGWIN_98
1f20: 2a 7c 2a 43 59 47 57 49 4e 5f 39 35 2a 29 0a 09  *|*CYGWIN_95*)..
1f30: 43 59 47 50 41 54 48 3d 22 63 79 67 70 61 74 68  CYGPATH="cygpath
1f40: 20 2d 77 22 0a 09 52 45 4c 50 41 54 48 3d 22 2e   -w"..RELPATH=".
1f50: 2e 20 2e 2e 20 62 69 6e 22 0a 20 20 20 20 3b 3b  . .. bin".    ;;
1f60: 0a 20 20 20 20 2a 29 0a 09 43 59 47 50 41 54 48  .    *)..CYGPATH
1f70: 3d 65 63 68 6f 0a 09 52 45 4c 50 41 54 48 3d 22  =echo..RELPATH="
1f80: 2e 2e 22 0a 20 20 20 20 3b 3b 0a 65 73 61 63 0a  ..".    ;;.esac.
1f90: 0a 41 43 5f 53 55 42 53 54 28 43 59 47 50 41 54  .AC_SUBST(CYGPAT
1fa0: 48 29 0a 41 43 5f 53 55 42 53 54 28 52 45 4c 50  H).AC_SUBST(RELP
1fb0: 41 54 48 29 0a 0a 53 53 4c 5f 49 4e 43 4c 55 44  ATH)..SSL_INCLUD
1fc0: 45 5f 44 49 52 5f 4e 41 54 49 56 45 3d 5c 22 60  E_DIR_NATIVE=\"`
1fd0: 24 7b 43 59 47 50 41 54 48 7d 20 24 7b 53 53 4c  ${CYGPATH} ${SSL
1fe0: 5f 49 4e 43 4c 55 44 45 5f 44 49 52 7d 60 5c 22  _INCLUDE_DIR}`\"
1ff0: 0a 41 43 5f 53 55 42 53 54 28 53 53 4c 5f 49 4e  .AC_SUBST(SSL_IN
2000: 43 4c 55 44 45 5f 44 49 52 5f 4e 41 54 49 56 45  CLUDE_DIR_NATIVE
2010: 29 0a 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  )...#-----------
2020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2040: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2050: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 4c 6f 61 64  ---------.# Load
2060: 20 74 68 65 20 74 63 6c 43 6f 6e 66 69 67 2e 73   the tclConfig.s
2070: 68 20 66 69 6c 65 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  h file.#--------
2080: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2090: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
20a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
20b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 53 43  ------------..SC
20c0: 5f 50 41 54 48 5f 54 43 4c 43 4f 4e 46 49 47 0a  _PATH_TCLCONFIG.
20d0: 53 43 5f 4c 4f 41 44 5f 54 43 4c 43 4f 4e 46 49  SC_LOAD_TCLCONFI
20e0: 47 0a 0a 53 43 5f 50 52 49 56 41 54 45 5f 54 43  G..SC_PRIVATE_TC
20f0: 4c 5f 48 45 41 44 45 52 53 0a 0a 23 2d 2d 2d 2d  L_HEADERS..#----
2100: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2110: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2120: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2130: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2140: 0a 23 20 41 20 66 65 77 20 6d 69 73 63 65 6c 6c  .# A few miscell
2150: 61 6e 65 6f 75 73 20 70 6c 61 74 66 6f 72 6d 2d  aneous platform-
2160: 73 70 65 63 69 66 69 63 20 69 74 65 6d 73 3a 0a  specific items:.
2170: 23 0a 23 20 44 65 66 69 6e 65 20 61 20 73 70 65  #.# Define a spe
2180: 63 69 61 6c 20 73 79 6d 62 6f 6c 20 66 6f 72 20  cial symbol for 
2190: 57 69 6e 64 6f 77 73 20 28 42 55 49 4c 44 5f 74  Windows (BUILD_t
21a0: 6c 73 20 69 6e 20 74 68 69 73 20 63 61 73 65 29  ls in this case)
21b0: 20 73 6f 0a 23 20 74 68 61 74 20 77 65 20 63 72   so.# that we cr
21c0: 65 61 74 65 20 74 68 65 20 65 78 70 6f 72 74 20  eate the export 
21d0: 6c 69 62 72 61 72 79 20 77 69 74 68 20 74 68 65  library with the
21e0: 20 64 6c 6c 2e 0a 23 0a 23 20 43 6c 65 61 6e 20   dll..#.# Clean 
21f0: 75 70 20 61 6e 79 20 65 78 74 72 61 20 66 69 6c  up any extra fil
2200: 65 73 20 74 68 61 74 20 57 69 6e 64 6f 77 73 20  es that Windows 
2210: 63 72 65 61 74 65 73 2e 0a 23 0a 23 20 44 65 66  creates..#.# Def
2220: 69 6e 65 20 61 6e 79 20 65 78 74 72 61 20 63 6f  ine any extra co
2230: 6d 70 69 6c 65 72 20 66 6c 61 67 73 20 69 6e 20  mpiler flags in 
2240: 74 68 65 20 50 41 43 4b 41 47 45 5f 43 46 4c 41  the PACKAGE_CFLA
2250: 47 53 20 76 61 72 69 61 62 6c 65 2e 0a 23 20 54  GS variable..# T
2260: 68 65 73 65 20 77 69 6c 6c 20 62 65 20 61 70 70  hese will be app
2270: 65 6e 64 65 64 20 74 6f 20 74 68 65 20 63 75 72  ended to the cur
2280: 72 65 6e 74 20 73 65 74 20 6f 66 20 63 6f 6d 70  rent set of comp
2290: 69 6c 65 72 20 66 6c 61 67 73 20 66 6f 72 0a 23  iler flags for.#
22a0: 20 79 6f 75 72 20 73 79 73 74 65 6d 2e 0a 23 2d   your system..#-
22b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22f0: 2d 2d 2d 0a 0a 63 61 73 65 20 22 60 75 6e 61 6d  ---..case "`unam
2300: 65 20 2d 73 60 22 20 69 6e 0a 20 20 20 20 2a 77  e -s`" in.    *w
2310: 69 6e 33 32 2a 20 7c 20 2a 57 49 4e 33 32 2a 20  in32* | *WIN32* 
2320: 7c 20 2a 43 59 47 57 49 4e 5f 4e 54 2a 7c 2a 43  | *CYGWIN_NT*|*C
2330: 59 47 57 49 4e 5f 39 38 2a 7c 2a 43 59 47 57 49  YGWIN_98*|*CYGWI
2340: 4e 5f 39 35 2a 29 0a 09 41 43 5f 44 45 46 49 4e  N_95*)..AC_DEFIN
2350: 45 5f 55 4e 51 55 4f 54 45 44 28 42 55 49 4c 44  E_UNQUOTED(BUILD
2360: 5f 24 7b 50 41 43 4b 41 47 45 7d 29 0a 09 43 4c  _${PACKAGE})..CL
2370: 45 41 4e 46 49 4c 45 53 3d 22 2a 2e 6c 69 62 20  EANFILES="*.lib 
2380: 2a 2e 64 6c 6c 20 2a 2e 65 78 70 20 2a 2e 69 6c  *.dll *.exp *.il
2390: 6b 20 2a 2e 70 64 62 20 76 63 35 30 2e 70 63 68  k *.pdb vc50.pch
23a0: 22 0a 09 41 43 5f 53 55 42 53 54 28 43 4c 45 41  "..AC_SUBST(CLEA
23b0: 4e 46 49 4c 45 53 29 0a 20 20 20 20 3b 3b 0a 20  NFILES).    ;;. 
23c0: 20 20 20 2a 29 0a 09 43 4c 45 41 4e 46 49 4c 45     *)..CLEANFILE
23d0: 53 3d 0a 20 20 20 20 3b 3b 0a 65 73 61 63 0a 0a  S=.    ;;.esac..
23e0: 23 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 2d 2d  ----------------
2400: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2410: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2420: 2d 2d 2d 2d 2d 0a 23 20 43 68 65 63 6b 20 77 68  -----.# Check wh
2430: 65 74 68 65 72 20 2d 2d 65 6e 61 62 6c 65 2d 74  ether --enable-t
2440: 68 72 65 61 64 73 20 6f 72 20 2d 2d 64 69 73 61  hreads or --disa
2450: 62 6c 65 2d 74 68 72 65 61 64 73 20 77 61 73 20  ble-threads was 
2460: 67 69 76 65 6e 2e 0a 23 20 53 6f 20 66 61 72 20  given..# So far 
2470: 6f 6e 6c 79 20 54 63 6c 20 72 65 73 70 6f 6e 64  only Tcl respond
2480: 73 20 74 6f 20 74 68 69 73 20 6f 6e 65 2e 0a 23  s to this one..#
2490: 2d 2d 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 0a 0a 53 43 5f 45 4e 41 42 4c 45 5f  ----..SC_ENABLE_
24e0: 54 48 52 45 41 44 53 0a 0a 23 2d 2d 2d 2d 2d 2d  THREADS..#------
24f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 23  --------------.#
2530: 20 54 68 65 20 73 74 61 74 65 6d 65 6e 74 20 62   The statement b
2540: 65 6c 6f 77 20 64 65 66 69 6e 65 73 20 61 20 63  elow defines a c
2550: 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 73 79 6d  ollection of sym
2560: 62 6f 6c 73 20 72 65 6c 61 74 65 64 20 74 6f 0a  bols related to.
2570: 23 20 62 75 69 6c 64 69 6e 67 20 61 73 20 61 20  # building as a 
2580: 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 20 69  shared library i
2590: 6e 73 74 65 61 64 20 6f 66 20 61 20 73 74 61 74  nstead of a stat
25a0: 69 63 20 6c 69 62 72 61 72 79 2e 0a 23 2d 2d 2d  ic library..#---
25b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
25c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
25d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
25e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
25f0: 2d 0a 0a 53 43 5f 45 4e 41 42 4c 45 5f 53 48 41  -..SC_ENABLE_SHA
2600: 52 45 44 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  RED..#----------
2610: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2620: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2630: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 69  ----------.# Thi
2650: 73 20 6d 61 63 72 6f 20 66 69 67 75 72 65 73 20  s macro figures 
2660: 6f 75 74 20 77 68 61 74 20 66 6c 61 67 73 20 74  out what flags t
2670: 6f 20 75 73 65 20 77 69 74 68 20 74 68 65 20 63  o use with the c
2680: 6f 6d 70 69 6c 65 72 2f 6c 69 6e 6b 65 72 0a 23  ompiler/linker.#
2690: 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 73   when building s
26a0: 68 61 72 65 64 2f 73 74 61 74 69 63 20 64 65 62  hared/static deb
26b0: 75 67 2f 6f 70 74 69 6d 69 7a 65 64 20 6f 62 6a  ug/optimized obj
26c0: 65 63 74 73 2e 20 20 54 68 69 73 20 69 6e 66 6f  ects.  This info
26d0: 72 6d 61 74 69 6f 6e 0a 23 20 69 73 20 61 6c 6c  rmation.# is all
26e0: 20 74 61 6b 65 6e 20 66 72 6f 6d 20 74 68 65 20   taken from the 
26f0: 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 66 69 6c  tclConfig.sh fil
2700: 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  e..#------------
2710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2730: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2740: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 43 46 4c 41 47 53  --------..CFLAGS
2750: 5f 44 45 42 55 47 3d 24 7b 54 43 4c 5f 43 46 4c  _DEBUG=${TCL_CFL
2760: 41 47 53 5f 44 45 42 55 47 7d 0a 43 46 4c 41 47  AGS_DEBUG}.CFLAG
2770: 53 5f 4f 50 54 49 4d 49 5a 45 3d 24 7b 54 43 4c  S_OPTIMIZE=${TCL
2780: 5f 43 46 4c 41 47 53 5f 4f 50 54 49 4d 49 5a 45  _CFLAGS_OPTIMIZE
2790: 7d 0a 4c 44 46 4c 41 47 53 5f 44 45 42 55 47 3d  }.LDFLAGS_DEBUG=
27a0: 24 7b 54 43 4c 5f 4c 44 46 4c 41 47 53 5f 44 45  ${TCL_LDFLAGS_DE
27b0: 42 55 47 7d 0a 4c 44 46 4c 41 47 53 5f 4f 50 54  BUG}.LDFLAGS_OPT
27c0: 49 4d 49 5a 45 3d 24 7b 54 43 4c 5f 4c 44 46 4c  IMIZE=${TCL_LDFL
27d0: 41 47 53 5f 4f 50 54 49 4d 49 5a 45 7d 0a 53 48  AGS_OPTIMIZE}.SH
27e0: 4c 49 42 5f 4c 44 3d 24 7b 54 43 4c 5f 53 48 4c  LIB_LD=${TCL_SHL
27f0: 49 42 5f 4c 44 7d 0a 53 54 4c 49 42 5f 4c 44 3d  IB_LD}.STLIB_LD=
2800: 24 7b 54 43 4c 5f 53 54 4c 49 42 5f 4c 44 7d 0a  ${TCL_STLIB_LD}.
2810: 53 48 4c 49 42 5f 43 46 4c 41 47 53 3d 24 7b 54  SHLIB_CFLAGS=${T
2820: 43 4c 5f 53 48 4c 49 42 5f 43 46 4c 41 47 53 7d  CL_SHLIB_CFLAGS}
2830: 0a 0a 41 43 5f 53 55 42 53 54 28 43 46 4c 41 47  ..AC_SUBST(CFLAG
2840: 53 5f 44 45 42 55 47 29 0a 41 43 5f 53 55 42 53  S_DEBUG).AC_SUBS
2850: 54 28 43 46 4c 41 47 53 5f 4f 50 54 49 4d 49 5a  T(CFLAGS_OPTIMIZ
2860: 45 29 0a 41 43 5f 53 55 42 53 54 28 53 54 4c 49  E).AC_SUBST(STLI
2870: 42 5f 4c 44 29 0a 41 43 5f 53 55 42 53 54 28 53  B_LD).AC_SUBST(S
2880: 48 4c 49 42 5f 4c 44 29 0a 41 43 5f 53 55 42 53  HLIB_LD).AC_SUBS
2890: 54 28 53 48 4c 49 42 5f 43 46 4c 41 47 53 29 0a  T(SHLIB_CFLAGS).
28a0: 41 43 5f 53 55 42 53 54 28 53 48 4c 49 42 5f 4c  AC_SUBST(SHLIB_L
28b0: 44 46 4c 41 47 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d  DFLAGS)..#------
28c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
28d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
28e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
28f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23  --------------.#
2900: 20 53 65 74 20 74 68 65 20 64 65 66 61 75 6c 74   Set the default
2910: 20 63 6f 6d 70 69 6c 65 72 20 73 77 69 74 63 68   compiler switch
2920: 65 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20  es based on the 
2930: 2d 2d 65 6e 61 62 6c 65 2d 73 79 6d 62 6f 6c 73  --enable-symbols
2940: 20 0a 23 20 6f 70 74 69 6f 6e 2e 0a 23 2d 2d 2d   .# option..#---
2950: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2970: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2980: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2990: 2d 0a 0a 53 43 5f 45 4e 41 42 4c 45 5f 53 59 4d  -..SC_ENABLE_SYM
29a0: 42 4f 4c 53 0a 0a 69 66 20 74 65 73 74 20 22 24  BOLS..if test "$
29b0: 7b 53 48 41 52 45 44 5f 42 55 49 4c 44 7d 22 20  {SHARED_BUILD}" 
29c0: 3d 20 22 31 22 20 3b 20 74 68 65 6e 0a 20 20 20  = "1" ; then.   
29d0: 20 43 46 4c 41 47 53 3d 27 24 7b 43 46 4c 41 47   CFLAGS='${CFLAG
29e0: 53 5f 44 45 46 41 55 4c 54 7d 20 24 7b 43 46 4c  S_DEFAULT} ${CFL
29f0: 41 47 53 5f 57 41 52 4e 49 4e 47 7d 20 24 7b 53  AGS_WARNING} ${S
2a00: 48 4c 49 42 5f 43 46 4c 41 47 53 7d 27 0a 65 6c  HLIB_CFLAGS}'.el
2a10: 73 65 0a 20 20 20 20 43 46 4c 41 47 53 3d 27 24  se.    CFLAGS='$
2a20: 7b 43 46 4c 41 47 53 5f 44 45 46 41 55 4c 54 7d  {CFLAGS_DEFAULT}
2a30: 20 24 7b 43 46 4c 41 47 53 5f 57 41 52 4e 49 4e   ${CFLAGS_WARNIN
2a40: 47 7d 27 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d 2d 2d  G}'.fi..#-------
2a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2a60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20  -------------.# 
2a90: 45 76 65 72 79 6f 6e 65 20 73 68 6f 75 6c 64 20  Everyone should 
2aa0: 62 65 20 6c 69 6e 6b 69 6e 67 20 61 67 61 69 6e  be linking again
2ab0: 73 74 20 74 68 65 20 54 63 6c 20 73 74 75 62 20  st the Tcl stub 
2ac0: 6c 69 62 72 61 72 79 2e 20 20 49 66 20 79 6f 75  library.  If you
2ad0: 0a 23 20 63 61 6e 27 74 20 66 6f 72 20 73 6f 6d  .# can't for som
2ae0: 65 20 72 65 61 73 6f 6e 2c 20 72 65 6d 6f 76 65  e reason, remove
2af0: 20 74 68 69 73 20 64 65 66 69 6e 69 74 69 6f 6e   this definition
2b00: 2e 20 20 49 66 20 79 6f 75 20 61 72 65 6e 27 74  .  If you aren't
2b10: 20 75 73 69 6e 67 0a 23 20 73 74 75 62 73 2c 20   using.# stubs, 
2b20: 79 6f 75 20 61 6c 73 6f 20 6e 65 65 64 20 74 6f  you also need to
2b30: 20 6d 6f 64 69 66 79 20 74 68 65 20 53 48 4c 49   modify the SHLI
2b40: 42 5f 4c 44 5f 4c 49 42 53 20 73 65 74 74 69 6e  B_LD_LIBS settin
2b50: 67 20 62 65 6c 6f 77 20 74 6f 0a 23 20 6c 69 6e  g below to.# lin
2b60: 6b 20 61 67 61 69 6e 73 74 20 74 68 65 20 6e 6f  k against the no
2b70: 6e 2d 73 74 75 62 62 65 64 20 54 63 6c 20 6c 69  n-stubbed Tcl li
2b80: 62 72 61 72 79 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  brary..#--------
2b90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ba0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43  ------------..AC
2bd0: 5f 44 45 46 49 4e 45 28 55 53 45 5f 54 43 4c 5f  _DEFINE(USE_TCL_
2be0: 53 54 55 42 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d  STUBS)..#-------
2bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20  -------------.# 
2c30: 54 68 69 73 20 6d 61 63 72 6f 20 67 65 6e 65 72  This macro gener
2c40: 61 74 65 73 20 61 20 6c 69 6e 65 20 74 6f 20 75  ates a line to u
2c50: 73 65 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67  se when building
2c60: 20 61 20 6c 69 62 72 61 72 79 2e 20 20 49 74 0a   a library.  It.
2c70: 23 20 64 65 70 65 6e 64 73 20 6f 6e 20 76 61 6c  # depends on val
2c80: 75 65 73 20 73 65 74 20 62 79 20 74 68 65 20 53  ues set by the S
2c90: 43 5f 45 4e 41 42 4c 45 5f 53 48 41 52 45 44 2c  C_ENABLE_SHARED,
2ca0: 20 53 43 5f 45 4e 41 42 4c 45 5f 53 59 4d 42 4f   SC_ENABLE_SYMBO
2cb0: 4c 53 2c 0a 23 20 61 6e 64 20 53 43 5f 4c 4f 41  LS,.# and SC_LOA
2cc0: 44 5f 54 43 4c 43 4f 4e 46 49 47 20 6d 61 63 72  D_TCLCONFIG macr
2cd0: 6f 73 20 61 62 6f 76 65 2e 0a 23 2d 2d 2d 2d 2d  os above..#-----
2ce0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2cf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
2d20: 0a 53 43 5f 4d 41 4b 45 5f 4c 49 42 0a 0a 23 2d  .SC_MAKE_LIB..#-
2d30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d70: 2d 2d 2d 0a 23 20 65 76 61 6c 20 74 68 65 73 65  ---.# eval these
2d80: 20 74 77 6f 20 76 61 6c 75 65 73 20 74 6f 20 64   two values to d
2d90: 65 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 24  ereference the $
2da0: 7b 44 42 47 58 7d 20 76 61 72 69 61 62 6c 65 2e  {DBGX} variable.
2db0: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
2dc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2dd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2de0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2df0: 2d 2d 2d 2d 2d 2d 0a 0a 65 76 61 6c 20 22 53 48  ------..eval "SH
2e00: 41 52 45 44 5f 4c 49 42 5f 53 55 46 46 49 58 3d  ARED_LIB_SUFFIX=
2e10: 24 7b 54 43 4c 5f 53 48 41 52 45 44 5f 4c 49 42  ${TCL_SHARED_LIB
2e20: 5f 53 55 46 46 49 58 7d 22 0a 65 76 61 6c 20 22  _SUFFIX}".eval "
2e30: 55 4e 53 48 41 52 45 44 5f 4c 49 42 5f 53 55 46  UNSHARED_LIB_SUF
2e40: 46 49 58 3d 24 7b 54 43 4c 5f 55 4e 53 48 41 52  FIX=${TCL_UNSHAR
2e50: 45 44 5f 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a  ED_LIB_SUFFIX}".
2e60: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
2e70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ea0: 2d 2d 2d 2d 2d 2d 0a 23 20 53 68 61 72 65 64 20  ------.# Shared 
2eb0: 6c 69 62 72 61 72 69 65 73 20 61 6e 64 20 73 74  libraries and st
2ec0: 61 74 69 63 20 6c 69 62 72 61 72 69 65 73 20 68  atic libraries h
2ed0: 61 76 65 20 64 69 66 66 65 72 65 6e 74 20 6e 61  ave different na
2ee0: 6d 65 73 2e 0a 23 20 41 6c 73 6f 2c 20 77 69 6e  mes..# Also, win
2ef0: 64 6f 77 73 20 6c 69 62 72 61 72 69 65 73 20 61  dows libraries a
2f00: 6e 64 20 75 6e 69 78 20 6c 69 62 72 61 72 69 65  nd unix librarie
2f10: 73 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74  s have different
2f20: 20 6e 61 6d 65 73 2e 0a 23 20 46 6f 72 20 74 68   names..# For th
2f30: 65 20 4f 70 65 6e 53 53 4c 20 76 65 72 73 69 6f  e OpenSSL versio
2f40: 6e 2c 20 49 20 63 68 6f 73 65 20 74 6f 20 75 73  n, I chose to us
2f50: 65 20 74 68 65 20 73 61 6d 65 20 6c 69 62 72 61  e the same libra
2f60: 72 79 20 6e 61 6d 65 73 20 74 68 61 74 0a 23 20  ry names that.# 
2f70: 4f 70 65 6e 53 53 4c 20 75 73 65 73 20 61 73 20  OpenSSL uses as 
2f80: 69 74 73 20 64 65 66 61 75 6c 74 20 6e 61 6d 65  its default name
2f90: 73 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  s..#------------
2fa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2fc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2fd0: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 69 66 20 74 65 73  --------..if tes
2fe0: 74 20 2d 6e 20 22 24 7b 4f 50 45 4e 53 53 4c 7d  t -n "${OPENSSL}
2ff0: 22 3b 20 74 68 65 6e 0a 0a 20 20 20 20 63 61 73  "; then..    cas
3000: 65 20 22 60 75 6e 61 6d 65 20 2d 73 60 22 20 69  e "`uname -s`" i
3010: 6e 0a 09 2a 77 69 6e 33 32 2a 20 7c 20 2a 57 49  n..*win32* | *WI
3020: 4e 33 32 2a 20 7c 20 2a 43 59 47 57 49 4e 5f 4e  N32* | *CYGWIN_N
3030: 54 2a 7c 2a 43 59 47 57 49 4e 5f 39 38 2a 7c 2a  T*|*CYGWIN_98*|*
3040: 43 59 47 57 49 4e 5f 39 35 2a 29 0a 09 20 20 20  CYGWIN_95*)..   
3050: 20 69 66 20 74 65 73 74 20 22 24 7b 53 48 41 52   if test "${SHAR
3060: 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20 22 31 22  ED_BUILD}" = "1"
3070: 20 3b 20 74 68 65 6e 0a 09 09 53 48 4c 49 42 5f   ; then...SHLIB_
3080: 4c 44 5f 4c 49 42 53 3d 22 5c 22 60 24 7b 43 59  LD_LIBS="\"`${CY
3090: 47 50 41 54 48 7d 20 24 7b 54 43 4c 5f 42 49 4e  GPATH} ${TCL_BIN
30a0: 5f 44 49 52 7d 2f 24 7b 54 43 4c 5f 53 54 55 42  _DIR}/${TCL_STUB
30b0: 5f 4c 49 42 5f 46 49 4c 45 7d 60 5c 22 20 24 7b  _LIB_FILE}`\" ${
30c0: 54 43 4c 5f 53 48 4c 49 42 5f 4c 44 5f 4c 49 42  TCL_SHLIB_LD_LIB
30d0: 53 7d 20 5c 22 60 24 7b 43 59 47 50 41 54 48 7d  S} \"`${CYGPATH}
30e0: 20 24 7b 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 2f   ${SSL_LIB_DIR}/
30f0: 73 73 6c 65 61 79 33 32 2e 6c 69 62 60 5c 22 20  ssleay32.lib`\" 
3100: 5c 22 60 24 7b 43 59 47 50 41 54 48 7d 20 24 7b  \"`${CYGPATH} ${
3110: 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 2f 6c 69 62  SSL_LIB_DIR}/lib
3120: 65 61 79 33 32 2e 6c 69 62 60 5c 22 22 0a 09 09  eay32.lib`\""...
3130: 65 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d  eval "${PACKAGE}
3140: 5f 4c 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43 4b  _LIB_FILE=${PACK
3150: 41 47 45 7d 24 7b 53 48 41 52 45 44 5f 4c 49 42  AGE}${SHARED_LIB
3160: 5f 53 55 46 46 49 58 7d 22 0a 09 09 52 41 4e 4c  _SUFFIX}"...RANL
3170: 49 42 3d 3a 0a 09 20 20 20 20 65 6c 73 65 0a 09  IB=:..    else..
3180: 09 65 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45  .eval "${PACKAGE
3190: 7d 5f 4c 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43  }_LIB_FILE=${PAC
31a0: 4b 41 47 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f  KAGE}${UNSHARED_
31b0: 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20  LIB_SUFFIX}"..  
31c0: 20 20 66 69 0a 09 3b 3b 0a 09 2a 29 0a 09 20 20    fi..;;..*)..  
31d0: 20 20 69 66 20 74 65 73 74 20 22 24 7b 53 48 41    if test "${SHA
31e0: 52 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20 22 31  RED_BUILD}" = "1
31f0: 22 20 3b 20 74 68 65 6e 0a 09 09 53 48 4c 49 42  " ; then...SHLIB
3200: 5f 4c 44 5f 4c 49 42 53 3d 22 24 7b 54 43 4c 5f  _LD_LIBS="${TCL_
3210: 53 54 55 42 5f 4c 49 42 5f 53 50 45 43 7d 20 2d  STUB_LIB_SPEC} -
3220: 4c 24 7b 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 20  L${SSL_LIB_DIR} 
3230: 2d 6c 73 73 6c 20 2d 4c 24 7b 53 53 4c 5f 4c 49  -lssl -L${SSL_LI
3240: 42 5f 44 49 52 7d 20 2d 6c 63 72 79 70 74 6f 20  B_DIR} -lcrypto 
3250: 24 7b 47 43 43 50 41 54 48 7d 20 24 7b 47 43 43  ${GCCPATH} ${GCC
3260: 4c 49 42 7d 22 0a 09 09 65 76 61 6c 20 22 24 7b  LIB}"...eval "${
3270: 50 41 43 4b 41 47 45 7d 5f 4c 49 42 5f 46 49 4c  PACKAGE}_LIB_FIL
3280: 45 3d 6c 69 62 24 7b 50 41 43 4b 41 47 45 7d 24  E=lib${PACKAGE}$
3290: 7b 53 48 41 52 45 44 5f 4c 49 42 5f 53 55 46 46  {SHARED_LIB_SUFF
32a0: 49 58 7d 22 0a 09 09 52 41 4e 4c 49 42 3d 3a 0a  IX}"...RANLIB=:.
32b0: 09 20 20 20 20 65 6c 73 65 0a 09 09 65 76 61 6c  .    else...eval
32c0: 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c 49 42   "${PACKAGE}_LIB
32d0: 5f 46 49 4c 45 3d 6c 69 62 24 7b 50 41 43 4b 41  _FILE=lib${PACKA
32e0: 47 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f 4c 49  GE}${UNSHARED_LI
32f0: 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20 20 20  B_SUFFIX}"..    
3300: 66 69 0a 09 3b 3b 0a 20 20 20 20 65 73 61 63 0a  fi..;;.    esac.
3310: 65 6c 73 65 0a 20 20 20 20 63 61 73 65 20 22 60  else.    case "`
3320: 75 6e 61 6d 65 20 2d 73 60 22 20 69 6e 0a 20 20  uname -s`" in.  
3330: 20 20 20 20 20 20 2a 77 69 6e 33 32 2a 20 7c 20        *win32* | 
3340: 2a 57 49 4e 33 32 2a 20 7c 20 2a 43 59 47 57 49  *WIN32* | *CYGWI
3350: 4e 5f 4e 54 2a 7c 2a 43 59 47 57 49 4e 5f 39 38  N_NT*|*CYGWIN_98
3360: 2a 7c 2a 43 59 47 57 49 4e 5f 39 35 2a 29 0a 09  *|*CYGWIN_95*)..
3370: 20 20 20 20 69 66 20 74 65 73 74 20 22 24 7b 53      if test "${S
3380: 48 41 52 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20  HARED_BUILD}" = 
3390: 22 31 22 20 3b 20 74 68 65 6e 0a 09 20 20 20 20  "1" ; then..    
33a0: 20 20 20 20 53 48 4c 49 42 5f 4c 44 5f 4c 49 42      SHLIB_LD_LIB
33b0: 53 3d 22 5c 22 60 24 7b 43 59 47 50 41 54 48 7d  S="\"`${CYGPATH}
33c0: 20 24 7b 54 43 4c 5f 42 49 4e 5f 44 49 52 7d 2f   ${TCL_BIN_DIR}/
33d0: 24 7b 54 43 4c 5f 53 54 55 42 5f 4c 49 42 5f 46  ${TCL_STUB_LIB_F
33e0: 49 4c 45 7d 60 5c 22 20 24 7b 54 43 4c 5f 53 48  ILE}`\" ${TCL_SH
33f0: 4c 49 42 5f 4c 44 5f 4c 49 42 53 7d 20 5c 22 60  LIB_LD_LIBS} \"`
3400: 24 7b 43 59 47 50 41 54 48 7d 20 24 7b 53 53 4c  ${CYGPATH} ${SSL
3410: 5f 4c 49 42 5f 44 49 52 7d 2f 73 73 6c 63 33 32  _LIB_DIR}/sslc32
3420: 2e 6c 69 62 60 5c 22 22 0a 09 20 20 20 20 20 20  .lib`\""..      
3430: 20 20 65 76 61 6c 20 22 24 7b 50 41 43 4b 41 47    eval "${PACKAG
3440: 45 7d 5f 4c 49 42 5f 46 49 4c 45 3d 24 7b 50 41  E}_LIB_FILE=${PA
3450: 43 4b 41 47 45 7d 24 7b 53 48 41 52 45 44 5f 4c  CKAGE}${SHARED_L
3460: 49 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20 20  IB_SUFFIX}"..   
3470: 20 20 20 20 20 52 41 4e 4c 49 42 3d 3a 0a 09 20       RANLIB=:.. 
3480: 20 20 20 65 6c 73 65 0a 09 20 20 20 20 20 20 20     else..       
3490: 20 65 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45   eval "${PACKAGE
34a0: 7d 5f 4c 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43  }_LIB_FILE=${PAC
34b0: 4b 41 47 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f  KAGE}${UNSHARED_
34c0: 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20  LIB_SUFFIX}"..  
34d0: 20 20 66 69 0a 09 3b 3b 0a 20 20 20 20 20 20 20    fi..;;.       
34e0: 20 2a 29 0a 09 20 20 20 20 69 66 20 74 65 73 74   *)..    if test
34f0: 20 22 24 7b 53 48 41 52 45 44 5f 42 55 49 4c 44   "${SHARED_BUILD
3500: 7d 22 20 3d 20 22 31 22 20 3b 20 74 68 65 6e 0a  }" = "1" ; then.
3510: 09 20 20 20 20 20 20 20 20 53 48 4c 49 42 5f 4c  .        SHLIB_L
3520: 44 5f 4c 49 42 53 3d 22 24 7b 54 43 4c 5f 53 54  D_LIBS="${TCL_ST
3530: 55 42 5f 4c 49 42 5f 53 50 45 43 7d 20 2d 4c 24  UB_LIB_SPEC} -L$
3540: 7b 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 20 2d 6c  {SSL_LIB_DIR} -l
3550: 73 73 6c 63 22 0a 09 20 20 20 20 20 20 20 20 65  sslc"..        e
3560: 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f  val "${PACKAGE}_
3570: 4c 49 42 5f 46 49 4c 45 3d 6c 69 62 24 7b 50 41  LIB_FILE=lib${PA
3580: 43 4b 41 47 45 7d 24 7b 53 48 41 52 45 44 5f 4c  CKAGE}${SHARED_L
3590: 49 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20 20  IB_SUFFIX}"..   
35a0: 20 20 20 20 20 52 41 4e 4c 49 42 3d 3a 0a 09 20       RANLIB=:.. 
35b0: 20 20 20 65 6c 73 65 0a 09 20 20 20 20 20 20 20     else..       
35c0: 20 65 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45   eval "${PACKAGE
35d0: 7d 5f 4c 49 42 5f 46 49 4c 45 3d 6c 69 62 24 7b  }_LIB_FILE=lib${
35e0: 50 41 43 4b 41 47 45 7d 24 7b 55 4e 53 48 41 52  PACKAGE}${UNSHAR
35f0: 45 44 5f 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a  ED_LIB_SUFFIX}".
3600: 09 20 20 20 20 66 69 0a 09 3b 3b 0a 20 20 20 20  .    fi..;;.    
3610: 65 73 61 63 0a 66 69 0a 0a 41 43 5f 53 55 42 53  esac.fi..AC_SUBS
3620: 54 28 74 6c 73 5f 4c 49 42 5f 46 49 4c 45 29 0a  T(tls_LIB_FILE).
3630: 41 43 5f 53 55 42 53 54 28 53 48 4c 49 42 5f 4c  AC_SUBST(SHLIB_L
3640: 44 5f 4c 49 42 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d  D_LIBS)..#------
3650: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3670: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23  --------------.#
3690: 20 46 69 6e 64 20 74 63 6c 73 68 20 73 6f 20 74   Find tclsh so t
36a0: 68 61 74 20 77 65 20 63 61 6e 20 72 75 6e 20 70  hat we can run p
36b0: 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f 20 67 65  kg_mkIndex to ge
36c0: 6e 65 72 61 74 65 20 74 68 65 20 70 6b 67 49 6e  nerate the pkgIn
36d0: 64 65 78 2e 74 63 6c 0a 23 20 66 69 6c 65 20 64  dex.tcl.# file d
36e0: 75 72 69 6e 67 20 74 68 65 20 69 6e 73 74 61 6c  uring the instal
36f0: 6c 20 70 72 6f 63 65 73 73 2e 20 20 44 6f 6e 27  l process.  Don'
3700: 74 20 72 75 6e 20 74 68 65 20 54 43 4c 53 48 5f  t run the TCLSH_
3710: 50 52 4f 47 20 74 68 72 6f 75 67 68 0a 23 20 24  PROG through.# $
3720: 7b 43 59 47 50 41 54 48 7d 20 62 65 63 61 75 73  {CYGPATH} becaus
3730: 65 20 69 74 27 73 20 62 65 69 6e 67 20 75 73 65  e it's being use
3740: 64 20 64 69 72 65 63 74 6c 79 20 62 79 20 6d 61  d directly by ma
3750: 6b 65 2e 0a 23 20 52 65 71 75 69 72 65 20 74 68  ke..# Require th
3760: 61 74 20 77 65 20 75 73 65 20 61 20 74 63 6c 73  at we use a tcls
3770: 68 20 73 68 65 6c 6c 20 76 65 72 73 69 6f 6e 20  h shell version 
3780: 38 2e 32 20 6f 72 20 6c 61 74 65 72 20 73 69 6e  8.2 or later sin
3790: 63 65 20 65 61 72 6c 69 65 72 0a 23 20 76 65 72  ce earlier.# ver
37a0: 73 69 6f 6e 73 20 68 61 76 65 20 62 75 67 73 20  sions have bugs 
37b0: 69 6e 20 74 68 65 20 70 6b 67 5f 6d 6b 49 6e 64  in the pkg_mkInd
37c0: 65 78 20 72 6f 75 74 69 6e 65 2e 0a 23 2d 2d 2d  ex routine..#---
37d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
37e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
37f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3800: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3810: 2d 0a 0a 53 43 5f 50 52 4f 47 5f 54 43 4c 53 48  -..SC_PROG_TCLSH
3820: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
3830: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3840: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3860: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 46 69 6e 61 6c 6c  -------.# Finall
3870: 79 2c 20 73 75 62 73 74 69 74 75 74 65 20 61 6c  y, substitute al
3880: 6c 20 6f 66 20 74 68 65 20 76 61 72 69 6f 75 73  l of the various
3890: 20 76 61 6c 75 65 73 20 69 6e 74 6f 20 74 68 65   values into the
38a0: 20 4d 61 6b 65 66 69 6c 65 2e 0a 23 2d 2d 2d 2d   Makefile..#----
38b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38f0: 0a 0a 41 43 5f 4f 55 54 50 55 54 28 5b 4d 61 6b  ..AC_OUTPUT([Mak
3900: 65 66 69 6c 65 20 5c 0a 09 70 6b 67 49 6e 64 65  efile \..pkgInde
3910: 78 2e 74 63 6c 5d 29 0a                          x.tcl]).