From 5051bbd23fac2f2541f0a91ea3053edfe951fdf0 Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Mon, 15 May 2006 17:10:33 +0000 Subject: Bug #119147 and #123209, a version bump, with a large configure cleanup to work under modern Gentoo TCL and Bash3.1. (Portage version: 2.1_pre10-r5) --- dev-tcltk/otcl/ChangeLog | 10 +- dev-tcltk/otcl/files/digest-otcl-1.11 | 3 + dev-tcltk/otcl/files/digest-otcl-1.8-r3 | 2 + dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch | 241 +++++++++++++++++ .../otcl/files/otcl-1.11-configure-cleanup.patch | 291 +++++++++++++++++++++ dev-tcltk/otcl/otcl-1.11.ebuild | 63 +++++ 6 files changed, 609 insertions(+), 1 deletion(-) create mode 100644 dev-tcltk/otcl/files/digest-otcl-1.11 create mode 100644 dev-tcltk/otcl/files/otcl-1.11-badfreefix.patch create mode 100644 dev-tcltk/otcl/files/otcl-1.11-configure-cleanup.patch create mode 100644 dev-tcltk/otcl/otcl-1.11.ebuild (limited to 'dev-tcltk') 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 + +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 otcl-1.9.ebuild: Fix configure with bash-3.1. 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 ], x=audio/audio-sun.o, x="") ++AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include ]])],[x=audio/audio-sun.o],[x=""]) + V_OBJ_AUDIO="$V_OBJ_AUDIO $x" + +-AC_TEST_CPP([#include ], x=audio/audio-sun.o, x="") ++AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include ]])],[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 ++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include + #include + template 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 + #include +-], [ ++]], [[ + 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 + #include +-], [ ++]], [[ + 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 ++AC_RUN_IFELSE([AC_LANG_SOURCE([[#include + #include + 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 ],x_includes="",x_includes=NONE) ++ AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include ]])],[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 +} -- cgit v1.2.3-65-gdbad