Hex Artifact Content

Artifact 7a0aefa0d8a32a5c6cc5c646ff93544d9587f62e:


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 34 0a 50 41 54 43 48 4c 45 56 45  SION=4.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 20 20 20 20 41 43 5f 44 45 46  nssl'.    AC_DEF
0b70: 49 4e 45 28 4e 4f 5f 49 44 45 41 29 0a 20 20 20  INE(NO_IDEA).   
0b80: 20 41 43 5f 44 45 46 49 4e 45 28 4e 4f 5f 52 43   AC_DEFINE(NO_RC
0b90: 35 29 0a 65 6c 73 65 0a 20 20 20 20 53 53 4c 5f  5).else.    SSL_
0ba0: 44 49 52 3d 27 2f 75 73 65 2f 6c 6f 63 61 6c 2f  DIR='/use/local/
0bb0: 73 73 6c 63 27 0a 20 20 20 20 41 43 5f 44 45 46  sslc'.    AC_DEF
0bc0: 49 4e 45 28 42 53 41 46 45 29 0a 20 20 20 20 41  INE(BSAFE).    A
0bd0: 43 5f 44 45 46 49 4e 45 28 46 4c 41 54 5f 49 4e  C_DEFINE(FLAT_IN
0be0: 43 29 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  C).fi..#--------
0bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0c00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0c10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0c20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 49  ------------.# I
0c30: 66 20 77 65 27 72 65 20 75 73 69 6e 67 20 52 53  f we're using RS
0c40: 41 20 42 53 41 46 45 20 53 53 4c 2d 43 2c 20 77  A BSAFE SSL-C, w
0c50: 65 20 6e 65 65 64 20 74 6f 20 65 73 74 61 62 6c  e need to establ
0c60: 69 73 68 20 77 68 61 74 20 70 6c 61 74 66 6f 72  ish what platfor
0c70: 6d 0a 23 20 77 65 27 72 65 20 72 75 6e 6e 69 6e  m.# we're runnin
0c80: 67 20 6f 6e 20 62 65 66 6f 72 65 20 77 65 20 63  g on before we c
0c90: 61 6e 20 66 69 67 75 72 65 20 6f 75 74 20 73 6f  an figure out so
0ca0: 6d 65 20 70 61 74 68 73 2e 0a 23 20 54 68 69 73  me paths..# This
0cb0: 20 73 74 65 70 20 69 73 6e 27 74 20 6e 65 63 65   step isn't nece
0cc0: 73 73 61 72 79 20 69 66 20 77 65 27 72 65 20 75  ssary if we're u
0cd0: 73 69 6e 67 20 4f 70 65 6e 53 53 4c 2e 0a 23 2d  sing OpenSSL..#-
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: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0d10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0d20: 2d 2d 2d 0a 0a 0a 69 66 20 74 65 73 74 20 2d 7a  ---...if test -z
0d30: 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20 74   "${OPENSSL}"; t
0d40: 68 65 6e 0a 20 20 20 20 41 43 5f 4d 53 47 5f 43  hen.    AC_MSG_C
0d50: 48 45 43 4b 49 4e 47 28 68 6f 73 74 20 74 79 70  HECKING(host typ
0d60: 65 29 0a 20 20 20 20 63 61 73 65 20 22 60 75 6e  e).    case "`un
0d70: 61 6d 65 20 2d 73 60 22 20 69 6e 0a 09 2a 77 69  ame -s`" in..*wi
0d80: 6e 33 32 2a 20 7c 20 2a 57 49 4e 33 32 2a 20 7c  n32* | *WIN32* |
0d90: 20 2a 43 59 47 57 49 4e 5f 4e 54 2a 7c 2a 43 59   *CYGWIN_NT*|*CY
0da0: 47 57 49 4e 5f 39 38 2a 7c 2a 43 59 47 57 49 4e  GWIN_98*|*CYGWIN
0db0: 5f 39 35 2a 29 0a 09 20 20 20 20 50 4c 41 54 46  _95*)..    PLATF
0dc0: 4f 52 4d 3d 57 49 4e 33 32 0a 09 20 20 20 20 41  ORM=WIN32..    A
0dd0: 43 5f 44 45 46 49 4e 45 28 57 49 4e 44 4f 57 53  C_DEFINE(WINDOWS
0de0: 29 0a 09 20 20 20 20 3b 3b 0a 09 2a 53 75 6e 4f  )..    ;;..*SunO
0df0: 53 2a 29 0a 09 20 20 20 20 50 4c 41 54 46 4f 52  S*)..    PLATFOR
0e00: 4d 3d 53 4f 4c 41 52 49 53 0a 09 20 20 20 20 3b  M=SOLARIS..    ;
0e10: 3b 0a 09 48 50 2d 55 58 29 0a 09 20 20 20 20 50  ;..HP-UX)..    P
0e20: 4c 41 54 46 4f 52 4d 3d 48 50 55 58 0a 09 20 20  LATFORM=HPUX..  
0e30: 20 20 3b 3b 0a 09 2a 29 0a 09 20 20 20 20 50 4c    ;;..*)..    PL
0e40: 41 54 46 4f 52 4d 3d 4c 49 4e 55 58 0a 09 20 20  ATFORM=LINUX..  
0e50: 20 20 3b 3b 0a 20 20 20 20 65 73 61 63 0a 20 20    ;;.    esac.  
0e60: 20 20 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28    AC_MSG_RESULT(
0e70: 24 7b 50 4c 41 54 46 4f 52 4d 7d 29 0a 66 69 0a  ${PLATFORM}).fi.
0e80: 0a 41 43 5f 41 52 47 5f 57 49 54 48 28 73 73 6c  .AC_ARG_WITH(ssl
0e90: 2d 64 69 72 2c 20 5b 20 20 2d 2d 77 69 74 68 2d  -dir, [  --with-
0ea0: 73 73 6c 2d 64 69 72 3d 44 49 52 20 20 53 53 4c  ssl-dir=DIR  SSL
0eb0: 20 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 5d   root directory]
0ec0: 2c 20 53 53 4c 5f 44 49 52 3d 24 77 69 74 68 76  , SSL_DIR=$withv
0ed0: 61 6c 29 0a 0a 69 66 20 74 65 73 74 20 21 20 2d  al)..if test ! -
0ee0: 64 20 22 24 7b 53 53 4c 5f 44 49 52 7d 22 3b 20  d "${SSL_DIR}"; 
0ef0: 74 68 65 6e 0a 20 20 20 20 41 43 5f 45 52 52 4f  then.    AC_ERRO
0f00: 52 28 24 7b 53 53 4c 5f 44 49 52 7d 20 69 73 20  R(${SSL_DIR} is 
0f10: 6e 6f 74 20 61 20 76 61 6c 69 64 20 64 69 72 65  not a valid dire
0f20: 63 74 6f 72 79 29 0a 66 69 0a 0a 23 2d 2d 2d 2d  ctory).fi..#----
0f30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0f70: 0a 23 20 54 68 65 20 4f 70 65 6e 53 53 4c 20 61  .# The OpenSSL a
0f80: 6e 64 20 42 53 41 46 45 20 53 53 4c 2d 43 20 64  nd BSAFE SSL-C d
0f90: 69 72 65 63 74 6f 72 79 20 73 74 72 75 63 74 75  irectory structu
0fa0: 72 65 73 20 64 69 66 66 65 72 2e 0a 23 2d 2d 2d  res differ..#---
0fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0fe0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0ff0: 2d 0a 0a 69 66 20 74 65 73 74 20 2d 6e 20 22 24  -..if test -n "$
1000: 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20 74 68 65 6e  {OPENSSL}"; then
1010: 0a 20 20 20 20 53 53 4c 5f 4c 49 42 5f 44 49 52  .    SSL_LIB_DIR
1020: 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 6c 69 62 0a  =${SSL_DIR}/lib.
1030: 20 20 20 20 53 53 4c 5f 49 4e 43 4c 55 44 45 5f      SSL_INCLUDE_
1040: 44 49 52 3d 24 7b 53 53 4c 5f 44 49 52 7d 2f 69  DIR=${SSL_DIR}/i
1050: 6e 63 6c 75 64 65 0a 20 20 20 20 69 66 20 74 65  nclude.    if te
1060: 73 74 20 21 20 2d 66 20 22 24 7b 53 53 4c 5f 49  st ! -f "${SSL_I
1070: 4e 43 4c 55 44 45 5f 44 49 52 7d 2f 6f 70 65 6e  NCLUDE_DIR}/open
1080: 73 73 6c 2f 6f 70 65 6e 73 73 6c 76 2e 68 22 3b  ssl/opensslv.h";
1090: 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 41 43   then.        AC
10a0: 5f 45 52 52 4f 52 28 62 61 64 20 73 73 6c 2d 64  _ERROR(bad ssl-d
10b0: 69 72 3a 20 63 61 6e 6e 6f 74 20 66 69 6e 64 20  ir: cannot find 
10c0: 6f 70 65 6e 73 73 6c 2f 6f 70 65 6e 73 73 6c 76  openssl/opensslv
10d0: 2e 68 20 75 6e 64 65 72 20 24 7b 53 53 4c 5f 49  .h under ${SSL_I
10e0: 4e 43 4c 55 44 45 5f 44 49 52 7d 29 0a 20 20 20  NCLUDE_DIR}).   
10f0: 20 66 69 0a 65 6c 73 65 0a 20 20 20 20 53 53 4c   fi.else.    SSL
1100: 5f 4c 49 42 5f 44 49 52 3d 24 7b 53 53 4c 5f 44  _LIB_DIR=${SSL_D
1110: 49 52 7d 2f 24 7b 50 4c 41 54 46 4f 52 4d 7d 2f  IR}/${PLATFORM}/
1120: 6c 69 62 72 61 72 79 2f 6c 69 62 0a 20 20 20 20  library/lib.    
1130: 53 53 4c 5f 49 4e 43 4c 55 44 45 5f 44 49 52 3d  SSL_INCLUDE_DIR=
1140: 24 7b 53 53 4c 5f 44 49 52 7d 2f 24 7b 50 4c 41  ${SSL_DIR}/${PLA
1150: 54 46 4f 52 4d 7d 2f 6c 69 62 72 61 72 79 2f 69  TFORM}/library/i
1160: 6e 63 6c 75 64 65 0a 20 20 20 20 69 66 20 74 65  nclude.    if te
1170: 73 74 20 21 20 2d 66 20 22 24 7b 53 53 4c 5f 49  st ! -f "${SSL_I
1180: 4e 43 4c 55 44 45 5f 44 49 52 7d 2f 63 72 79 70  NCLUDE_DIR}/cryp
1190: 74 6f 2e 68 22 3b 20 74 68 65 6e 0a 20 20 20 20  to.h"; then.    
11a0: 20 20 20 20 41 43 5f 45 52 52 4f 52 28 62 61 64      AC_ERROR(bad
11b0: 20 73 73 6c 2d 64 69 72 3a 20 63 61 6e 6e 6f 74   ssl-dir: cannot
11c0: 20 66 69 6e 64 20 63 72 79 70 74 6f 2e 68 20 75   find crypto.h u
11d0: 6e 64 65 72 20 24 7b 53 53 4c 5f 49 4e 43 4c 55  nder ${SSL_INCLU
11e0: 44 45 5f 44 49 52 7d 29 0a 20 20 20 20 66 69 0a  DE_DIR}).    fi.
11f0: 66 69 0a 0a 41 43 5f 53 55 42 53 54 28 53 53 4c  fi..AC_SUBST(SSL
1200: 5f 44 49 52 29 0a 41 43 5f 53 55 42 53 54 28 53  _DIR).AC_SUBST(S
1210: 53 4c 5f 4c 49 42 5f 44 49 52 29 0a 41 43 5f 53  SL_LIB_DIR).AC_S
1220: 55 42 53 54 28 53 53 4c 5f 49 4e 43 4c 55 44 45  UBST(SSL_INCLUDE
1230: 5f 44 49 52 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  _DIR)..#--------
1240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 23 20 44  ------------.# D
1280: 65 74 65 72 6d 69 6e 65 20 69 66 20 77 65 20 73  etermine if we s
1290: 68 6f 75 6c 64 20 75 73 65 20 74 68 65 20 70 61  hould use the pa
12a0: 74 65 6e 74 65 64 20 65 6e 63 72 79 70 74 69 6f  tented encryptio
12b0: 6e 20 63 6f 64 65 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  n code.#--------
12c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
12f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43  ------------..AC
1300: 5f 41 52 47 5f 45 4e 41 42 4c 45 28 70 61 74 65  _ARG_ENABLE(pate
1310: 6e 74 73 2c 20 5b 20 20 65 6e 61 62 6c 65 20 6f  nts, [  enable o
1320: 72 20 64 69 73 61 62 6c 65 20 70 61 74 65 6e 74  r disable patent
1330: 65 64 20 63 6f 64 65 2e 20 20 44 65 66 61 75 6c  ed code.  Defaul
1340: 74 20 69 73 20 70 61 74 65 6e 74 65 64 20 63 6f  t is patented co
1350: 64 65 20 65 6e 61 62 6c 65 64 2e 5d 2c 20 50 41  de enabled.], PA
1360: 54 45 4e 54 53 3d 24 7b 65 6e 61 62 6c 65 76 61  TENTS=${enableva
1370: 6c 7d 2c 20 50 41 54 45 4e 54 53 3d 79 65 73 29  l}, PATENTS=yes)
1380: 20 20 0a 0a 69 66 20 74 65 73 74 20 24 7b 50 41    ..if test ${PA
1390: 54 45 4e 54 53 7d 20 3d 20 6e 6f 3b 20 74 68 65  TENTS} = no; the
13a0: 6e 0a 20 20 20 20 41 43 5f 44 45 46 49 4e 45 28  n.    AC_DEFINE(
13b0: 22 4e 4f 5f 50 41 54 45 4e 54 53 22 29 0a 66 69  "NO_PATENTS").fi
13c0: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
13d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1400: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43 68 65 63 6b 20  -------.# Check 
1410: 77 68 65 74 68 65 72 20 2d 2d 65 6e 61 62 6c 65  whether --enable
1420: 2d 67 63 63 20 6f 72 20 2d 2d 64 69 73 61 62 6c  -gcc or --disabl
1430: 65 2d 67 63 63 20 77 61 73 20 67 69 76 65 6e 2e  e-gcc was given.
1440: 20 20 44 6f 20 74 68 69 73 20 0a 23 20 62 65 66    Do this .# bef
1450: 6f 72 65 20 41 43 5f 43 59 47 57 49 4e 20 69 73  ore AC_CYGWIN is
1460: 20 63 61 6c 6c 65 64 20 73 6f 20 74 68 65 20 63   called so the c
1470: 6f 6d 70 69 6c 65 72 20 63 61 6e 20 62 65 20 66  ompiler can be f
1480: 75 6c 6c 79 20 74 65 73 74 65 64 20 62 79 0a 23  ully tested by.#
1490: 20 62 75 69 6c 74 2d 69 6e 20 61 75 74 6f 63 6f   built-in autoco
14a0: 6e 66 20 74 6f 6f 6c 73 2e 20 20 54 68 69 73 20  nf tools.  This 
14b0: 6d 61 63 72 6f 20 61 6c 73 6f 20 63 61 6c 6c 73  macro also calls
14c0: 20 41 43 5f 50 52 4f 47 5f 43 43 20 74 6f 20 73   AC_PROG_CC to s
14d0: 65 74 0a 23 20 74 68 65 20 63 6f 6d 70 69 6c 65  et.# the compile
14e0: 72 20 69 66 20 2d 2d 65 6e 61 62 6c 65 2d 67 63  r if --enable-gc
14f0: 63 20 77 61 73 20 6e 6f 74 20 75 73 65 64 2e 0a  c was not used..
1500: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
1510: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1520: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1530: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1540: 2d 2d 2d 2d 2d 0a 0a 53 43 5f 45 4e 41 42 4c 45  -----..SC_ENABLE
1550: 5f 47 43 43 0a 41 43 5f 50 52 4f 47 5f 49 4e 53  _GCC.AC_PROG_INS
1560: 54 41 4c 4c 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  TALL..#---------
1570: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1580: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1590: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
15a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 49 66  -----------.# If
15b0: 20 4f 70 65 6e 53 53 4c 20 77 61 73 20 62 75 69   OpenSSL was bui
15c0: 6c 74 20 77 69 74 68 20 67 63 63 20 74 68 65 6e  lt with gcc then
15d0: 20 74 68 65 72 65 20 6d 61 79 20 62 65 20 73 6f   there may be so
15e0: 6d 65 20 73 79 6d 62 6f 6c 73 20 74 68 61 74 20  me symbols that 
15f0: 6e 65 65 64 0a 23 20 72 65 73 6f 6c 76 69 6e 67  need.# resolving
1600: 20 62 65 66 6f 72 65 20 77 65 20 63 61 6e 20 6c   before we can l
1610: 6f 61 64 20 69 74 20 69 6e 74 6f 20 74 63 6c 73  oad it into tcls
1620: 68 20 28 5f 5f 75 64 69 76 64 33 69 20 6f 6e 20  h (__udivd3i on 
1630: 73 6f 6c 61 72 69 73 2e 20 20 4c 65 74 20 74 68  solaris.  Let th
1640: 65 0a 23 20 75 73 65 72 20 73 70 65 63 69 66 79  e.# user specify
1650: 20 69 66 20 77 65 20 6e 65 65 64 20 74 6f 20 61   if we need to a
1660: 64 64 20 6c 69 62 67 63 63 20 74 6f 20 74 68 65  dd libgcc to the
1670: 20 6c 69 6e 6b 20 6c 69 6e 65 20 74 6f 20 72 65   link line to re
1680: 73 6f 6c 76 65 20 74 68 65 73 65 0a 23 20 73 79  solve these.# sy
1690: 6d 62 6f 6c 73 2e 0a 23 0a 23 20 54 68 69 73 20  mbols..#.# This 
16a0: 64 6f 65 73 6e 27 74 20 73 65 65 6d 20 74 6f 20  doesn't seem to 
16b0: 62 65 20 6e 65 63 65 73 73 61 72 79 20 69 66 20  be necessary if 
16c0: 74 68 65 20 52 53 41 20 42 53 41 46 45 20 53 53  the RSA BSAFE SS
16d0: 4c 2d 43 20 6c 69 62 72 61 72 69 65 73 0a 23 20  L-C libraries.# 
16e0: 61 72 65 20 75 73 65 64 20 69 6e 73 74 65 61 64  are used instead
16f0: 20 6f 66 20 4f 70 65 6e 53 53 4c 2e 0a 23 2d 2d   of OpenSSL..#--
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 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1730: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1740: 2d 2d 0a 0a 69 66 20 74 65 73 74 20 2d 6e 20 22  --..if test -n "
1750: 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20 74 68 65  ${OPENSSL}"; the
1760: 6e 0a 0a 20 20 20 20 41 43 5f 4d 53 47 5f 43 48  n..    AC_MSG_CH
1770: 45 43 4b 49 4e 47 28 69 66 20 6c 69 62 67 63 63  ECKING(if libgcc
1780: 20 69 73 20 6e 65 65 64 65 64 20 74 6f 20 72 65   is needed to re
1790: 73 6f 6c 76 65 20 6f 70 65 6e 73 73 6c 20 73 79  solve openssl sy
17a0: 6d 62 6f 6c 73 29 0a 0a 20 20 20 20 41 43 5f 41  mbols)..    AC_A
17b0: 52 47 5f 57 49 54 48 28 67 63 63 6c 69 62 2c 20  RG_WITH(gcclib, 
17c0: 5b 20 20 2d 2d 77 69 74 68 2d 67 63 63 6c 69 62  [  --with-gcclib
17d0: 20 20 20 20 20 20 20 20 20 6c 69 6e 6b 20 77 69           link wi
17e0: 74 68 20 6c 69 62 67 63 63 20 74 6f 20 72 65 73  th libgcc to res
17f0: 6f 6c 76 65 20 73 79 6d 62 6f 6c 73 20 69 6e 20  olve symbols in 
1800: 61 20 67 63 63 2d 62 75 69 6c 74 20 6f 70 65 6e  a gcc-built open
1810: 73 73 6c 20 6c 69 62 72 61 72 79 5d 2c 20 47 43  ssl library], GC
1820: 43 4c 49 42 3d 22 2d 6c 67 63 63 22 2c 20 47 43  CLIB="-lgcc", GC
1830: 43 4c 49 42 3d 22 22 29 0a 0a 20 20 20 20 69 66  CLIB="")..    if
1840: 20 74 65 73 74 20 22 78 24 7b 47 43 43 4c 49 42   test "x${GCCLIB
1850: 7d 22 20 3d 20 22 78 22 20 3b 20 74 68 65 6e 0a  }" = "x" ; then.
1860: 20 20 20 20 20 20 20 20 41 43 5f 4d 53 47 5f 52          AC_MSG_R
1870: 45 53 55 4c 54 28 6e 6f 29 0a 20 20 20 20 65 6c  ESULT(no).    el
1880: 73 65 0a 20 20 20 20 20 20 20 20 41 43 5f 4d 53  se.        AC_MS
1890: 47 5f 52 45 53 55 4c 54 28 79 65 73 29 0a 20 20  G_RESULT(yes).  
18a0: 20 20 20 20 20 20 41 43 5f 4d 53 47 5f 43 48 45        AC_MSG_CHE
18b0: 43 4b 49 4e 47 28 66 6f 72 20 67 63 63 20 6c 69  CKING(for gcc li
18c0: 62 72 61 72 79 20 6c 6f 63 61 74 69 6f 6e 29 0a  brary location).
18d0: 20 20 20 20 20 20 20 20 47 43 43 50 41 54 48 3d          GCCPATH=
18e0: 60 24 7b 43 43 7d 20 2d 70 72 69 6e 74 2d 6c 69  `${CC} -print-li
18f0: 62 67 63 63 2d 66 69 6c 65 2d 6e 61 6d 65 20 7c  bgcc-file-name |
1900: 20 73 65 64 20 2d 65 20 27 73 23 5b 5e 2f 5d 2a   sed -e 's#[^/]*
1910: 24 23 23 27 60 0a 20 20 20 20 20 20 20 20 47 43  $##'`.        GC
1920: 43 50 41 54 48 3d 22 2d 4c 24 7b 47 43 43 50 41  CPATH="-L${GCCPA
1930: 54 48 7d 22 0a 20 20 20 20 20 20 20 20 41 43 5f  TH}".        AC_
1940: 4d 53 47 5f 52 45 53 55 4c 54 28 24 7b 47 43 43  MSG_RESULT(${GCC
1950: 50 41 54 48 7d 29 0a 20 20 20 20 66 69 0a 66 69  PATH}).    fi.fi
1960: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
1970: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1980: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1990: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
19a0: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 43 68 65 63 6b 73  -------.# Checks
19b0: 20 74 6f 20 73 65 65 20 69 66 20 74 68 65 20 6d   to see if the m
19c0: 61 6b 65 20 70 72 6f 67 72 61 6d 20 73 65 74 73  ake program sets
19d0: 20 74 68 65 20 24 4d 41 4b 45 20 76 61 72 69 61   the $MAKE varia
19e0: 62 6c 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ble..#----------
19f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 0a 41 43 5f 50  ----------..AC_P
1a30: 52 4f 47 5f 4d 41 4b 45 5f 53 45 54 0a 0a 23 2d  ROG_MAKE_SET..#-
1a40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a80: 2d 2d 2d 0a 23 20 46 69 6e 64 20 72 61 6e 6c 69  ---.# Find ranli
1a90: 62 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  b.#-------------
1aa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ab0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 0a 41 43 5f 50 52 4f 47  -------..AC_PROG
1ae0: 5f 52 41 4e 4c 49 42 0a 0a 23 2d 2d 2d 2d 2d 2d  _RANLIB..#------
1af0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 23  --------------.#
1b30: 20 54 68 69 73 20 6d 61 63 72 6f 20 70 65 72 66   This macro perf
1b40: 6f 72 6d 73 20 61 64 64 69 74 69 6f 6e 61 6c 20  orms additional 
1b50: 63 6f 6d 70 69 6c 65 72 20 74 65 73 74 73 2e 0a  compiler tests..
1b60: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
1b70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba0: 2d 2d 2d 2d 2d 0a 0a 41 43 5f 43 59 47 57 49 4e  -----..AC_CYGWIN
1bb0: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
1bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1bf0: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 44 65 74 65 72 6d  -------.# Determ
1c00: 69 6e 65 73 20 74 68 65 20 63 6f 72 72 65 63 74  ines the correct
1c10: 20 62 69 6e 61 72 79 20 66 69 6c 65 20 65 78 74   binary file ext
1c20: 65 6e 73 69 6f 6e 20 28 2e 6f 2c 20 2e 6f 62 6a  ension (.o, .obj
1c30: 2c 20 2e 65 78 65 20 65 74 63 2e 29 0a 23 2d 2d  , .exe etc.).#--
1c40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1c80: 2d 2d 0a 0a 41 43 5f 4f 42 4a 45 58 54 0a 41 43  --..AC_OBJEXT.AC
1c90: 5f 45 58 45 45 58 54 0a 0a 23 2d 2d 2d 2d 2d 2d  _EXEEXT..#------
1ca0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23  --------------.#
1ce0: 20 22 63 79 67 70 61 74 68 22 20 69 73 20 75 73   "cygpath" is us
1cf0: 65 64 20 6f 6e 20 77 69 6e 64 6f 77 73 20 74 6f  ed on windows to
1d00: 20 67 65 6e 65 72 61 74 65 20 6e 61 74 69 76 65   generate native
1d10: 20 70 61 74 68 20 6e 61 6d 65 73 20 66 6f 72 0a   path names for.
1d20: 23 20 69 6e 63 6c 75 64 65 20 66 69 6c 65 73 2e  # include files.
1d30: 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65    These variable
1d40: 73 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 62 65  s should only be
1d50: 20 75 73 65 64 20 77 69 74 68 20 74 68 65 0a 23   used with the.#
1d60: 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6c 69   compiler and li
1d70: 6e 6b 65 72 20 73 69 6e 63 65 20 23 20 74 68 65  nker since # the
1d80: 79 20 67 65 6e 65 72 61 74 65 20 6e 61 74 69 76  y generate nativ
1d90: 65 20 70 61 74 68 20 6e 61 6d 65 73 2e 0a 23 0a  e path names..#.
1da0: 23 20 55 6e 69 78 20 74 63 6c 43 6f 6e 66 69 67  # Unix tclConfig
1db0: 2e 73 68 20 70 6f 69 6e 74 73 20 53 52 43 5f 44  .sh points SRC_D
1dc0: 49 52 20 61 74 20 74 68 65 20 74 6f 70 2d 6c 65  IR at the top-le
1dd0: 76 65 6c 20 64 69 72 65 63 74 6f 72 79 20 6f 66  vel directory of
1de0: 0a 23 20 74 68 65 20 54 63 6c 20 73 6f 75 72 63  .# the Tcl sourc
1df0: 65 73 2c 20 77 68 69 6c 65 20 74 68 65 20 57 69  es, while the Wi
1e00: 6e 64 6f 77 73 20 74 63 6c 43 6f 6e 66 69 67 2e  ndows tclConfig.
1e10: 73 68 20 70 6f 69 6e 74 73 20 53 52 43 5f 44 49  sh points SRC_DI
1e20: 52 20 61 74 0a 23 20 74 68 65 20 77 69 6e 20 73  R at.# the win s
1e30: 75 62 64 69 72 65 63 74 6f 72 79 2e 20 20 48 65  ubdirectory.  He
1e40: 6e 63 65 20 74 68 65 20 64 69 66 66 65 72 65 6e  nce the differen
1e50: 74 20 75 73 61 67 65 73 20 6f 66 20 53 52 43 5f  t usages of SRC_
1e60: 44 49 52 20 62 65 6c 6f 77 2e 0a 23 0a 23 20 54  DIR below..#.# T
1e70: 68 69 73 20 6d 75 73 74 20 62 65 20 64 6f 6e 65  his must be done
1e80: 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20   before calling 
1e90: 53 43 5f 50 55 42 4c 49 43 5f 54 43 4c 5f 48 45  SC_PUBLIC_TCL_HE
1ea0: 41 44 45 52 53 20 6f 72 0a 23 20 53 43 5f 50 52  ADERS or.# SC_PR
1eb0: 49 56 41 54 45 5f 54 43 4c 5f 48 45 41 44 45 52  IVATE_TCL_HEADER
1ec0: 53 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  S..#------------
1ed0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ee0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ef0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1f00: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 63 61 73 65 20 22  --------..case "
1f10: 60 75 6e 61 6d 65 20 2d 73 60 22 20 69 6e 0a 20  `uname -s`" in. 
1f20: 20 20 20 2a 77 69 6e 33 32 2a 20 7c 20 2a 57 49     *win32* | *WI
1f30: 4e 33 32 2a 20 7c 20 2a 43 59 47 57 49 4e 5f 4e  N32* | *CYGWIN_N
1f40: 54 2a 7c 2a 43 59 47 57 49 4e 5f 39 38 2a 7c 2a  T*|*CYGWIN_98*|*
1f50: 43 59 47 57 49 4e 5f 39 35 2a 29 0a 09 43 59 47  CYGWIN_95*)..CYG
1f60: 50 41 54 48 3d 22 63 79 67 70 61 74 68 20 2d 77  PATH="cygpath -w
1f70: 22 0a 09 52 45 4c 50 41 54 48 3d 22 2e 2e 20 2e  "..RELPATH=".. .
1f80: 2e 20 62 69 6e 22 0a 20 20 20 20 3b 3b 0a 20 20  . bin".    ;;.  
1f90: 20 20 2a 29 0a 09 43 59 47 50 41 54 48 3d 65 63    *)..CYGPATH=ec
1fa0: 68 6f 0a 09 52 45 4c 50 41 54 48 3d 22 2e 2e 22  ho..RELPATH=".."
1fb0: 0a 20 20 20 20 3b 3b 0a 65 73 61 63 0a 0a 41 43  .    ;;.esac..AC
1fc0: 5f 53 55 42 53 54 28 43 59 47 50 41 54 48 29 0a  _SUBST(CYGPATH).
1fd0: 41 43 5f 53 55 42 53 54 28 52 45 4c 50 41 54 48  AC_SUBST(RELPATH
1fe0: 29 0a 0a 53 53 4c 5f 49 4e 43 4c 55 44 45 5f 44  )..SSL_INCLUDE_D
1ff0: 49 52 5f 4e 41 54 49 56 45 3d 5c 22 60 24 7b 43  IR_NATIVE=\"`${C
2000: 59 47 50 41 54 48 7d 20 24 7b 53 53 4c 5f 49 4e  YGPATH} ${SSL_IN
2010: 43 4c 55 44 45 5f 44 49 52 7d 60 5c 22 0a 41 43  CLUDE_DIR}`\".AC
2020: 5f 53 55 42 53 54 28 53 53 4c 5f 49 4e 43 4c 55  _SUBST(SSL_INCLU
2030: 44 45 5f 44 49 52 5f 4e 41 54 49 56 45 29 0a 0a  DE_DIR_NATIVE)..
2040: 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .#--------------
2050: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2060: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2070: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2080: 2d 2d 2d 2d 2d 2d 0a 23 20 4c 6f 61 64 20 74 68  ------.# Load th
2090: 65 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 66  e tclConfig.sh f
20a0: 69 6c 65 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ile.#-----------
20b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
20c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
20d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
20e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 53 43 5f 50 41  ---------..SC_PA
20f0: 54 48 5f 54 43 4c 43 4f 4e 46 49 47 0a 53 43 5f  TH_TCLCONFIG.SC_
2100: 4c 4f 41 44 5f 54 43 4c 43 4f 4e 46 49 47 0a 0a  LOAD_TCLCONFIG..
2110: 53 43 5f 50 52 49 56 41 54 45 5f 54 43 4c 5f 48  SC_PRIVATE_TCL_H
2120: 45 41 44 45 52 53 0a 0a 23 2d 2d 2d 2d 2d 2d 2d  EADERS..#-------
2130: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2140: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2150: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2160: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20  -------------.# 
2170: 41 20 66 65 77 20 6d 69 73 63 65 6c 6c 61 6e 65  A few miscellane
2180: 6f 75 73 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65  ous platform-spe
2190: 63 69 66 69 63 20 69 74 65 6d 73 3a 0a 23 0a 23  cific items:.#.#
21a0: 20 44 65 66 69 6e 65 20 61 20 73 70 65 63 69 61   Define a specia
21b0: 6c 20 73 79 6d 62 6f 6c 20 66 6f 72 20 57 69 6e  l symbol for Win
21c0: 64 6f 77 73 20 28 42 55 49 4c 44 5f 74 6c 73 20  dows (BUILD_tls 
21d0: 69 6e 20 74 68 69 73 20 63 61 73 65 29 20 73 6f  in this case) so
21e0: 0a 23 20 74 68 61 74 20 77 65 20 63 72 65 61 74  .# that we creat
21f0: 65 20 74 68 65 20 65 78 70 6f 72 74 20 6c 69 62  e the export lib
2200: 72 61 72 79 20 77 69 74 68 20 74 68 65 20 64 6c  rary with the dl
2210: 6c 2e 0a 23 0a 23 20 43 6c 65 61 6e 20 75 70 20  l..#.# Clean up 
2220: 61 6e 79 20 65 78 74 72 61 20 66 69 6c 65 73 20  any extra files 
2230: 74 68 61 74 20 57 69 6e 64 6f 77 73 20 63 72 65  that Windows cre
2240: 61 74 65 73 2e 0a 23 0a 23 20 44 65 66 69 6e 65  ates..#.# Define
2250: 20 61 6e 79 20 65 78 74 72 61 20 63 6f 6d 70 69   any extra compi
2260: 6c 65 72 20 66 6c 61 67 73 20 69 6e 20 74 68 65  ler flags in the
2270: 20 50 41 43 4b 41 47 45 5f 43 46 4c 41 47 53 20   PACKAGE_CFLAGS 
2280: 76 61 72 69 61 62 6c 65 2e 0a 23 20 54 68 65 73  variable..# Thes
2290: 65 20 77 69 6c 6c 20 62 65 20 61 70 70 65 6e 64  e will be append
22a0: 65 64 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e  ed to the curren
22b0: 74 20 73 65 74 20 6f 66 20 63 6f 6d 70 69 6c 65  t set of compile
22c0: 72 20 66 6c 61 67 73 20 66 6f 72 0a 23 20 79 6f  r flags for.# yo
22d0: 75 72 20 73 79 73 74 65 6d 2e 0a 23 2d 2d 2d 2d  ur system..#----
22e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2300: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2310: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2320: 0a 0a 63 61 73 65 20 22 60 75 6e 61 6d 65 20 2d  ..case "`uname -
2330: 73 60 22 20 69 6e 0a 20 20 20 20 2a 77 69 6e 33  s`" in.    *win3
2340: 32 2a 20 7c 20 2a 57 49 4e 33 32 2a 20 7c 20 2a  2* | *WIN32* | *
2350: 43 59 47 57 49 4e 5f 4e 54 2a 7c 2a 43 59 47 57  CYGWIN_NT*|*CYGW
2360: 49 4e 5f 39 38 2a 7c 2a 43 59 47 57 49 4e 5f 39  IN_98*|*CYGWIN_9
2370: 35 2a 29 0a 09 41 43 5f 44 45 46 49 4e 45 5f 55  5*)..AC_DEFINE_U
2380: 4e 51 55 4f 54 45 44 28 42 55 49 4c 44 5f 24 7b  NQUOTED(BUILD_${
2390: 50 41 43 4b 41 47 45 7d 29 0a 09 43 4c 45 41 4e  PACKAGE})..CLEAN
23a0: 46 49 4c 45 53 3d 22 2a 2e 6c 69 62 20 2a 2e 64  FILES="*.lib *.d
23b0: 6c 6c 20 2a 2e 65 78 70 20 2a 2e 69 6c 6b 20 2a  ll *.exp *.ilk *
23c0: 2e 70 64 62 20 76 63 35 30 2e 70 63 68 22 0a 09  .pdb vc50.pch"..
23d0: 41 43 5f 53 55 42 53 54 28 43 4c 45 41 4e 46 49  AC_SUBST(CLEANFI
23e0: 4c 45 53 29 0a 20 20 20 20 3b 3b 0a 20 20 20 20  LES).    ;;.    
23f0: 2a 29 0a 09 43 4c 45 41 4e 46 49 4c 45 53 3d 0a  *)..CLEANFILES=.
2400: 20 20 20 20 3b 3b 0a 65 73 61 63 0a 0a 23 2d 2d      ;;.esac..#--
2410: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 23 20 43 68 65 63 6b 20 77 68 65 74 68  --.# Check wheth
2460: 65 72 20 2d 2d 65 6e 61 62 6c 65 2d 74 68 72 65  er --enable-thre
2470: 61 64 73 20 6f 72 20 2d 2d 64 69 73 61 62 6c 65  ads or --disable
2480: 2d 74 68 72 65 61 64 73 20 77 61 73 20 67 69 76  -threads was giv
2490: 65 6e 2e 0a 23 20 53 6f 20 66 61 72 20 6f 6e 6c  en..# So far onl
24a0: 79 20 54 63 6c 20 72 65 73 70 6f 6e 64 73 20 74  y Tcl responds t
24b0: 6f 20 74 68 69 73 20 6f 6e 65 2e 0a 23 2d 2d 2d  o this one..#---
24c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2500: 2d 0a 0a 53 43 5f 45 4e 41 42 4c 45 5f 54 48 52  -..SC_ENABLE_THR
2510: 45 41 44 53 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  EADS..#---------
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 2d  ----------------
2550: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68  -----------.# Th
2560: 65 20 73 74 61 74 65 6d 65 6e 74 20 62 65 6c 6f  e statement belo
2570: 77 20 64 65 66 69 6e 65 73 20 61 20 63 6f 6c 6c  w defines a coll
2580: 65 63 74 69 6f 6e 20 6f 66 20 73 79 6d 62 6f 6c  ection of symbol
2590: 73 20 72 65 6c 61 74 65 64 20 74 6f 0a 23 20 62  s related to.# b
25a0: 75 69 6c 64 69 6e 67 20 61 73 20 61 20 73 68 61  uilding as a sha
25b0: 72 65 64 20 6c 69 62 72 61 72 79 20 69 6e 73 74  red library inst
25c0: 65 61 64 20 6f 66 20 61 20 73 74 61 74 69 63 20  ead of a static 
25d0: 6c 69 62 72 61 72 79 2e 0a 23 2d 2d 2d 2d 2d 2d  library..#------
25e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
25f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2610: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
2620: 53 43 5f 45 4e 41 42 4c 45 5f 53 48 41 52 45 44  SC_ENABLE_SHARED
2630: 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..#-------------
2640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2650: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2670: 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 69 73 20 6d  -------.# This m
2680: 61 63 72 6f 20 66 69 67 75 72 65 73 20 6f 75 74  acro figures out
2690: 20 77 68 61 74 20 66 6c 61 67 73 20 74 6f 20 75   what flags to u
26a0: 73 65 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70  se with the comp
26b0: 69 6c 65 72 2f 6c 69 6e 6b 65 72 0a 23 20 77 68  iler/linker.# wh
26c0: 65 6e 20 62 75 69 6c 64 69 6e 67 20 73 68 61 72  en building shar
26d0: 65 64 2f 73 74 61 74 69 63 20 64 65 62 75 67 2f  ed/static debug/
26e0: 6f 70 74 69 6d 69 7a 65 64 20 6f 62 6a 65 63 74  optimized object
26f0: 73 2e 20 20 54 68 69 73 20 69 6e 66 6f 72 6d 61  s.  This informa
2700: 74 69 6f 6e 0a 23 20 69 73 20 61 6c 6c 20 74 61  tion.# is all ta
2710: 6b 65 6e 20 66 72 6f 6d 20 74 68 65 20 74 63 6c  ken from the tcl
2720: 43 6f 6e 66 69 67 2e 73 68 20 66 69 6c 65 2e 0a  Config.sh file..
2730: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
2740: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2750: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2760: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2770: 2d 2d 2d 2d 2d 0a 0a 43 46 4c 41 47 53 5f 44 45  -----..CFLAGS_DE
2780: 42 55 47 3d 24 7b 54 43 4c 5f 43 46 4c 41 47 53  BUG=${TCL_CFLAGS
2790: 5f 44 45 42 55 47 7d 0a 43 46 4c 41 47 53 5f 4f  _DEBUG}.CFLAGS_O
27a0: 50 54 49 4d 49 5a 45 3d 24 7b 54 43 4c 5f 43 46  PTIMIZE=${TCL_CF
27b0: 4c 41 47 53 5f 4f 50 54 49 4d 49 5a 45 7d 0a 4c  LAGS_OPTIMIZE}.L
27c0: 44 46 4c 41 47 53 5f 44 45 42 55 47 3d 24 7b 54  DFLAGS_DEBUG=${T
27d0: 43 4c 5f 4c 44 46 4c 41 47 53 5f 44 45 42 55 47  CL_LDFLAGS_DEBUG
27e0: 7d 0a 4c 44 46 4c 41 47 53 5f 4f 50 54 49 4d 49  }.LDFLAGS_OPTIMI
27f0: 5a 45 3d 24 7b 54 43 4c 5f 4c 44 46 4c 41 47 53  ZE=${TCL_LDFLAGS
2800: 5f 4f 50 54 49 4d 49 5a 45 7d 0a 53 48 4c 49 42  _OPTIMIZE}.SHLIB
2810: 5f 4c 44 3d 24 7b 54 43 4c 5f 53 48 4c 49 42 5f  _LD=${TCL_SHLIB_
2820: 4c 44 7d 0a 53 54 4c 49 42 5f 4c 44 3d 24 7b 54  LD}.STLIB_LD=${T
2830: 43 4c 5f 53 54 4c 49 42 5f 4c 44 7d 0a 53 48 4c  CL_STLIB_LD}.SHL
2840: 49 42 5f 43 46 4c 41 47 53 3d 24 7b 54 43 4c 5f  IB_CFLAGS=${TCL_
2850: 53 48 4c 49 42 5f 43 46 4c 41 47 53 7d 0a 0a 41  SHLIB_CFLAGS}..A
2860: 43 5f 53 55 42 53 54 28 43 46 4c 41 47 53 5f 44  C_SUBST(CFLAGS_D
2870: 45 42 55 47 29 0a 41 43 5f 53 55 42 53 54 28 43  EBUG).AC_SUBST(C
2880: 46 4c 41 47 53 5f 4f 50 54 49 4d 49 5a 45 29 0a  FLAGS_OPTIMIZE).
2890: 41 43 5f 53 55 42 53 54 28 53 54 4c 49 42 5f 4c  AC_SUBST(STLIB_L
28a0: 44 29 0a 41 43 5f 53 55 42 53 54 28 53 48 4c 49  D).AC_SUBST(SHLI
28b0: 42 5f 4c 44 29 0a 41 43 5f 53 55 42 53 54 28 53  B_LD).AC_SUBST(S
28c0: 48 4c 49 42 5f 43 46 4c 41 47 53 29 0a 41 43 5f  HLIB_CFLAGS).AC_
28d0: 53 55 42 53 54 28 53 48 4c 49 42 5f 4c 44 46 4c  SUBST(SHLIB_LDFL
28e0: 41 47 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  AGS)..#---------
28f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2910: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2920: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 53 65  -----------.# Se
2930: 74 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6f  t the default co
2940: 6d 70 69 6c 65 72 20 73 77 69 74 63 68 65 73 20  mpiler switches 
2950: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 2d 2d 65  based on the --e
2960: 6e 61 62 6c 65 2d 73 79 6d 62 6f 6c 73 20 0a 23  nable-symbols .#
2970: 20 6f 70 74 69 6f 6e 2e 0a 23 2d 2d 2d 2d 2d 2d   option..#------
2980: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2990: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
29a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
29b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
29c0: 53 43 5f 45 4e 41 42 4c 45 5f 53 59 4d 42 4f 4c  SC_ENABLE_SYMBOL
29d0: 53 0a 0a 69 66 20 74 65 73 74 20 22 24 7b 53 48  S..if test "${SH
29e0: 41 52 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20 22  ARED_BUILD}" = "
29f0: 31 22 20 3b 20 74 68 65 6e 0a 20 20 20 20 43 46  1" ; then.    CF
2a00: 4c 41 47 53 3d 27 24 7b 43 46 4c 41 47 53 5f 44  LAGS='${CFLAGS_D
2a10: 45 46 41 55 4c 54 7d 20 24 7b 43 46 4c 41 47 53  EFAULT} ${CFLAGS
2a20: 5f 57 41 52 4e 49 4e 47 7d 20 24 7b 53 48 4c 49  _WARNING} ${SHLI
2a30: 42 5f 43 46 4c 41 47 53 7d 27 0a 65 6c 73 65 0a  B_CFLAGS}'.else.
2a40: 20 20 20 20 43 46 4c 41 47 53 3d 27 24 7b 43 46      CFLAGS='${CF
2a50: 4c 41 47 53 5f 44 45 46 41 55 4c 54 7d 20 24 7b  LAGS_DEFAULT} ${
2a60: 43 46 4c 41 47 53 5f 57 41 52 4e 49 4e 47 7d 27  CFLAGS_WARNING}'
2a70: 0a 66 69 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .fi..#----------
2a80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2a90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2aa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ab0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 45 76 65  ----------.# Eve
2ac0: 72 79 6f 6e 65 20 73 68 6f 75 6c 64 20 62 65 20  ryone should be 
2ad0: 6c 69 6e 6b 69 6e 67 20 61 67 61 69 6e 73 74 20  linking against 
2ae0: 74 68 65 20 54 63 6c 20 73 74 75 62 20 6c 69 62  the Tcl stub lib
2af0: 72 61 72 79 2e 20 20 49 66 20 79 6f 75 0a 23 20  rary.  If you.# 
2b00: 63 61 6e 27 74 20 66 6f 72 20 73 6f 6d 65 20 72  can't for some r
2b10: 65 61 73 6f 6e 2c 20 72 65 6d 6f 76 65 20 74 68  eason, remove th
2b20: 69 73 20 64 65 66 69 6e 69 74 69 6f 6e 2e 20 20  is definition.  
2b30: 49 66 20 79 6f 75 20 61 72 65 6e 27 74 20 75 73  If you aren't us
2b40: 69 6e 67 0a 23 20 73 74 75 62 73 2c 20 79 6f 75  ing.# stubs, you
2b50: 20 61 6c 73 6f 20 6e 65 65 64 20 74 6f 20 6d 6f   also need to mo
2b60: 64 69 66 79 20 74 68 65 20 53 48 4c 49 42 5f 4c  dify the SHLIB_L
2b70: 44 5f 4c 49 42 53 20 73 65 74 74 69 6e 67 20 62  D_LIBS setting b
2b80: 65 6c 6f 77 20 74 6f 0a 23 20 6c 69 6e 6b 20 61  elow to.# link a
2b90: 67 61 69 6e 73 74 20 74 68 65 20 6e 6f 6e 2d 73  gainst the non-s
2ba0: 74 75 62 62 65 64 20 54 63 6c 20 6c 69 62 72 61  tubbed Tcl libra
2bb0: 72 79 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ry..#-----------
2bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 43 5f 44 45  ---------..AC_DE
2c00: 46 49 4e 45 28 55 53 45 5f 54 43 4c 5f 53 54 55  FINE(USE_TCL_STU
2c10: 42 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  BS)..#----------
2c20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2c50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 54 68 69  ----------.# Thi
2c60: 73 20 6d 61 63 72 6f 20 67 65 6e 65 72 61 74 65  s macro generate
2c70: 73 20 61 20 6c 69 6e 65 20 74 6f 20 75 73 65 20  s a line to use 
2c80: 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 61 20  when building a 
2c90: 6c 69 62 72 61 72 79 2e 20 20 49 74 0a 23 20 64  library.  It.# d
2ca0: 65 70 65 6e 64 73 20 6f 6e 20 76 61 6c 75 65 73  epends on values
2cb0: 20 73 65 74 20 62 79 20 74 68 65 20 53 43 5f 45   set by the SC_E
2cc0: 4e 41 42 4c 45 5f 53 48 41 52 45 44 2c 20 53 43  NABLE_SHARED, SC
2cd0: 5f 45 4e 41 42 4c 45 5f 53 59 4d 42 4f 4c 53 2c  _ENABLE_SYMBOLS,
2ce0: 0a 23 20 61 6e 64 20 53 43 5f 4c 4f 41 44 5f 54  .# and SC_LOAD_T
2cf0: 43 4c 43 4f 4e 46 49 47 20 6d 61 63 72 6f 73 20  CLCONFIG macros 
2d00: 61 62 6f 76 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d 2d  above..#--------
2d10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
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 0a 0a 53 43  ------------..SC
2d50: 5f 4d 41 4b 45 5f 4c 49 42 0a 0a 23 2d 2d 2d 2d  _MAKE_LIB..#----
2d60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2d90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2da0: 0a 23 20 65 76 61 6c 20 74 68 65 73 65 20 74 77  .# eval these tw
2db0: 6f 20 76 61 6c 75 65 73 20 74 6f 20 64 65 72 65  o values to dere
2dc0: 66 65 72 65 6e 63 65 20 74 68 65 20 24 7b 44 42  ference the ${DB
2dd0: 47 58 7d 20 76 61 72 69 61 62 6c 65 2e 0a 23 2d  GX} variable..#-
2de0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2df0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e20: 2d 2d 2d 0a 0a 65 76 61 6c 20 22 53 48 41 52 45  ---..eval "SHARE
2e30: 44 5f 4c 49 42 5f 53 55 46 46 49 58 3d 24 7b 54  D_LIB_SUFFIX=${T
2e40: 43 4c 5f 53 48 41 52 45 44 5f 4c 49 42 5f 53 55  CL_SHARED_LIB_SU
2e50: 46 46 49 58 7d 22 0a 65 76 61 6c 20 22 55 4e 53  FFIX}".eval "UNS
2e60: 48 41 52 45 44 5f 4c 49 42 5f 53 55 46 46 49 58  HARED_LIB_SUFFIX
2e70: 3d 24 7b 54 43 4c 5f 55 4e 53 48 41 52 45 44 5f  =${TCL_UNSHARED_
2e80: 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a 0a 23 2d  LIB_SUFFIX}"..#-
2e90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ea0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2eb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ec0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ed0: 2d 2d 2d 0a 23 20 53 68 61 72 65 64 20 6c 69 62  ---.# Shared lib
2ee0: 72 61 72 69 65 73 20 61 6e 64 20 73 74 61 74 69  raries and stati
2ef0: 63 20 6c 69 62 72 61 72 69 65 73 20 68 61 76 65  c libraries have
2f00: 20 64 69 66 66 65 72 65 6e 74 20 6e 61 6d 65 73   different names
2f10: 2e 0a 23 20 41 6c 73 6f 2c 20 77 69 6e 64 6f 77  ..# Also, window
2f20: 73 20 6c 69 62 72 61 72 69 65 73 20 61 6e 64 20  s libraries and 
2f30: 75 6e 69 78 20 6c 69 62 72 61 72 69 65 73 20 68  unix libraries h
2f40: 61 76 65 20 64 69 66 66 65 72 65 6e 74 20 6e 61  ave different na
2f50: 6d 65 73 2e 0a 23 20 46 6f 72 20 74 68 65 20 4f  mes..# For the O
2f60: 70 65 6e 53 53 4c 20 76 65 72 73 69 6f 6e 2c 20  penSSL version, 
2f70: 49 20 63 68 6f 73 65 20 74 6f 20 75 73 65 20 74  I chose to use t
2f80: 68 65 20 73 61 6d 65 20 6c 69 62 72 61 72 79 20  he same library 
2f90: 6e 61 6d 65 73 20 74 68 61 74 0a 23 20 4f 70 65  names that.# Ope
2fa0: 6e 53 53 4c 20 75 73 65 73 20 61 73 20 69 74 73  nSSL uses as its
2fb0: 20 64 65 66 61 75 6c 74 20 6e 61 6d 65 73 2e 0a   default names..
2fc0: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  #---------------
2fd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2fe0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2ff0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3000: 2d 2d 2d 2d 2d 0a 0a 69 66 20 74 65 73 74 20 2d  -----..if test -
3010: 6e 20 22 24 7b 4f 50 45 4e 53 53 4c 7d 22 3b 20  n "${OPENSSL}"; 
3020: 74 68 65 6e 0a 0a 20 20 20 20 63 61 73 65 20 22  then..    case "
3030: 60 75 6e 61 6d 65 20 2d 73 60 22 20 69 6e 0a 09  `uname -s`" in..
3040: 2a 77 69 6e 33 32 2a 20 7c 20 2a 57 49 4e 33 32  *win32* | *WIN32
3050: 2a 20 7c 20 2a 43 59 47 57 49 4e 5f 4e 54 2a 7c  * | *CYGWIN_NT*|
3060: 2a 43 59 47 57 49 4e 5f 39 38 2a 7c 2a 43 59 47  *CYGWIN_98*|*CYG
3070: 57 49 4e 5f 39 35 2a 29 0a 09 20 20 20 20 69 66  WIN_95*)..    if
3080: 20 74 65 73 74 20 22 24 7b 53 48 41 52 45 44 5f   test "${SHARED_
3090: 42 55 49 4c 44 7d 22 20 3d 20 22 31 22 20 3b 20  BUILD}" = "1" ; 
30a0: 74 68 65 6e 0a 09 09 53 48 4c 49 42 5f 4c 44 5f  then...SHLIB_LD_
30b0: 4c 49 42 53 3d 22 5c 22 60 24 7b 43 59 47 50 41  LIBS="\"`${CYGPA
30c0: 54 48 7d 20 24 7b 54 43 4c 5f 42 49 4e 5f 44 49  TH} ${TCL_BIN_DI
30d0: 52 7d 2f 24 7b 54 43 4c 5f 53 54 55 42 5f 4c 49  R}/${TCL_STUB_LI
30e0: 42 5f 46 49 4c 45 7d 60 5c 22 20 24 7b 54 43 4c  B_FILE}`\" ${TCL
30f0: 5f 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 7d 20  _SHLIB_LD_LIBS} 
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 73 73 6c  SSL_LIB_DIR}/ssl
3120: 65 61 79 33 32 2e 6c 69 62 60 5c 22 20 5c 22 60  eay32.lib`\" \"`
3130: 24 7b 43 59 47 50 41 54 48 7d 20 24 7b 53 53 4c  ${CYGPATH} ${SSL
3140: 5f 4c 49 42 5f 44 49 52 7d 2f 6c 69 62 65 61 79  _LIB_DIR}/libeay
3150: 33 32 2e 6c 69 62 60 5c 22 22 0a 09 09 65 76 61  32.lib`\""...eva
3160: 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c 49  l "${PACKAGE}_LI
3170: 42 5f 46 49 4c 45 3d 24 7b 50 41 43 4b 41 47 45  B_FILE=${PACKAGE
3180: 7d 24 7b 53 48 41 52 45 44 5f 4c 49 42 5f 53 55  }${SHARED_LIB_SU
3190: 46 46 49 58 7d 22 0a 09 09 52 41 4e 4c 49 42 3d  FFIX}"...RANLIB=
31a0: 3a 0a 09 20 20 20 20 65 6c 73 65 0a 09 09 65 76  :..    else...ev
31b0: 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c  al "${PACKAGE}_L
31c0: 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43 4b 41 47  IB_FILE=${PACKAG
31d0: 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f 4c 49 42  E}${UNSHARED_LIB
31e0: 5f 53 55 46 46 49 58 7d 22 0a 09 20 20 20 20 66  _SUFFIX}"..    f
31f0: 69 0a 09 3b 3b 0a 09 2a 29 0a 09 20 20 20 20 69  i..;;..*)..    i
3200: 66 20 74 65 73 74 20 22 24 7b 53 48 41 52 45 44  f test "${SHARED
3210: 5f 42 55 49 4c 44 7d 22 20 3d 20 22 31 22 20 3b  _BUILD}" = "1" ;
3220: 20 74 68 65 6e 0a 09 09 53 48 4c 49 42 5f 4c 44   then...SHLIB_LD
3230: 5f 4c 49 42 53 3d 22 24 7b 54 43 4c 5f 53 54 55  _LIBS="${TCL_STU
3240: 42 5f 4c 49 42 5f 53 50 45 43 7d 20 2d 4c 24 7b  B_LIB_SPEC} -L${
3250: 53 53 4c 5f 4c 49 42 5f 44 49 52 7d 20 2d 6c 73  SSL_LIB_DIR} -ls
3260: 73 6c 20 2d 4c 24 7b 53 53 4c 5f 4c 49 42 5f 44  sl -L${SSL_LIB_D
3270: 49 52 7d 20 2d 6c 63 72 79 70 74 6f 20 24 7b 47  IR} -lcrypto ${G
3280: 43 43 50 41 54 48 7d 20 24 7b 47 43 43 4c 49 42  CCPATH} ${GCCLIB
3290: 7d 22 0a 09 09 65 76 61 6c 20 22 24 7b 50 41 43  }"...eval "${PAC
32a0: 4b 41 47 45 7d 5f 4c 49 42 5f 46 49 4c 45 3d 6c  KAGE}_LIB_FILE=l
32b0: 69 62 24 7b 50 41 43 4b 41 47 45 7d 24 7b 53 48  ib${PACKAGE}${SH
32c0: 41 52 45 44 5f 4c 49 42 5f 53 55 46 46 49 58 7d  ARED_LIB_SUFFIX}
32d0: 22 0a 09 09 52 41 4e 4c 49 42 3d 3a 0a 09 20 20  "...RANLIB=:..  
32e0: 20 20 65 6c 73 65 0a 09 09 65 76 61 6c 20 22 24    else...eval "$
32f0: 7b 50 41 43 4b 41 47 45 7d 5f 4c 49 42 5f 46 49  {PACKAGE}_LIB_FI
3300: 4c 45 3d 6c 69 62 24 7b 50 41 43 4b 41 47 45 7d  LE=lib${PACKAGE}
3310: 24 7b 55 4e 53 48 41 52 45 44 5f 4c 49 42 5f 53  ${UNSHARED_LIB_S
3320: 55 46 46 49 58 7d 22 0a 09 20 20 20 20 66 69 0a  UFFIX}"..    fi.
3330: 09 3b 3b 0a 20 20 20 20 65 73 61 63 0a 65 6c 73  .;;.    esac.els
3340: 65 0a 20 20 20 20 63 61 73 65 20 22 60 75 6e 61  e.    case "`una
3350: 6d 65 20 2d 73 60 22 20 69 6e 0a 20 20 20 20 20  me -s`" in.     
3360: 20 20 20 2a 77 69 6e 33 32 2a 20 7c 20 2a 57 49     *win32* | *WI
3370: 4e 33 32 2a 20 7c 20 2a 43 59 47 57 49 4e 5f 4e  N32* | *CYGWIN_N
3380: 54 2a 7c 2a 43 59 47 57 49 4e 5f 39 38 2a 7c 2a  T*|*CYGWIN_98*|*
3390: 43 59 47 57 49 4e 5f 39 35 2a 29 0a 09 20 20 20  CYGWIN_95*)..   
33a0: 20 69 66 20 74 65 73 74 20 22 24 7b 53 48 41 52   if test "${SHAR
33b0: 45 44 5f 42 55 49 4c 44 7d 22 20 3d 20 22 31 22  ED_BUILD}" = "1"
33c0: 20 3b 20 74 68 65 6e 0a 09 20 20 20 20 20 20 20   ; then..       
33d0: 20 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 3d 22   SHLIB_LD_LIBS="
33e0: 5c 22 60 24 7b 43 59 47 50 41 54 48 7d 20 24 7b  \"`${CYGPATH} ${
33f0: 54 43 4c 5f 42 49 4e 5f 44 49 52 7d 2f 24 7b 54  TCL_BIN_DIR}/${T
3400: 43 4c 5f 53 54 55 42 5f 4c 49 42 5f 46 49 4c 45  CL_STUB_LIB_FILE
3410: 7d 60 5c 22 20 24 7b 54 43 4c 5f 53 48 4c 49 42  }`\" ${TCL_SHLIB
3420: 5f 4c 44 5f 4c 49 42 53 7d 20 5c 22 60 24 7b 43  _LD_LIBS} \"`${C
3430: 59 47 50 41 54 48 7d 20 24 7b 53 53 4c 5f 4c 49  YGPATH} ${SSL_LI
3440: 42 5f 44 49 52 7d 2f 73 73 6c 63 33 32 2e 6c 69  B_DIR}/sslc32.li
3450: 62 60 5c 22 22 0a 09 20 20 20 20 20 20 20 20 65  b`\""..        e
3460: 76 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f  val "${PACKAGE}_
3470: 4c 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43 4b 41  LIB_FILE=${PACKA
3480: 47 45 7d 24 7b 53 48 41 52 45 44 5f 4c 49 42 5f  GE}${SHARED_LIB_
3490: 53 55 46 46 49 58 7d 22 0a 09 20 20 20 20 20 20  SUFFIX}"..      
34a0: 20 20 52 41 4e 4c 49 42 3d 3a 0a 09 20 20 20 20    RANLIB=:..    
34b0: 65 6c 73 65 0a 09 20 20 20 20 20 20 20 20 65 76  else..        ev
34c0: 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c  al "${PACKAGE}_L
34d0: 49 42 5f 46 49 4c 45 3d 24 7b 50 41 43 4b 41 47  IB_FILE=${PACKAG
34e0: 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f 4c 49 42  E}${UNSHARED_LIB
34f0: 5f 53 55 46 46 49 58 7d 22 0a 09 20 20 20 20 66  _SUFFIX}"..    f
3500: 69 0a 09 3b 3b 0a 20 20 20 20 20 20 20 20 2a 29  i..;;.        *)
3510: 0a 09 20 20 20 20 69 66 20 74 65 73 74 20 22 24  ..    if test "$
3520: 7b 53 48 41 52 45 44 5f 42 55 49 4c 44 7d 22 20  {SHARED_BUILD}" 
3530: 3d 20 22 31 22 20 3b 20 74 68 65 6e 0a 09 20 20  = "1" ; then..  
3540: 20 20 20 20 20 20 53 48 4c 49 42 5f 4c 44 5f 4c        SHLIB_LD_L
3550: 49 42 53 3d 22 24 7b 54 43 4c 5f 53 54 55 42 5f  IBS="${TCL_STUB_
3560: 4c 49 42 5f 53 50 45 43 7d 20 2d 4c 24 7b 53 53  LIB_SPEC} -L${SS
3570: 4c 5f 4c 49 42 5f 44 49 52 7d 20 2d 6c 73 73 6c  L_LIB_DIR} -lssl
3580: 63 22 0a 09 20 20 20 20 20 20 20 20 65 76 61 6c  c"..        eval
3590: 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c 49 42   "${PACKAGE}_LIB
35a0: 5f 46 49 4c 45 3d 6c 69 62 24 7b 50 41 43 4b 41  _FILE=lib${PACKA
35b0: 47 45 7d 24 7b 53 48 41 52 45 44 5f 4c 49 42 5f  GE}${SHARED_LIB_
35c0: 53 55 46 46 49 58 7d 22 0a 09 20 20 20 20 20 20  SUFFIX}"..      
35d0: 20 20 52 41 4e 4c 49 42 3d 3a 0a 09 20 20 20 20    RANLIB=:..    
35e0: 65 6c 73 65 0a 09 20 20 20 20 20 20 20 20 65 76  else..        ev
35f0: 61 6c 20 22 24 7b 50 41 43 4b 41 47 45 7d 5f 4c  al "${PACKAGE}_L
3600: 49 42 5f 46 49 4c 45 3d 6c 69 62 24 7b 50 41 43  IB_FILE=lib${PAC
3610: 4b 41 47 45 7d 24 7b 55 4e 53 48 41 52 45 44 5f  KAGE}${UNSHARED_
3620: 4c 49 42 5f 53 55 46 46 49 58 7d 22 0a 09 20 20  LIB_SUFFIX}"..  
3630: 20 20 66 69 0a 09 3b 3b 0a 20 20 20 20 65 73 61    fi..;;.    esa
3640: 63 0a 66 69 0a 0a 41 43 5f 53 55 42 53 54 28 74  c.fi..AC_SUBST(t
3650: 6c 73 5f 4c 49 42 5f 46 49 4c 45 29 0a 41 43 5f  ls_LIB_FILE).AC_
3660: 53 55 42 53 54 28 53 48 4c 49 42 5f 4c 44 5f 4c  SUBST(SHLIB_LD_L
3670: 49 42 53 29 0a 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d  IBS)..#---------
3680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
36a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
36b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 23 20 46 69  -----------.# Fi
36c0: 6e 64 20 74 63 6c 73 68 20 73 6f 20 74 68 61 74  nd tclsh so that
36d0: 20 77 65 20 63 61 6e 20 72 75 6e 20 70 6b 67 5f   we can run pkg_
36e0: 6d 6b 49 6e 64 65 78 20 74 6f 20 67 65 6e 65 72  mkIndex to gener
36f0: 61 74 65 20 74 68 65 20 70 6b 67 49 6e 64 65 78  ate the pkgIndex
3700: 2e 74 63 6c 0a 23 20 66 69 6c 65 20 64 75 72 69  .tcl.# file duri
3710: 6e 67 20 74 68 65 20 69 6e 73 74 61 6c 6c 20 70  ng the install p
3720: 72 6f 63 65 73 73 2e 20 20 44 6f 6e 27 74 20 72  rocess.  Don't r
3730: 75 6e 20 74 68 65 20 54 43 4c 53 48 5f 50 52 4f  un the TCLSH_PRO
3740: 47 20 74 68 72 6f 75 67 68 0a 23 20 24 7b 43 59  G through.# ${CY
3750: 47 50 41 54 48 7d 20 62 65 63 61 75 73 65 20 69  GPATH} because i
3760: 74 27 73 20 62 65 69 6e 67 20 75 73 65 64 20 64  t's being used d
3770: 69 72 65 63 74 6c 79 20 62 79 20 6d 61 6b 65 2e  irectly by make.
3780: 0a 23 20 52 65 71 75 69 72 65 20 74 68 61 74 20  .# Require that 
3790: 77 65 20 75 73 65 20 61 20 74 63 6c 73 68 20 73  we use a tclsh s
37a0: 68 65 6c 6c 20 76 65 72 73 69 6f 6e 20 38 2e 32  hell version 8.2
37b0: 20 6f 72 20 6c 61 74 65 72 20 73 69 6e 63 65 20   or later since 
37c0: 65 61 72 6c 69 65 72 0a 23 20 76 65 72 73 69 6f  earlier.# versio
37d0: 6e 73 20 68 61 76 65 20 62 75 67 73 20 69 6e 20  ns have bugs in 
37e0: 74 68 65 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20  the pkg_mkIndex 
37f0: 72 6f 75 74 69 6e 65 2e 0a 23 2d 2d 2d 2d 2d 2d  routine..#------
3800: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3810: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3820: 2d 2d 2d 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 0a 0a  --------------..
3840: 53 43 5f 50 52 4f 47 5f 54 43 4c 53 48 0a 0a 23  SC_PROG_TCLSH..#
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 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3880: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3890: 2d 2d 2d 2d 0a 23 20 46 69 6e 61 6c 6c 79 2c 20  ----.# Finally, 
38a0: 73 75 62 73 74 69 74 75 74 65 20 61 6c 6c 20 6f  substitute all o
38b0: 66 20 74 68 65 20 76 61 72 69 6f 75 73 20 76 61  f the various va
38c0: 6c 75 65 73 20 69 6e 74 6f 20 74 68 65 20 4d 61  lues into the Ma
38d0: 6b 65 66 69 6c 65 2e 0a 23 2d 2d 2d 2d 2d 2d 2d  kefile..#-------
38e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3910: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41  -------------..A
3920: 43 5f 4f 55 54 50 55 54 28 5b 4d 61 6b 65 66 69  C_OUTPUT([Makefi
3930: 6c 65 20 5c 0a 09 70 6b 67 49 6e 64 65 78 2e 74  le \..pkgIndex.t
3940: 63 6c 5d 29 0a                                   cl]).