summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2006-05-15 17:10:33 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2006-05-15 17:10:33 +0000
commitb0c518919572f16c6255cf9da779b5e384621635 (patch)
treebf6545c2f5c44ae929854da834dd175a91dd9556 /dev-tcltk/otcl
parentMarked ~ppc. (diff)
downloadhistorical-b0c518919572f16c6255cf9da779b5e384621635.tar.gz
historical-b0c518919572f16c6255cf9da779b5e384621635.tar.bz2
historical-b0c518919572f16c6255cf9da779b5e384621635.zip
Bug #119147 and #123209, a version bump, with a large configure cleanup to work under modern Gentoo TCL and Bash3.1.
Package-Manager: portage-2.1_pre10-r5
Diffstat (limited to 'dev-tcltk/otcl')
-rw-r--r--dev-tcltk/otcl/ChangeLog10
-rw-r--r--dev-tcltk/otcl/Manifest57
-rw-r--r--dev-tcltk/otcl/files/digest-otcl-1.113
-rw-r--r--dev-tcltk/otcl/files/digest-otcl-1.8-r32
-rw-r--r--dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch241
-rw-r--r--dev-tcltk/otcl/files/otcl-1.11-configure-cleanup.patch291
-rw-r--r--dev-tcltk/otcl/otcl-1.11.ebuild63
7 files changed, 644 insertions, 23 deletions
diff --git a/dev-tcltk/otcl/ChangeLog b/dev-tcltk/otcl/ChangeLog
index 81c6017ec056..597997ee00df 100644
--- a/dev-tcltk/otcl/ChangeLog
+++ b/dev-tcltk/otcl/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-tcltk/otcl
# Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-tcltk/otcl/ChangeLog,v 1.20 2006/03/28 16:30:26 exg Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-tcltk/otcl/ChangeLog,v 1.21 2006/05/15 17:10:33 robbat2 Exp $
+
+*otcl-1.11 (15 May 2006)
+
+ 15 May 2006; Robin H. Johnson <robbat2@gentoo.org>
+ +files/otcl-1.11-badfreefix.patch,
+ +files/otcl-1.11-configure-cleanup.patch, +otcl-1.11.ebuild:
+ Bug #119147 and #123209, a version bump, with a large configure cleanup to
+ work under modern Gentoo TCL and Bash3.1.
28 Mar 2006; Emanuele Giaquinta <exg@gentoo.org> otcl-1.9.ebuild:
Fix configure with bash-3.1.
diff --git a/dev-tcltk/otcl/Manifest b/dev-tcltk/otcl/Manifest
index 7b75b6c81a36..7eec1dd640b3 100644
--- a/dev-tcltk/otcl/Manifest
+++ b/dev-tcltk/otcl/Manifest
@@ -1,31 +1,44 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-MD5 57942bf80b8a933d4bf02f77a8f38a67 ChangeLog 2516
-RMD160 088fc2bffa670e02fa362c70728aa0798be4073b ChangeLog 2516
-SHA256 16260e4445e09cc5ae9a95411c19d2095d09c220e6d390b4443e9a82ff8c9d06 ChangeLog 2516
-MD5 64a71b4bb60017c2d8802e771d31cedc files/digest-otcl-1.8-r3 60
-RMD160 663ecce937ba5c590486461d3030eb7993c78d43 files/digest-otcl-1.8-r3 60
-SHA256 ff029c681bd6bf9e809ecc8ef477b69dafc92bebcb2c6268e60c6a0c01985c34 files/digest-otcl-1.8-r3 60
-MD5 84127f056d34e6ca7a0952a7ebe743a2 files/digest-otcl-1.9 226
-RMD160 56914304f2072fcf661527a618a7717a5df53b2c files/digest-otcl-1.9 226
-SHA256 a84039e6b60fa46956af80cd4dfbf8d392f7ed9066f0b3390412cc8d0247c50a files/digest-otcl-1.9 226
+AUX otcl-1.11-badfreefix.patch 6953 RMD160 18b4b1920466292d67a77c2ca0443cfb889a02db SHA1 203172da92b84ff5641ec067ca39d3c80c63ef22 SHA256 06e801547fdaed1e415cdf2d5cb6c01bbd1e22c826084a2e93c4e1e53beb05a9 size 6953
+MD5 ed72e1a0e1da5a7aa2d0bba062b22054 files/otcl-1.11-badfreefix.patch 6953
+RMD160 18b4b1920466292d67a77c2ca0443cfb889a02db files/otcl-1.11-badfreefix.patch 6953
+SHA256 06e801547fdaed1e415cdf2d5cb6c01bbd1e22c826084a2e93c4e1e53beb05a9 files/otcl-1.11-badfreefix.patch 6953
+AUX otcl-1.11-configure-cleanup.patch 8969 RMD160 1644a5b5677baaa9cab6471e2109a20c901798b1 SHA1 d3a6d4d4fcd4aedb5b34c65f9633daaf6ab09e5b SHA256 5b7aa8765cecfe8734c113c1c73fac466a17699e3dff11742480fc4f9084e655 size 8969
+MD5 6f9c5b2330e0c26da1733406010d7381 files/otcl-1.11-configure-cleanup.patch 8969
+RMD160 1644a5b5677baaa9cab6471e2109a20c901798b1 files/otcl-1.11-configure-cleanup.patch 8969
+SHA256 5b7aa8765cecfe8734c113c1c73fac466a17699e3dff11742480fc4f9084e655 files/otcl-1.11-configure-cleanup.patch 8969
+AUX otcl-1.8-badfreefix.patch 7469 RMD160 9d7412cc8aa228e395c3e742825fab7eb108a3e8 SHA1 06258ed42c7526ed9b78fbc90edba533db4dcfcd SHA256 4ed1bae66e9c62b6fbcd7f71da7e9730f1e144d7413e27a08add83d2bb513061 size 7469
MD5 090aa64d1486dc3d916b9b5176179d30 files/otcl-1.8-badfreefix.patch 7469
RMD160 9d7412cc8aa228e395c3e742825fab7eb108a3e8 files/otcl-1.8-badfreefix.patch 7469
SHA256 4ed1bae66e9c62b6fbcd7f71da7e9730f1e144d7413e27a08add83d2bb513061 files/otcl-1.8-badfreefix.patch 7469
-MD5 43e377139ff5f3b7415b94a8c8d5260d metadata.xml 158
-RMD160 f197c34c7dd71f6025e93436e3f999137928554a metadata.xml 158
-SHA256 62fb2b0a899315973de885234e3931a2f652b343b68f90fe0778378fdca6f290 metadata.xml 158
+DIST otcl-1.11.tar.gz 315835 RMD160 02148865a0734fe01171f0456ed89beda1f6074e SHA256 ac4998748b5eb870898796beb55eba299660bee097d8dbfd10224281548cb94f size 315835
+DIST otcl-1.8.tar.gz 300954 RMD160 2627e6a8d58bd7377c1cc9c4be34b463ad0d492a SHA256 31e92bfcd57b3bf9b972219361b91db22ff2c7b4c7d18be80e93b7d00b13079b size 300954
+DIST otcl-1.9.tar.gz 309728 RMD160 f3021de27b40abbc6eb805a29b5facaa136e7167 SHA256 3c5ca1d8f1c3fce788371a2b30b63e2f0b51f8c359672f78b101418786cbd09e size 309728
+EBUILD otcl-1.11.ebuild 1484 RMD160 f9705f29a1ea9848459107207126c711c5451e26 SHA1 6bc33878005568b37f464720261fc9cf56908b76 SHA256 a6bdbfb3e34406a0a5e7207a1ba744f47b66cfbf38941b433e4bcf45669efc19 size 1484
+MD5 f48e156e2af442d6746c17b834d10d29 otcl-1.11.ebuild 1484
+RMD160 f9705f29a1ea9848459107207126c711c5451e26 otcl-1.11.ebuild 1484
+SHA256 a6bdbfb3e34406a0a5e7207a1ba744f47b66cfbf38941b433e4bcf45669efc19 otcl-1.11.ebuild 1484
+EBUILD otcl-1.8-r3.ebuild 1409 RMD160 503db566fe326e93db41e7b3a20b8a62dc5efb82 SHA1 93da74e0efef6e7e46cf2b2ae6a70ae06881693e SHA256 e648941ad4f0a45086b86655debd0c161fe75ab819926ceb97697c4eab45c5cb size 1409
MD5 b4f113715b6d3e3a95bf5cb2e4ba49c0 otcl-1.8-r3.ebuild 1409
RMD160 503db566fe326e93db41e7b3a20b8a62dc5efb82 otcl-1.8-r3.ebuild 1409
SHA256 e648941ad4f0a45086b86655debd0c161fe75ab819926ceb97697c4eab45c5cb otcl-1.8-r3.ebuild 1409
+EBUILD otcl-1.9.ebuild 1464 RMD160 c71bfc84836e897bb987334e2ffc39ad6bf8d180 SHA1 a7c5bcbb247a7bb83a3628397da168ca7408b58a SHA256 4ae9a91aef3edb26f8b5e30bacfe00b469e1460e604423ee208c3f792df45829 size 1464
MD5 0d650a4e21e7e79117ce577c3f11c40e otcl-1.9.ebuild 1464
RMD160 c71bfc84836e897bb987334e2ffc39ad6bf8d180 otcl-1.9.ebuild 1464
SHA256 4ae9a91aef3edb26f8b5e30bacfe00b469e1460e604423ee208c3f792df45829 otcl-1.9.ebuild 1464
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.2.2 (GNU/Linux)
-
-iD8DBQFEKWPl2iXjgNjfe5sRAobKAJsEJBi3TpsY4+zWqG6yodyjqlS6zQCdH+Hy
-tdGqSg+imVWcHZjkeyHbevM=
-=UyoH
------END PGP SIGNATURE-----
+MISC ChangeLog 2821 RMD160 304407e29cb978da541195b1fa7ae21ccb95b64c SHA1 21518c9031b32c6e09d44e5e65390080a19ddc6b SHA256 b810ea91ee45ded9a4813c06b48621b7a53f18cc895971ed68e6fe3965bafd91 size 2821
+MD5 638cf8040ac38acccdc0b15dd06cbb74 ChangeLog 2821
+RMD160 304407e29cb978da541195b1fa7ae21ccb95b64c ChangeLog 2821
+SHA256 b810ea91ee45ded9a4813c06b48621b7a53f18cc895971ed68e6fe3965bafd91 ChangeLog 2821
+MISC metadata.xml 158 RMD160 f197c34c7dd71f6025e93436e3f999137928554a SHA1 edb8e5ac668440e92e947fc3dff54484b28c7775 SHA256 62fb2b0a899315973de885234e3931a2f652b343b68f90fe0778378fdca6f290 size 158
+MD5 43e377139ff5f3b7415b94a8c8d5260d metadata.xml 158
+RMD160 f197c34c7dd71f6025e93436e3f999137928554a metadata.xml 158
+SHA256 62fb2b0a899315973de885234e3931a2f652b343b68f90fe0778378fdca6f290 metadata.xml 158
+MD5 e6f812ac024e0ea93b344172e672d290 files/digest-otcl-1.11 229
+RMD160 eee55ba48d07431b6bccd1bfda54040e3342d5d9 files/digest-otcl-1.11 229
+SHA256 b3cbba0c87847c8c2e8af4cb673e3d9d006113c7216dedfd146ecd8958619eec files/digest-otcl-1.11 229
+MD5 f25750821fef1546713afbcff8997e99 files/digest-otcl-1.8-r3 226
+RMD160 8643cea69a08e2481dd76dc2c5427e202bbda179 files/digest-otcl-1.8-r3 226
+SHA256 450999f2531def9f51c66c4152cd13c21a3f663dfc05a33af410a078fcca9ac3 files/digest-otcl-1.8-r3 226
+MD5 84127f056d34e6ca7a0952a7ebe743a2 files/digest-otcl-1.9 226
+RMD160 56914304f2072fcf661527a618a7717a5df53b2c files/digest-otcl-1.9 226
+SHA256 a84039e6b60fa46956af80cd4dfbf8d392f7ed9066f0b3390412cc8d0247c50a files/digest-otcl-1.9 226
diff --git a/dev-tcltk/otcl/files/digest-otcl-1.11 b/dev-tcltk/otcl/files/digest-otcl-1.11
new file mode 100644
index 000000000000..ae9b6ad2fe4c
--- /dev/null
+++ b/dev-tcltk/otcl/files/digest-otcl-1.11
@@ -0,0 +1,3 @@
+MD5 2aec90ffa9370596dc02048ba1e8b468 otcl-1.11.tar.gz 315835
+RMD160 02148865a0734fe01171f0456ed89beda1f6074e otcl-1.11.tar.gz 315835
+SHA256 ac4998748b5eb870898796beb55eba299660bee097d8dbfd10224281548cb94f otcl-1.11.tar.gz 315835
diff --git a/dev-tcltk/otcl/files/digest-otcl-1.8-r3 b/dev-tcltk/otcl/files/digest-otcl-1.8-r3
index f435025fe842..8b1ca155a68e 100644
--- a/dev-tcltk/otcl/files/digest-otcl-1.8-r3
+++ b/dev-tcltk/otcl/files/digest-otcl-1.8-r3
@@ -1 +1,3 @@
MD5 88a4b94b3a128867d3fe13b77f3b5496 otcl-1.8.tar.gz 300954
+RMD160 2627e6a8d58bd7377c1cc9c4be34b463ad0d492a otcl-1.8.tar.gz 300954
+SHA256 31e92bfcd57b3bf9b972219361b91db22ff2c7b4c7d18be80e93b7d00b13079b otcl-1.8.tar.gz 300954
diff --git a/dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch b/dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch
new file mode 100644
index 000000000000..2282720330b1
--- /dev/null
+++ b/dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch
@@ -0,0 +1,241 @@
+diff -ur otcl-1.11/otcl.c otcl-1.11.new/otcl.c
+--- otcl-1.11/otcl.c 2004-01-05 16:56:07.000000000 -0800
++++ otcl-1.11.new/otcl.c 2004-01-13 04:12:10.000000000 -0800
+@@ -290,7 +290,7 @@
+ if (!l) return 0;
+ if (l->cl == s) {
+ *sl = l->next;
+- ckfree((char*)l);
++ ckfree((char*)l); l = NULL;
+ return 1;
+ }
+ while (l->next && l->next->cl != s) l = l->next;
+@@ -442,7 +442,7 @@
+ old_args2, argv[1], in->errorLine);
+ compat_Tcl_AddObjErrorInfo(in, msg, -1);
+ }
+- if (argc+2 > OTCLSMALLARGS) { ckfree((char*)args); args = 0; }
++ if (argc+2 > OTCLSMALLARGS) { ckfree((char*)args); args = NULL; }
+ return result;
+ }
+
+@@ -479,7 +479,7 @@
+ cl ? args[2] : argv[0], in->errorLine);
+ compat_Tcl_AddObjErrorInfo(in, msg, -1);
+ }
+- if (argc+3 > OTCLSMALLARGS) { ckfree((char*)args); args = 0; }
++ if (argc+3 > OTCLSMALLARGS) { ckfree((char*)args); args = NULL; }
+ return result;
+ }
+
+@@ -500,7 +500,7 @@
+
+ static void
+ AutoLoaderDP(ClientData cd) {
+- ckfree((char*)cd);
++ ckfree((char*)cd); cd = NULL;
+ }
+
+ static int
+@@ -579,8 +579,8 @@
+ Tcl_HashEntry *hPtr = Tcl_FindHashEntry(methods, nm);
+ if (hPtr != 0) {
+ Tcl_CmdInfo* co = (Tcl_CmdInfo*)Tcl_GetHashValue(hPtr);
+- if (co->deleteProc != 0) (*co->deleteProc)(co->deleteData);
+- ckfree((char*)co);
++ if (co->deleteProc != 0) { (*co->deleteProc)(co->deleteData); } co->deleteProc = NULL;
++ ckfree((char*)co); co = NULL;
+ Tcl_DeleteHashEntry(hPtr);
+ return 1;
+ }
+@@ -614,7 +614,7 @@
+ (Tcl_Namespace*)NULL, 0);
+ if (cmd)
+ Tcl_DeleteCommandFromToken(pdpd->interp, cmd);
+- ckfree((char*)pdpd);
++ ckfree((char*)pdpd); pdpd = NULL;
+ }
+ #endif
+
+@@ -674,7 +674,7 @@
+
+ for (i = 0; i < argc; i++)
+ Tcl_DecrRefCount(objv[i]);
+- ckfree((char *)objv);
++ ckfree((char *)objv); objv = NULL;
+
+ #else /* TCL_MAJOR_VERSION < 8 */
+
+@@ -691,7 +691,7 @@
+
+ #endif /* TCL_MAJOR_VERSION < 8 */
+
+- ckfree((char*)nargs);
++ ckfree((char*)nargs); nargs = NULL;
+ argv[1] = name;
+ argv[2] = oargs;
+
+@@ -926,7 +926,7 @@
+ static void
+ PrimitiveODestroy(ClientData cd) {
+ PrimitiveODestroyNoFree(cd);
+- ckfree((char*)cd);
++ ckfree((char*)cd); cd = NULL;
+ }
+
+ static void
+@@ -1002,18 +1002,18 @@
+ Tcl_CmdInfo* co = (Tcl_CmdInfo*)Tcl_GetHashValue(hp2);
+ ClientData cdest = cd;
+ if (co->clientData != 0) cdest = co->clientData;
+- if (co->deleteProc != 0) (*co->deleteProc)(co->deleteData);
+- ckfree((char*)co);
++ if (co->deleteProc != 0) { (*co->deleteProc)(co->deleteData); } co->deleteProc = NULL;
++ ckfree((char*)co); co = NULL;
+ }
+ if (obj->procs) {
+- Tcl_DeleteHashTable(obj->procs); ckfree((char*)(obj->procs));
++ Tcl_DeleteHashTable(obj->procs); ckfree((char*)(obj->procs)); obj->procs = NULL;
+ }
+
+ (void)RemoveInstance(obj, obj->cl);
+
+ #if TCL_MAJOR_VERSION >= 8
+- ckfree((char*)(obj->variables.procPtr));
+- ckfree((char*)(obj->variables.varTablePtr));
++ ckfree((char*)(obj->variables.procPtr)); obj->variables.procPtr = NULL;
++ ckfree((char*)(obj->variables.varTablePtr)); obj->variables.varTablePtr = NULL;
+ #endif
+ }
+
+@@ -1035,8 +1035,7 @@
+ obj->id = Tcl_CreateCommand(in, name, OTclDispatch, (ClientData)obj,
+ PrimitiveODestroy);
+ } else {
+- ckfree((char *)obj);
+- obj = NULL;
++ ckfree((char *)obj); obj = NULL;
+ }
+ #endif
+ return obj;
+@@ -1123,14 +1122,14 @@
+ Tcl_CmdInfo* co = (Tcl_CmdInfo*)Tcl_GetHashValue(hPtr);
+ ClientData cdest = cd;
+ if (co->clientData != 0) cdest = co->clientData;
+- if (co->deleteProc != 0) (*co->deleteProc)(co->deleteData);
+- ckfree((char*)co);
++ if (co->deleteProc != 0) { (*co->deleteProc)(co->deleteData); } co->deleteProc = NULL;
++ ckfree((char*)co); co = NULL;
+ }
+ Tcl_DeleteHashTable(&cl->instprocs);
+
+ if (cl->objectdata) {
+ Tcl_DeleteHashTable(cl->objectdata);
+- ckfree((char*)(cl->objectdata)); cl->objectdata = 0;
++ ckfree((char*)(cl->objectdata)); cl->objectdata = NULL;
+ }
+
+ /*
+@@ -1151,7 +1150,7 @@
+ * PrimitiveODestory to destory the hash entries first */
+ PrimitiveODestroyNoFree(cd);
+ Tcl_DeleteHashTable(&cl->instances);
+- ckfree((char*)cd);
++ ckfree((char*)cd); cd = NULL;
+ }
+
+
+@@ -1176,8 +1175,7 @@
+ obj->id = Tcl_CreateCommand(in, name, OTclDispatch, (ClientData)cl,
+ PrimitiveCDestroy);
+ } else {
+- ckfree((char *)cl);
+- cl = NULL;
++ ckfree((char *)cl); cl = NULL;
+ }
+ #endif
+ return cl;
+@@ -1359,6 +1357,9 @@
+ OTclObject* obj = OTclAsObject(in, cd);
+ Tcl_CmdInfo proc;
+ int op;
++ // NULL out the deleteProc value
++ // as it may be filled with random data on variable creation
++ proc.deleteProc = NULL; proc.deleteData = NULL;
+
+ if (!obj) return OTclErrType(in, argv[0], "Object");
+ if (argc != 7) return OTclErrArgCnt(in,argv[0],"proc name args body");
+@@ -1488,7 +1489,7 @@
+ Tcl_AppendResult(in, "expected ?inst/local? or ?inst? ?local? but got ",
+ argv[i]);
+ }
+- ckfree((char*)av);
++ ckfree((char*)av); av = NULL;
+ if (result != TCL_OK) break;
+ }
+ return result;
+@@ -1594,10 +1595,10 @@
+ scl[i] = OTclGetClass(in, av[i]);
+ loaded = (scl[i] != 0);
+ }
+- ckfree(args);
++ ckfree(args); args = NULL;
+ if (!loaded) {
+- ckfree((char*)av);
+- ckfree((char*)scl);
++ ckfree((char*)av); av = NULL;
++ ckfree((char*)scl); scl = NULL;
+ return OTclErrBadVal(in, "a list of classes", argv[4]);
+ }
+ }
+@@ -1621,8 +1622,8 @@
+ }
+
+ if (reversed != 0) {
+- ckfree((char*)av);
+- ckfree((char*)scl);
++ ckfree((char*)av); av = NULL;
++ ckfree((char*)scl); scl = NULL;
+ return OTclErrBadVal(in, "classes in dependence order", argv[4]);
+ }
+
+@@ -1641,8 +1642,8 @@
+ }
+ for (i = 0; i < ac; i++)
+ AddSuper(cl, scl[i]);
+- ckfree((char*)av);
+- ckfree((char*)scl);
++ ckfree((char*)av); av = NULL;
++ ckfree((char*)scl); scl = NULL;
+ FlushPrecedences(cl);
+
+ if (!ComputePrecedence(cl)) {
+@@ -1784,17 +1785,25 @@
+ OTclClass* cl = OTclAsClass(in, cd);
+ Tcl_CmdInfo proc;
+ int op;
++ // NULL out the deleteProc value
++ // as it may be filled with random data on variable creation
++ proc.deleteProc = NULL; proc.deleteData = NULL;
+
+ if (!cl) return OTclErrType(in, argv[0], "Class");
+ if (argc != 7) return OTclErrArgCnt(in,argv[0],"instproc name args body");
+
++
+ /*
+ * if the args list is "auto", the body is a script to load the proc
+ */
+
+- if (!strcmp("auto", argv[5])) op = MakeAuto(&proc, argv[6]);
+- else if (argv[5][0]==0 && argv[6][0]==0) op = -1;
+- else op = MakeProc(&proc,in, argc-3, argv+3);
++ if (!strcmp("auto", argv[5])) {
++ op = MakeAuto(&proc, argv[6]);
++ } else if (argv[5][0]==0 && argv[6][0]==0) {
++ op = -1;
++ } else {
++ op = MakeProc(&proc,in, argc-3, argv+3);
++ }
+
+ (void)RemoveMethod(&cl->instprocs, argv[4], (ClientData)cl);
+ if (op == 1) AddMethod(&cl->instprocs, argv[4], proc.proc,
diff --git a/dev-tcltk/otcl/files/otcl-1.11-configure-cleanup.patch b/dev-tcltk/otcl/files/otcl-1.11-configure-cleanup.patch
new file mode 100644
index 000000000000..21eab45733fd
--- /dev/null
+++ b/dev-tcltk/otcl/files/otcl-1.11-configure-cleanup.patch
@@ -0,0 +1,291 @@
+diff -Nuar otcl-1.11.orig/conf/configure.in.audio otcl-1.11/conf/configure.in.audio
+--- otcl-1.11.orig/conf/configure.in.audio 1998-07-16 23:07:29.000000000 -0700
++++ otcl-1.11/conf/configure.in.audio 2006-05-15 09:20:29.000000000 -0700
+@@ -90,10 +90,10 @@
+ fi
+ fi
+
+-AC_TEST_CPP([#include <sys/audioio.h>], x=audio/audio-sun.o, x="")
++AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <sys/audioio.h>]])],[x=audio/audio-sun.o],[x=""])
+ V_OBJ_AUDIO="$V_OBJ_AUDIO $x"
+
+-AC_TEST_CPP([#include <sun/audioio.h>], x=audio/audio-sun.o, x="")
++AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <sun/audioio.h>]])],[x=audio/audio-sun.o],[x=""])
+ V_OBJ_AUDIO="$V_OBJ_AUDIO $x"
+
+ case "$target" in
+diff -Nuar otcl-1.11.orig/conf/configure.in.dynamic otcl-1.11/conf/configure.in.dynamic
+--- otcl-1.11.orig/conf/configure.in.dynamic 1998-07-16 22:38:38.000000000 -0700
++++ otcl-1.11/conf/configure.in.dynamic 2006-05-15 09:36:26.632757055 -0700
+@@ -59,7 +59,7 @@
+ # results, and the version is kept in special file).
+
+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
++ system=MP-RAS-`awk '{print $3}' /etc/.relid`
+ fi
+ if test "`uname -s`" = "AIX" ; then
+ system=AIX-`uname -v`.`uname -r`
+@@ -311,7 +311,7 @@
+ hold_ldflags=$LDFLAGS
+ AC_MSG_CHECKING(for ld accepts -Bexport flag)
+ LDFLAGS="${LDFLAGS} -Wl,-Bexport"
+- AC_TRY_LINK(, [int i;], found=yes, found=no)
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int i;]])],[found=yes],[found=no])
+ LDFLAGS=$hold_ldflags
+ AC_MSG_RESULT($found)
+ if test $found = yes; then
+diff -Nuar otcl-1.11.orig/conf/configure.in.head otcl-1.11/conf/configure.in.head
+--- otcl-1.11.orig/conf/configure.in.head 2001-04-11 16:49:06.000000000 -0700
++++ otcl-1.11/conf/configure.in.head 2006-05-15 09:24:21.510388584 -0700
+@@ -32,12 +32,12 @@
+ fi
+
+
+-AC_CANONICAL_SYSTEM
++AC_CANONICAL_TARGET([])
+
+ AC_PROG_CC
+ AC_PROG_CXX
+-AC_STDC_HEADERS
+-AC_HAVE_HEADERS(string.h)
++AC_HEADER_STDC([])
++AC_CHECK_HEADERS([string.h])
+
+ V_INCLUDE=""
+ V_LIB=""
+@@ -76,8 +76,7 @@
+ else
+ if test "$CC" = gcc ; then
+ AC_MSG_CHECKING(that $CXX can handle -O2)
+- AC_TRY_COMPILE(,
+- #if __GNUC__ < 2 || __GNUC_MINOR__ < 8
++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[#if __GNUC__ < 2 || __GNUC_MINOR__ < 8
+ /* gcc */
+ error
+ #endif
+@@ -85,9 +84,9 @@
+ /* egcs */
+ int error;
+ #endif
+- ,AC_MSG_RESULT(yes)
+- OonS="-O2", # Optimize on Steroids
+- AC_MSG_RESULT(no))
++ ]])],[AC_MSG_RESULT(yes)
++ OonS="-O2"],[# Optimize on Steroids
++ AC_MSG_RESULT(no)])
+ fi
+ fi
+
+@@ -152,19 +151,16 @@
+
+ # Checking validity of STL
+ AC_MSG_CHECKING(standard STL is available)
+-AC_LANG_SAVE
+-AC_LANG_CPLUSPLUS
++
++AC_LANG_PUSH([C++])
+ enable_stl="no"
+-AC_TRY_COMPILE(
+- #include <list>
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <list>
+ #include <hash_map>
+ template <class _T> class tlist : public list <_T> {};
+- ,
+- return 0;
+- ,AC_MSG_RESULT(yes)
+- enable_stl="yes",
+- AC_MSG_RESULT(no))
+-AC_LANG_RESTORE
++ ]], [[return 0;
++ ]])],[AC_MSG_RESULT(yes)
++ enable_stl="yes"],[AC_MSG_RESULT(no)])
++AC_LANG_POP([C++])
+
+ # This can be extended to support compilation-time module selection
+ V_STLOBJ=""
+diff -Nuar otcl-1.11.orig/conf/configure.in.int64_t otcl-1.11/conf/configure.in.int64_t
+--- otcl-1.11.orig/conf/configure.in.int64_t 2005-08-31 18:54:05.000000000 -0700
++++ otcl-1.11/conf/configure.in.int64_t 2006-05-15 09:20:30.000000000 -0700
+@@ -22,19 +22,17 @@
+ fi
+
+ AC_CACHE_CHECK([for __int64_t],int64_t_HAVE___INT64_T,[
+-AC_TRY_RUN([
++AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ main() { __int64_t x; exit (sizeof(x) >= 8 ? 0 : 1); }
+-],
+-int64_t_HAVE___INT64_T=yes,int64_t_HAVE___INT64_T=no,int64_t_HAVE___INT64_T=cross)])
++]])],[int64_t_HAVE___INT64_T=yes],[int64_t_HAVE___INT64_T=no],[int64_t_HAVE___INT64_T=cross])])
+ if test x"$int64_t_HAVE___INT64_T" = x"yes" -a "x$INT64_T_ALTERNATIVE" = xnone; then
+ INT64_T_ALTERNATIVE=__int64_t
+ fi
+
+ AC_CACHE_CHECK([for long long],int64_t_HAVE_LONG_LONG,[
+-AC_TRY_RUN([
++AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ main() { long long x; exit (sizeof(x) >= 8 ? 0 : 1); }
+-],
+-int64_t_HAVE_LONG_LONG=yes,int64_t_HAVE_LONG_LONG=no,int64_t_HAVE_LONG_LONG=cross)])
++]])],[int64_t_HAVE_LONG_LONG=yes],[int64_t_HAVE_LONG_LONG=no],[int64_t_HAVE_LONG_LONG=cross])])
+ if test x"$int64_t_HAVE_LONG_LONG" = x"yes" -a "x$INT64_T_ALTERNATIVE" = xnone; then
+ INT64_T_ALTERNATIVE="long long"
+ fi
+diff -Nuar otcl-1.11.orig/conf/configure.in.nse otcl-1.11/conf/configure.in.nse
+--- otcl-1.11.orig/conf/configure.in.nse 2000-03-09 17:49:32.000000000 -0800
++++ otcl-1.11/conf/configure.in.nse 2006-05-15 09:20:30.000000000 -0700
+@@ -9,20 +9,20 @@
+ dnl
+
+ AC_MSG_CHECKING([for struct ether_header])
+-AC_TRY_COMPILE([
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include <stdio.h>
+ #include <net/ethernet.h>
+-], [
++]], [[
+ int main()
+ {
+ struct ether_header etherHdr;
+
+ return 1;
+ }
+-], [
++]])],[
+ AC_DEFINE(HAVE_ETHER_HEADER_STRUCT)
+ AC_MSG_RESULT(found)
+-], [
++],[
+ AC_MSG_RESULT(not found)
+ ])
+
+@@ -31,20 +31,20 @@
+ dnl Look for ether_addr
+ dnl
+ AC_MSG_CHECKING([for struct ether_addr])
+-AC_TRY_COMPILE([
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include <stdio.h>
+ #include <net/ethernet.h>
+-], [
++]], [[
+ int main()
+ {
+ struct ether_addr etherAddr;
+
+ return 0;
+ }
+-], [
++]])],[
+ AC_DEFINE(HAVE_ETHER_ADDRESS_STRUCT)
+ AC_MSG_RESULT(found)
+-], [
++],[
+ AC_MSG_RESULT(not found)
+ ])
+
+@@ -57,14 +57,13 @@
+ dnl
+ dnl look for SIOCGIFHWADDR
+ dnl
+-AC_TRY_RUN(
+-#include <stdio.h>
++AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
+ #include <sys/ioctl.h>
+ int main()
+ {
+ int i = SIOCGIFHWADDR;
+ return 0;
+ }
+-, AC_DEFINE(HAVE_SIOCGIFHWADDR), , echo 1
+-)
++]])],[AC_DEFINE(HAVE_SIOCGIFHWADDR)],[],[echo 1
++])
+
+diff -Nuar otcl-1.11.orig/conf/configure.in.perl otcl-1.11/conf/configure.in.perl
+--- otcl-1.11.orig/conf/configure.in.perl 1999-01-21 18:37:20.000000000 -0800
++++ otcl-1.11/conf/configure.in.perl 2006-05-15 09:20:30.000000000 -0700
+@@ -19,8 +19,8 @@
+ dnl
+ AC_DEFUN(CHECK_PERL_VERSION,
+ [
+-echo $[$1] -e "require $[$2]" 1>&AC_FD_CC
+-if $[$1] -e "require $[$2]" 2>&AC_FD_CC
++echo $[$1] -e "require $[$2]" 1>&AS_MESSAGE_LOG_FD()
++if $[$1] -e "require $[$2]" 2>&AS_MESSAGE_LOG_FD()
+ then
+ : good version
+ else
+diff -Nuar otcl-1.11.orig/conf/configure.in.tail otcl-1.11/conf/configure.in.tail
+--- otcl-1.11.orig/conf/configure.in.tail 2000-11-13 18:15:01.000000000 -0800
++++ otcl-1.11/conf/configure.in.tail 2006-05-15 09:40:00.160276617 -0700
+@@ -144,7 +144,8 @@
+
+ dnl backwards compability---if nothing else, do Makefile
+ define([AcOutputFiles],ifdef([AcOutputFiles],AcOutputFiles,Makefile))
+-AC_OUTPUT(AcOutputFiles)
++AC_CONFIG_FILES([Makefile])
++AC_OUTPUT
+
+ if test ! -d gen ; then
+ echo "creating ./gen"
+diff -Nuar otcl-1.11.orig/conf/configure.in.tcl otcl-1.11/conf/configure.in.tcl
+--- otcl-1.11.orig/conf/configure.in.tcl 2005-09-26 21:58:15.000000000 -0700
++++ otcl-1.11/conf/configure.in.tcl 2006-05-15 09:15:02.499646361 -0700
+@@ -84,6 +84,9 @@
+ $d/include/tcl$TCL_VERS \
+ $d/include/tcl$TCL_ALT_VERS \
+ $d/include \
++ $d/lib/tcl$TCL_HI_VERS/include \
++ $d/lib/tcl$TCL_VERS/include \
++ $d/lib/tcl$TCL_ALT_VERS/include \
+ "
+ TCL_H_PLACES=" \
+ ../include \
+@@ -134,7 +137,14 @@
+ /usr/include/tcl$TCL_VERS \
+ /usr/include/tcl$TCL_HI_VERS \
+ /usr/include/tcl$TCL_ALT_VERS \
+- /usr/include/tcl"
++ /usr/include/tcl \
++ /usr/lib/tcl$TCL_VERS/include/unix \
++ /usr/lib/tcl$TCL_HI_VERS/include/unix \
++ /usr/lib/tcl$TCL_ALT_VERS/include/unix \
++ /usr/lib/tcl$TCL_VERS/include/generic \
++ /usr/lib/tcl$TCL_HI_VERS/include/generic \
++ /usr/lib/tcl$TCL_ALT_VERS/include/generic \
++ "
+ dnl /usr/include/tcl is for Debian Linux
+ dnl /usr/include/tcl-private/generic is for FC 4
+ TCL_LIB_PLACES_D="$d \
+diff -Nuar otcl-1.11.orig/conf/configure.in.x11 otcl-1.11/conf/configure.in.x11
+--- otcl-1.11.orig/conf/configure.in.x11 1997-03-15 17:59:46.000000000 -0800
++++ otcl-1.11/conf/configure.in.x11 2006-05-15 09:20:31.000000000 -0700
+@@ -33,7 +33,7 @@
+
+ echo "checking for X11 header files"
+ if test "$x_includes" = NONE ; then
+- AC_TEST_CPP([#include <X11/Intrinsic.h>],x_includes="",x_includes=NONE)
++ AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <X11/Intrinsic.h>]])],[x_includes=""],[x_includes=NONE])
+ if test "$x_includes" = NONE ; then
+ for i in $xincdirs ; do
+ if test -r $i/X11/Intrinsic.h; then
+diff -Nuar otcl-1.11.orig/configure.in otcl-1.11/configure.in
+--- otcl-1.11.orig/configure.in 2005-10-13 23:45:28.000000000 -0700
++++ otcl-1.11/configure.in 2006-05-15 09:37:50.480568397 -0700
+@@ -1,4 +1,5 @@
+-AC_INIT(otcl.c)
++AC_INIT
++AC_CONFIG_SRCDIR([otcl.c])
+
+ #XXX
+ V_PROG="otclsh"
+@@ -31,7 +32,7 @@
+ # results, and the version is kept in special file).
+
+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
++ system=MP-RAS-`awk '{print $3}' /etc/.relid`
+ fi
+ AC_MSG_RESULT($system)
+ fi
diff --git a/dev-tcltk/otcl/otcl-1.11.ebuild b/dev-tcltk/otcl/otcl-1.11.ebuild
new file mode 100644
index 000000000000..15b67c420374
--- /dev/null
+++ b/dev-tcltk/otcl/otcl-1.11.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-tcltk/otcl/otcl-1.11.ebuild,v 1.1 2006/05/15 17:10:33 robbat2 Exp $
+
+inherit eutils autotools virtualx
+
+DESCRIPTION="MIT Object extension to Tcl"
+HOMEPAGE="http://otcl-tclcl.sourceforge.net/otcl/"
+SRC_URI="mirror://sourceforge/otcl-tclcl/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~x86 ~sparc ~ppc ~amd64"
+IUSE=""
+
+DEPEND=">=dev-lang/tcl-8.4.5
+ >=dev-lang/tk-8.4.5"
+
+# the package is not safe :-(
+MAKEOPTS="${MAKEOPTS} -j1"
+
+src_unpack() {
+ unpack ${A}
+
+ EPATCH_OPTS="-p1 -d${S}" epatch ${FILESDIR}/otcl-1.11-badfreefix.patch
+ EPATCH_OPTS="-p1 -d${S}" epatch ${FILESDIR}/otcl-1.11-configure-cleanup.patch
+
+ cd ${S}
+ eautoconf
+ elibtoolize
+ libtoolize -f
+}
+
+src_compile() {
+ local tclv tkv myconf
+ tclv=$(grep TCL_VER /usr/include/tcl.h | sed 's/^.*"\(.*\)".*/\1/')
+ tkv=$(grep TK_VER /usr/include/tk.h | sed 's/^.*"\(.*\)".*/\1/')
+ myconf="--with-tcl-ver=${tclv} --with-tk-ver=${tkv}"
+ CFLAGS="${CFLAGS} -I/usr/$(get_libdir)/tcl${tkv}/include/generic"
+
+ echo myconf $myconf
+ econf ${myconf} || die "econf failed"
+ emake all || die "emake all failed"
+ emake libotcl.so || die "emake libotcl.so failed"
+}
+
+src_install() {
+ dobin otclsh owish
+ dolib libotcl.so
+ dolib.a libotcl.a
+ insinto /usr/include
+ doins otcl.h
+
+ # docs
+ dodoc VERSION
+ dohtml README.html CHANGES.html
+ docinto doc
+ dohtml doc/*.html
+}
+
+src_test() {
+ Xmake test
+}