Hex Artifact Content

Artifact 5b6fd738e823f0857a52a18cdcc8ae8294c1c32c:


0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20  #! /usr/bin/env 
0010: 62 61 73 68 0a 0a 23 20 4f 6e 6c 79 20 61 70 70  bash..# Only app
0020: 6c 79 20 74 6f 20 6d 69 6e 69 6d 61 6c 20 62 75  ly to minimal bu
0030: 69 6c 64 73 0a 69 66 20 5b 20 2d 7a 20 22 24 7b  ilds.if [ -z "${
0040: 4b 49 54 43 52 45 41 54 4f 52 5f 4d 49 4e 42 55  KITCREATOR_MINBU
0050: 49 4c 44 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 65  ILD}" ]; then..e
0060: 78 69 74 20 30 0a 66 69 0a 0a 23 20 4f 6e 6c 79  xit 0.fi..# Only
0070: 20 61 70 70 6c 79 20 69 66 20 74 68 65 20 54 63   apply if the Tc
0080: 6c 20 62 65 69 6e 67 20 62 75 69 6c 74 20 61 63  l being built ac
0090: 74 75 61 6c 6c 79 20 69 6e 63 6c 75 64 65 73 20  tually includes 
00a0: 4f 4f 20 61 73 20 70 61 72 74 20 6f 66 20 54 63  OO as part of Tc
00b0: 6c 0a 69 66 20 5b 20 21 20 2d 66 20 27 67 65 6e  l.if [ ! -f 'gen
00c0: 65 72 69 63 2f 74 63 6c 4f 4f 2e 63 27 20 5d 3b  eric/tclOO.c' ];
00d0: 20 74 68 65 6e 0a 09 65 78 69 74 20 30 0a 66 69   then..exit 0.fi
00e0: 0a 0a 23 20 41 70 70 6c 79 20 4f 4f 2d 72 65 6d  ..# Apply OO-rem
00f0: 6f 76 69 6e 67 20 70 61 74 63 68 0a 70 61 74 63  oving patch.patc
0100: 68 20 2d 70 31 20 3c 3c 20 5f 45 4f 46 5f 0a 2d  h -p1 << _EOF_.-
0110: 2d 2d 20 74 63 6c 63 76 73 5f 48 45 41 44 2f 67  -- tclcvs_HEAD/g
0120: 65 6e 65 72 69 63 2f 74 63 6c 42 61 73 69 63 2e  eneric/tclBasic.
0130: 63 09 32 30 31 32 2d 30 39 2d 30 37 20 31 36 3a  c.2012-09-07 16:
0140: 30 31 3a 31 34 2e 30 30 30 30 30 30 30 30 30 20  01:14.000000000 
0150: 2d 30 35 30 30 0a 2b 2b 2b 20 74 63 6c 63 76 73  -0500.+++ tclcvs
0160: 5f 48 45 41 44 2d 4f 4f 72 65 6d 6f 76 65 64 2f  _HEAD-OOremoved/
0170: 67 65 6e 65 72 69 63 2f 74 63 6c 42 61 73 69 63  generic/tclBasic
0180: 2e 63 09 32 30 31 32 2d 30 39 2d 30 39 20 31 33  .c.2012-09-09 13
0190: 3a 34 34 3a 30 36 2e 36 31 38 39 31 32 32 35 31  :44:06.618912251
01a0: 20 2d 30 35 30 30 0a 40 40 20 2d 38 32 30 2c 38   -0500.@@ -820,8
01b0: 20 2b 38 32 30 2c 36 20 40 40 0a 20 20 20 20 20   +820,6 @@.     
01c0: 20 2a 20 43 72 65 61 74 65 20 75 6e 73 75 70 70   * Create unsupp
01d0: 6f 72 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 66  orted commands f
01e0: 6f 72 20 64 65 62 75 67 67 69 6e 67 20 62 79 74  or debugging byt
01f0: 65 63 6f 64 65 20 61 6e 64 20 6f 62 6a 65 63 74  ecode and object
0200: 73 2e 0a 20 20 20 20 20 20 2a 2f 0a 20 0a 2d 20  s..      */. .- 
0210: 20 20 20 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a     Tcl_CreateObj
0220: 43 6f 6d 6d 61 6e 64 28 69 6e 74 65 72 70 2c 20  Command(interp, 
0230: 22 3a 3a 74 63 6c 3a 3a 75 6e 73 75 70 70 6f 72  "::tcl::unsuppor
0240: 74 65 64 3a 3a 64 69 73 61 73 73 65 6d 62 6c 65  ted::disassemble
0250: 22 2c 0a 2d 09 20 20 20 20 54 63 6c 5f 44 69 73  ",.-.    Tcl_Dis
0260: 61 73 73 65 6d 62 6c 65 4f 62 6a 43 6d 64 2c 20  assembleObjCmd, 
0270: 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 0a 20 20 20  NULL, NULL);.   
0280: 20 20 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a 43    Tcl_CreateObjC
0290: 6f 6d 6d 61 6e 64 28 69 6e 74 65 72 70 2c 20 22  ommand(interp, "
02a0: 3a 3a 74 63 6c 3a 3a 75 6e 73 75 70 70 6f 72 74  ::tcl::unsupport
02b0: 65 64 3a 3a 72 65 70 72 65 73 65 6e 74 61 74 69  ed::representati
02c0: 6f 6e 22 2c 0a 20 09 20 20 20 20 54 63 6c 5f 52  on",. .    Tcl_R
02d0: 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 43 6d 64  epresentationCmd
02e0: 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 0a 20  , NULL, NULL);. 
02f0: 0a 2d 2d 2d 20 74 63 6c 63 76 73 5f 48 45 41 44  .--- tclcvs_HEAD
0300: 2f 67 65 6e 65 72 69 63 2f 74 63 6c 50 72 6f 63  /generic/tclProc
0310: 2e 63 09 32 30 31 32 2d 30 39 2d 30 37 20 31 36  .c.2012-09-07 16
0320: 3a 30 31 3a 31 34 2e 30 30 30 30 30 30 30 30 30  :01:14.000000000
0330: 20 2d 30 35 30 30 0a 2b 2b 2b 20 74 63 6c 63 76   -0500.+++ tclcv
0340: 73 5f 48 45 41 44 2d 4f 4f 72 65 6d 6f 76 65 64  s_HEAD-OOremoved
0350: 2f 67 65 6e 65 72 69 63 2f 74 63 6c 50 72 6f 63  /generic/tclProc
0360: 2e 63 09 32 30 31 32 2d 30 39 2d 30 39 20 31 33  .c.2012-09-09 13
0370: 3a 34 35 3a 31 36 2e 36 33 34 39 31 33 37 31 33  :45:16.634913713
0380: 20 2d 30 35 30 30 0a 40 40 20 2d 32 38 35 37 2c   -0500.@@ -2857,
0390: 36 20 2b 32 38 35 37 2c 37 20 40 40 0a 20 20 2a  6 +2857,7 @@.  *
03a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
03b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
03c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
03d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
03e0: 2d 2d 2d 2d 2d 2d 0a 20 20 2a 2f 0a 20 0a 2b 23  ------.  */. .+#
03f0: 69 66 20 30 0a 20 69 6e 74 0a 20 54 63 6c 5f 44  if 0. int. Tcl_D
0400: 69 73 61 73 73 65 6d 62 6c 65 4f 62 6a 43 6d 64  isassembleObjCmd
0410: 28 0a 20 20 20 20 20 43 6c 69 65 6e 74 44 61 74  (.     ClientDat
0420: 61 20 64 75 6d 6d 79 2c 09 09 2f 2a 20 4e 6f 74  a dummy,../* Not
0430: 20 75 73 65 64 2e 20 2a 2f 0a 40 40 20 2d 33 30   used. */.@@ -30
0440: 37 32 2c 36 20 2b 33 30 37 33 2c 37 20 40 40 0a  72,6 +3073,7 @@.
0450: 20 20 20 20 20 54 63 6c 5f 53 65 74 4f 62 6a 52       Tcl_SetObjR
0460: 65 73 75 6c 74 28 69 6e 74 65 72 70 2c 20 54 63  esult(interp, Tc
0470: 6c 44 69 73 61 73 73 65 6d 62 6c 65 42 79 74 65  lDisassembleByte
0480: 43 6f 64 65 4f 62 6a 28 63 6f 64 65 4f 62 6a 50  CodeObj(codeObjP
0490: 74 72 29 29 3b 0a 20 20 20 20 20 72 65 74 75 72  tr));.     retur
04a0: 6e 20 54 43 4c 5f 4f 4b 3b 0a 20 7d 0a 2b 23 65  n TCL_OK;. }.+#e
04b0: 6e 64 69 66 0a 20 0c 0a 20 2f 2a 0a 20 20 2a 20  ndif. .. /*.  * 
04c0: 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3a  Local Variables:
04d0: 0a 2d 2d 2d 20 74 63 6c 63 76 73 5f 48 45 41 44  .--- tclcvs_HEAD
04e0: 2f 67 65 6e 65 72 69 63 2f 74 63 6c 56 61 72 2e  /generic/tclVar.
04f0: 63 09 32 30 31 32 2d 30 39 2d 30 37 20 31 36 3a  c.2012-09-07 16:
0500: 30 31 3a 31 34 2e 30 30 30 30 30 30 30 30 30 20  01:14.000000000 
0510: 2d 30 35 30 30 0a 2b 2b 2b 20 74 63 6c 63 76 73  -0500.+++ tclcvs
0520: 5f 48 45 41 44 2d 4f 4f 72 65 6d 6f 76 65 64 2f  _HEAD-OOremoved/
0530: 67 65 6e 65 72 69 63 2f 74 63 6c 56 61 72 2e 63  generic/tclVar.c
0540: 09 32 30 31 32 2d 30 39 2d 30 39 20 31 33 3a 33  .2012-09-09 13:3
0550: 34 3a 32 32 2e 31 33 38 39 31 32 34 31 34 20 2d  4:22.138912414 -
0560: 30 35 30 30 0a 40 40 20 2d 36 33 36 30 2c 36 20  0500.@@ -6360,6 
0570: 2b 36 33 36 30 2c 37 20 40 40 0a 20 09 72 65 74  +6360,7 @@. .ret
0580: 75 72 6e 3b 0a 20 20 20 20 20 7d 0a 20 0a 2b 23  urn;.     }. .+#
0590: 69 66 20 30 0a 20 20 20 20 20 69 66 20 28 69 50  if 0.     if (iP
05a0: 74 72 2d 3e 76 61 72 46 72 61 6d 65 50 74 72 2d  tr->varFramePtr-
05b0: 3e 69 73 50 72 6f 63 43 61 6c 6c 46 72 61 6d 65  >isProcCallFrame
05c0: 20 26 20 46 52 41 4d 45 5f 49 53 5f 4d 45 54 48   & FRAME_IS_METH
05d0: 4f 44 29 20 7b 0a 20 09 43 61 6c 6c 43 6f 6e 74  OD) {. .CallCont
05e0: 65 78 74 20 2a 63 6f 6e 74 65 78 74 50 74 72 20  ext *contextPtr 
05f0: 3d 20 69 50 74 72 2d 3e 76 61 72 46 72 61 6d 65  = iPtr->varFrame
0600: 50 74 72 2d 3e 63 6c 69 65 6e 74 44 61 74 61 3b  Ptr->clientData;
0610: 0a 20 09 4d 65 74 68 6f 64 20 2a 6d 50 74 72 20  . .Method *mPtr 
0620: 3d 20 63 6f 6e 74 65 78 74 50 74 72 2d 3e 63 61  = contextPtr->ca
0630: 6c 6c 50 74 72 2d 3e 63 68 61 69 6e 5b 63 6f 6e  llPtr->chain[con
0640: 74 65 78 74 50 74 72 2d 3e 69 6e 64 65 78 5d 2e  textPtr->index].
0650: 6d 50 74 72 3b 0a 40 40 20 2d 36 33 38 32 2c 36  mPtr;.@@ -6382,6
0660: 20 2b 36 33 38 33 2c 37 20 40 40 0a 20 09 20 20   +6383,7 @@. .  
0670: 20 20 7d 0a 20 09 7d 0a 20 20 20 20 20 7d 0a 2b    }. .}.     }.+
0680: 23 65 6e 64 69 66 0a 20 20 20 20 20 54 63 6c 5f  #endif.     Tcl_
0690: 44 65 6c 65 74 65 48 61 73 68 54 61 62 6c 65 28  DeleteHashTable(
06a0: 26 61 64 64 65 64 54 61 62 6c 65 29 3b 0a 20 7d  &addedTable);. }
06b0: 0a 20 0c 0a 5f 45 4f 46 5f 0a 0a 23 20 46 75 72  . .._EOF_..# Fur
06c0: 74 68 65 72 20 72 65 6d 6f 76 65 20 4f 4f 0a 63  ther remove OO.c
06d0: 64 20 67 65 6e 65 72 69 63 0a 0a 23 20 52 65 6d  d generic..# Rem
06e0: 6f 76 65 20 63 61 6c 6c 73 20 74 6f 20 54 63 6c  ove calls to Tcl
06f0: 4f 4f 49 6e 69 74 28 29 0a 73 65 64 20 27 73 40  OOInit().sed 's@
0700: 54 63 6c 4f 4f 49 6e 69 74 28 69 6e 74 65 72 70  TclOOInit(interp
0710: 29 40 54 43 4c 5f 4f 4b 40 27 20 74 63 6c 42 61  )@TCL_OK@' tclBa
0720: 73 69 63 2e 63 20 3e 20 74 63 6c 42 61 73 69 63  sic.c > tclBasic
0730: 2e 63 2e 6e 65 77 0a 63 61 74 20 74 63 6c 42 61  .c.new.cat tclBa
0740: 73 69 63 2e 63 2e 6e 65 77 20 3e 20 74 63 6c 42  sic.c.new > tclB
0750: 61 73 69 63 2e 63 0a 72 6d 20 2d 66 20 74 63 6c  asic.c.rm -f tcl
0760: 42 61 73 69 63 2e 63 2e 6e 65 77 0a 0a 23 20 52  Basic.c.new..# R
0770: 6d 6f 76 65 20 61 6c 6c 20 54 63 6c 4f 4f 2a 20  move all TclOO* 
0780: 72 65 6c 61 74 65 64 20 63 6f 6d 70 69 6c 61 74  related compilat
0790: 69 6f 6e 20 75 6e 69 74 73 2c 20 74 6f 20 62 65  ion units, to be
07a0: 20 73 75 72 65 20 74 6f 20 63 61 74 63 68 20 61   sure to catch a
07b0: 6c 6c 20 72 65 6d 6f 76 61 6c 73 0a 66 6f 72 20  ll removals.for 
07c0: 66 69 6c 65 20 69 6e 20 74 63 6c 4f 4f 2a 2e 5b  file in tclOO*.[
07d0: 63 68 5d 3b 20 64 6f 0a 09 3e 20 22 24 7b 66 69  ch]; do..> "${fi
07e0: 6c 65 7d 22 0a 64 6f 6e 65 0a                    le}".done.