Check-in [91e82d9be9]
Overview
Comment:Added patch to allow Metakit to compile under Tcl 8.6, doesn't hurt compilation on other versions of Tcl so it is applied to all
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:91e82d9be9024e60566a0a6264e77c83e4a4f906
User & Date: rkeene on 2010-09-26 04:38:32
Other Links: manifest | tags
Context
2010-09-26
04:38
Updated to use public interface for SetStartupScript/GetStartupScript if it is found, otherwise use the old interface. check-in: 399b8095e3 user: rkeene tags: trunk
04:38
Added patch to allow Metakit to compile under Tcl 8.6, doesn't hurt compilation on other versions of Tcl so it is applied to all check-in: 91e82d9be9 user: rkeene tags: trunk
04:38
Added patches for TCLVFS on Tcl 8.6 check-in: 1ebcac2a8b user: rkeene tags: trunk
Changes

Modified mk4tcl/build.sh from [bcf44c2ad0] to [922c8bfe52].

    13     13   
    14     14   MK4VERS="2.4.9.7"
    15     15   SRC="src/metakit-${MK4VERS}.tar.gz"
    16     16   SRCURL="http://www.equi4.com/pub/mk/metakit-${MK4VERS}.tar.gz"
    17     17   BUILDDIR="$(pwd)/build/metakit-${MK4VERS}"
    18     18   OUTDIR="$(pwd)/out"
    19     19   INSTDIR="$(pwd)/inst"
    20         -export MK4VERS SRC SRCURL BUILDDIR OUTDIR INSTDIR
           20  +PATCHDIR="$(pwd)/patches"
           21  +export MK4VERS SRC SRCURL BUILDDIR OUTDIR INSTDIR PATCHDIR
    21     22   
    22     23   rm -rf 'build' 'out' 'inst'
    23     24   mkdir 'build' 'out' 'inst' || exit 1
           25  +
           26  +TCL_VERSION="unknown"
           27  +if [ -f "${TCLCONFIGDIR}/tclConfig.sh" ]; then
           28  +        source "${TCLCONFIGDIR}/tclConfig.sh"
           29  +fi
           30  +export TCL_VERSION
    24     31   
    25     32   if [ ! -f "${SRC}" ]; then
    26     33   	mkdir 'src' >/dev/null 2>/dev/null
    27     34   
    28     35   	wget -O "${SRC}" "${SRCURL}" || exit 1
    29     36   fi
    30     37   
    31     38   (
    32     39   	cd 'build' || exit 1
    33     40   
    34     41   	gzip -dc "../${SRC}" | tar -xf -
    35     42   
           43  +	# Apply required patches
           44  +	cd "${BUILDDIR}" || exit 1
           45  +	for patch in "${PATCHDIR}/all"/metakit-${MK4VERS}-*.diff "${PATCHDIR}/${TCL_VERSION}"/metakit-${MK4VERS}-*.diff; do
           46  +		if [ ! -f "${patch}" ]; then
           47  +			continue
           48  +		fi
           49  +
           50  +		echo "Applying: ${patch}"
           51  +		patch -p1 < "${patch}"
           52  +	done
    36     53   
    37     54   	cd "${BUILDDIR}/unix" || exit 1
    38     55   
    39     56   	# Build static libraries for linking against Tclkit
    40     57   	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
    41     58   	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
    42     59   	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" install
    43     60   
    44     61   	exit 0
    45     62   ) || exit 1
    46     63   
    47     64   exit 0

Added mk4tcl/patches/all/metakit-2.4.9.7-compilewithcvs.diff version [637b0f0b77].

            1  +diff -uNr metakit-2.4.9.7-orig/tcl/mk4tcl.cpp metakit-2.4.9.7-rsk/tcl/mk4tcl.cpp
            2  +--- metakit-2.4.9.7-orig/tcl/mk4tcl.cpp	2007-06-18 16:05:24.000000000 -0500
            3  ++++ metakit-2.4.9.7-rsk/tcl/mk4tcl.cpp	2010-02-21 18:30:34.000000000 -0600
            4  +@@ -979,7 +979,7 @@
            5  +   void *tag = (&view_[0])._seq; // horrific hack to get at c4_Sequence pointer
            6  +   if (objPtr->typePtr !=  &mkPropertyType || objPtr
            7  +     ->internalRep.twoPtrValue.ptr1 != tag) {
            8  +-    Tcl_ObjType *oldTypePtr = objPtr->typePtr;
            9  ++    Tcl_ObjType *oldTypePtr = (Tcl_ObjType *) objPtr->typePtr;
           10  + 
           11  +     char type = 'S';
           12  + 
           13  +@@ -1083,7 +1083,7 @@
           14  +   }
           15  + 
           16  +   if (objPtr->typePtr !=  &mkCursorType) {
           17  +-    Tcl_ObjType *oldTypePtr = objPtr->typePtr;
           18  ++    Tcl_ObjType *oldTypePtr = (Tcl_ObjType *) objPtr->typePtr;
           19  + 
           20  +     const char *string = Tcl_GetStringFromObj(objPtr, 0);
           21  + 
           22  +@@ -2156,7 +2156,7 @@
           23  +         _error = TCL_OK;
           24  +       else if (_error == TCL_ERROR) {
           25  +         char msg[100];
           26  +-        sprintf(msg, "\n  (\"mk::loop\" body line %d)", interp->errorLine);
           27  ++        sprintf(msg, "\n  (\"mk::loop\")");
           28  +         Tcl_AddObjErrorInfo(interp, msg,  - 1);
           29  +       }
           30  +       break;
           31  +diff -uNr metakit-2.4.9.7-orig/tcl/mk4too.cpp metakit-2.4.9.7-rsk/tcl/mk4too.cpp
           32  +--- metakit-2.4.9.7-orig/tcl/mk4too.cpp	2007-03-09 09:58:53.000000000 -0600
           33  ++++ metakit-2.4.9.7-rsk/tcl/mk4too.cpp	2010-02-21 18:30:38.000000000 -0600
           34  +@@ -612,7 +612,7 @@
           35  +           _error = TCL_OK;
           36  +         else if (_error == TCL_ERROR) {
           37  +           char msg[100];
           38  +-          sprintf(msg, "\n  (\"mk::loop\" body line %d)", interp->errorLine);
           39  ++          sprintf(msg, "\n  (\"mk::loop\")");
           40  +           Tcl_AddObjErrorInfo(interp, msg,  - 1);
           41  +         }
           42  +         break;