Index: xotcl/ChangeLog =================================================================== diff -u -r836f3964b3b9bff2d75f7f0b5dbc7939164ba24e -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/ChangeLog (.../ChangeLog) (revision 836f3964b3b9bff2d75f7f0b5dbc7939164ba24e) +++ xotcl/ChangeLog (.../ChangeLog) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -1,14 +1,15 @@ -2004-01-07 Gustaf.Neumann@wu-wien.ac.at +2005-01-07 Gustaf.Neumann@wu-wien.ac.at * code cleanup for nonpos args * new methods for Serialzer: - Serializer methodSerialize (to serialize methods) - Serializer exportMethods (to export methods from the xotcl namespace via ::Serializer all - Serializer exportObjects (to export Objects from ::xotcl::*) * put Serializer into a namespace (::Serializer is auto-exported) + * fix for serializer, when xotcl is not imported globally * aolserver: support for namespaced objects in xotcl.tcl -2004-01-06 Gustaf.Neumann@wu-wien.ac.at +2005-01-06 Gustaf.Neumann@wu-wien.ac.at * made introspection options for methods with nonpos args compatible with tcl * adding functionality to allow nonpos args and positional args Index: xotcl/Makefile =================================================================== diff -u -r4623855af8a4829fefe2f40299f2e24e4387a821 -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/Makefile (.../Makefile) (revision 4623855af8a4829fefe2f40299f2e24e4387a821) +++ xotcl/Makefile (.../Makefile) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -12,7 +12,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: Makefile,v 1.31 2005/01/07 03:33:41 neumann Exp $ +# RCS: @(#) $Id: Makefile,v 1.32 2005/01/07 12:41:26 neumann Exp $ #======================================================================== # Add additional lines to handle any additional AC_SUBST cases that @@ -27,10 +27,10 @@ src_test_dir = ${srcdir}/tests src_app_dir = ${srcdir}/apps src_generic_dir = ${srcdir}/generic -TCL_LIB_SPEC = -L/home/neumann/import/tcl8.4.9/unix -ltcl8.4 +TCL_LIB_SPEC = -L/home/neumann/tcl8.4.7/unix -ltcl8.4 TK_LIB_SPEC = subdirs = -aol_prefix = /usr/local/aolserver +aol_prefix = /usr/local/aolserver40r8/ # Requires native paths PLATFORM_DIR = `echo $(srcdir)/unix` @@ -107,14 +107,14 @@ SHELL = /bin/sh srcdir = . -prefix = /usr -exec_prefix = /usr +prefix = /usr/local/aolserver40r8/ +exec_prefix = /usr/local/aolserver40r8/ bindir = ${exec_prefix}/bin -libdir = /usr/lib -datadir = /usr/share +libdir = /usr/local/aolserver40r8//lib +datadir = /usr/local/aolserver40r8//share mandir = ${prefix}/man -includedir = /usr/include +includedir = /usr/local/aolserver40r8//include DESTDIR = @@ -143,19 +143,19 @@ SHLIB_CFLAGS = -fPIC SHLIB_LD = gcc -pipe -shared SHLIB_LD_FLAGS = -SHLIB_LD_LIBS = ${LIBS} -L/home/neumann/import/tcl8.4.9/unix -ltclstub8.4 +SHLIB_LD_LIBS = ${LIBS} -L/home/neumann/tcl8.4.7/unix -ltclstub8.4 STLIB_LD = ${AR} cr -TCL_DEFS = -DTCL_THREADS=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DHAVE_PTHREAD_ATTR_SETSTACKSIZE=1 -DHAVE_PTHREAD_ATFORK=1 -DHAVE_READDIR_R=1 -DHAVE_THREE_ARG_READDIR_R=1 -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_STAT64=1 -DHAVE_OPEN64=1 -DHAVE_LSEEK64=1 -DHAVE_TYPE_OFF64_T=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -TCL_BIN_DIR = /home/neumann/tcl8.4.9/unix -TCL_SRC_DIR = /home/neumann/import/tcl8.4.9 +TCL_DEFS = -DTCL_THREADS=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DHAVE_PTHREAD_ATTR_SETSTACKSIZE=1 -DHAVE_PTHREAD_ATFORK=1 -DHAVE_READDIR_R=1 -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_STAT64=1 -DHAVE_TYPE_OFF64_T=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 +TCL_BIN_DIR = /home/neumann/tcl8.4.7/unix +TCL_SRC_DIR = /home/neumann/tcl8.4.7 # This is necessary for packages that use private Tcl headers #TCL_TOP_DIR_NATIVE = $(TCL_SRC_DIR) # Not used, but retained for reference of what libs Tcl required TCL_LIBS = ${DL_LIBS} ${LIBS} ${MATH_LIBS} -pkgdatadir = /usr/share/xotcl1.3.5 -pkglibdir = /usr/lib/xotcl1.3.5 -pkgincludedir = /usr/include/xotcl1.3.5 +pkgdatadir = /usr/local/aolserver40r8//share/xotcl1.3.5 +pkglibdir = /usr/local/aolserver40r8//lib/xotcl1.3.5 +pkgincludedir = /usr/local/aolserver40r8//include/xotcl1.3.5 #======================================================================== # TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our @@ -169,7 +169,7 @@ LD_LIBRARY_PATH="$(EXTRA_PATH):$(LD_LIBRARY_PATH)" \ PATH="$(EXTRA_PATH):$(PATH)" \ TCLLIBPATH="$(top_builddir) ${srcdir}" -TCLSH_PROG = /home/neumann/tcl8.4.9/unix/tclsh +TCLSH_PROG = /home/neumann/tcl8.4.7/unix/tclsh TCLSH = $(TCLSH_ENV) $(TCLSH_PROG) SHARED_BUILD = 1 @@ -213,7 +213,7 @@ # of the Makefile, in the "BINARIES" variable. #======================================================================== -binaries: $(BINARIES) xotclsh pkgIndex.tcl +binaries: $(BINARIES) pkgIndex.tcl @if test ! "x$(subdirs)" = "x" ; then dirs="$(subdirs)" ; \ for dir in $$dirs ; do \ if (cd $$dir; $(MAKE) $@) ; then true ; else exit 1 ; fi ; \ @@ -487,7 +487,7 @@ #======================================================================== clean: - -rm -rf $(BINARIES) $(CLEANFILES) xotclsh pkgIndex.tcl ./receiver \ + -rm -rf $(BINARIES) $(CLEANFILES) pkgIndex.tcl ./receiver \ $(target_doc_dir)/*-xotcl.html find ${srcdir} -type f -name \*~ -exec rm \{} \; @if test ! "x$(subdirs)" = "x" ; then dirs="$(subdirs)" ; \ @@ -617,7 +617,7 @@ @echo " setenv TCLLIBPATH \"$(TCLLIBPATH)\"" @echo " and" @if test "x$(XOTCLSH)" = "x" ; then \ - echo " /home/neumann/tcl8.4.9/unix/tclsh" ; \ + echo " /home/neumann/tcl8.4.7/unix/tclsh" ; \ echo " package require XOTcl; namespace import -force xotcl::*" ; \ echo " or" ; \ echo " put the 'package require' line into your ~/.tclshrc" ; \ Index: xotcl/apps/utils/xotclsh =================================================================== diff -u -r836f3964b3b9bff2d75f7f0b5dbc7939164ba24e -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/apps/utils/xotclsh (.../xotclsh) (revision 836f3964b3b9bff2d75f7f0b5dbc7939164ba24e) +++ xotcl/apps/utils/xotclsh (.../xotclsh) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -1,7 +1,7 @@ -#!/home/neumann/tcl8.4.9/unix/tclsh +#!/home/neumann/tcl8.4.7/unix/tclsh if {$argc == 0} { puts "Don't use [info script] as interactive shell! Use instead:" - puts " /home/neumann/tcl8.4.9/unix/tclsh" + puts " /home/neumann/tcl8.4.7/unix/tclsh" puts " package require XOTcl; namespace import ::xotcl::*" } else { package require XOTcl Index: xotcl/apps/utils/xowish =================================================================== diff -u -r836f3964b3b9bff2d75f7f0b5dbc7939164ba24e -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/apps/utils/xowish (.../xowish) (revision 836f3964b3b9bff2d75f7f0b5dbc7939164ba24e) +++ xotcl/apps/utils/xowish (.../xowish) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -1,5 +1,5 @@ #!@WISH_PROG@ -###!/home/neumann/tcl8.4.9/unix/tclsh +###!/home/neumann/tcl8.4.7/unix/tclsh ###package require Tk if {$argc == 0} { puts "Don't use [info script] as interactive shell! Use instead:" Index: xotcl/doc/xo-daemon.html =================================================================== diff -u -r4623855af8a4829fefe2f40299f2e24e4387a821 -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/doc/xo-daemon.html (.../xo-daemon.html) (revision 4623855af8a4829fefe2f40299f2e24e4387a821) +++ xotcl/doc/xo-daemon.html (.../xo-daemon.html) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -76,7 +76,7 @@ Date: - [::xotcl::rcs date {$Date: 2005/01/07 03:33:41 $}] + [::xotcl::rcs date {$Date: 2005/01/07 12:41:26 $}] Index: xotcl/doc/xo-whichPkg.html =================================================================== diff -u -r4623855af8a4829fefe2f40299f2e24e4387a821 -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/doc/xo-whichPkg.html (.../xo-whichPkg.html) (revision 4623855af8a4829fefe2f40299f2e24e4387a821) +++ xotcl/doc/xo-whichPkg.html (.../xo-whichPkg.html) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -52,7 +52,7 @@ Date: - [::xotcl::rcs date {$Date: 2005/01/07 03:33:41 $}] + [::xotcl::rcs date {$Date: 2005/01/07 12:41:26 $}] Index: xotcl/library/serialize/Serializer.xotcl =================================================================== diff -u -r4623855af8a4829fefe2f40299f2e24e4387a821 -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/library/serialize/Serializer.xotcl (.../Serializer.xotcl) (revision 4623855af8a4829fefe2f40299f2e24e4387a821) +++ xotcl/library/serialize/Serializer.xotcl (.../Serializer.xotcl) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -1,4 +1,4 @@ -# $Id: Serializer.xotcl,v 1.7 2005/01/07 03:33:41 neumann Exp $ +# $Id: Serializer.xotcl,v 1.8 2005/01/07 12:41:26 neumann Exp $ package require XOTcl 1.3 package provide xotcl::serializer 0.7 namespace eval ::xotcl {} @@ -16,7 +16,7 @@ authors { Gustaf Neumann, Gustaf.Neumann@wu-wien.ac.at } - date { $Date: 2005/01/07 03:33:41 $ } + date { $Date: 2005/01/07 12:41:26 $ } } @ Serializer proc all { @@ -173,7 +173,7 @@ } } Serializer instproc Object-serialize o { - append cmd [list [$o info class] create $o -noinit] " \\\n" + append cmd [list [$o info class] create [$o self] -noinit] " \\\n" foreach i [$o info procs] { append cmd " " [my method-serialize $o $i ""] " \\\n" } @@ -237,7 +237,7 @@ return $arglist } Serializer instproc category c { - if {[$c istype ::Class]} {return Class} {return Object} + if {[$c istype ::xotcl::Class]} {return Class} {return Object} } Serializer instproc allChildren o { set set $o @@ -308,15 +308,15 @@ return 0 } Serializer instproc serialize {objectOrClass} { - my [my category $objectOrClass]-serialize $objectOrClass + string trimright [my [my category $objectOrClass]-serialize $objectOrClass] "\\\n" } Serializer instproc serializeList {list} { my topoSort $list #foreach i [lsort [my array names level]] {puts "$i: [my set level($i)]"} set result "" foreach l [lsort [my array names level]] { foreach i [my set level($l)] { - append result [string trimright [my serialize $i] "\\\n"] \n + append result [my serialize $i] \n } } foreach e $list { Index: xotcl/unix/xotcl.spec =================================================================== diff -u -r0896d4deb00780e48b5b03269bf9c4ecca948919 -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/unix/xotcl.spec (.../xotcl.spec) (revision 0896d4deb00780e48b5b03269bf9c4ecca948919) +++ xotcl/unix/xotcl.spec (.../xotcl.spec) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -25,7 +25,7 @@ %build -./configure --with-tcl=/usr/lib --with-all --prefix=/usr --exec-prefix=/usr +./configure --with-tcl=/usr/lib --with-all --prefix=/usr/local/aolserver40r8/ --exec-prefix=/usr/local/aolserver40r8/ #make CFLAGS_DEFAULT='-O3 -mcpu=i686 -Wall -fomit-frame-pointer' make CFLAGS_DEFAULT='-O3 -Wall -fomit-frame-pointer' @@ -37,10 +37,10 @@ %undefine __check_files %doc doc -/usr/lib/xotcl1.3.5 -/usr/bin/xotclsh -/usr/bin/xowish -/usr/include/xotclDecls.h -/usr/include/xotcl.h -/usr/include/xotclIntDecls.h -/usr/include/xotclInt.h +/usr/local/aolserver40r8//lib/xotcl1.3.5 +/usr/local/aolserver40r8//bin/xotclsh +/usr/local/aolserver40r8//bin/xowish +/usr/local/aolserver40r8//include/xotclDecls.h +/usr/local/aolserver40r8//include/xotcl.h +/usr/local/aolserver40r8//include/xotclIntDecls.h +/usr/local/aolserver40r8//include/xotclInt.h Index: xotcl/xotclConfig.sh =================================================================== diff -u -r836f3964b3b9bff2d75f7f0b5dbc7939164ba24e -rf909cd44b7d6b7fe9a120885b206d34100c46c0d --- xotcl/xotclConfig.sh (.../xotclConfig.sh) (revision 836f3964b3b9bff2d75f7f0b5dbc7939164ba24e) +++ xotcl/xotclConfig.sh (.../xotclConfig.sh) (revision f909cd44b7d6b7fe9a120885b206d34100c46c0d) @@ -24,7 +24,7 @@ # String to pass to compiles to pick up the XOTcl includes from their # installed directory. -XOTCL_INCLUDE_DIR="/usr/include/xotcl1.3.5" +XOTCL_INCLUDE_DIR="/usr/local/aolserver40r8//include/xotcl1.3.5" XOTCL_INCLUDE_SPEC="-I$XOTCL_INCLUDE_DIR" # The name of the XOTcl library (may be either a .a file or a shared library): @@ -36,7 +36,7 @@ # String to pass to linker to pick up the XOTcl library from its # installed directory. -XOTCL_LIB_SPEC='-L/usr/lib/xotcl1.3.5 -lxotcl1.3.5' +XOTCL_LIB_SPEC='-L/usr/local/aolserver40r8//lib/xotcl1.3.5 -lxotcl1.3.5' # The name of the XOTcl stub library (a .a file): # XOTCL_STUB_LIB_FILE=libxotclstub1.3.5.a @@ -47,11 +47,11 @@ # String to pass to linker to pick up the XOTcl stub library from its # installed directory. -XOTCL_STUB_LIB_SPEC='-L/usr/lib/xotcl1.3.5 -lxotclstub1.3.5' +XOTCL_STUB_LIB_SPEC='-L/usr/local/aolserver40r8//lib/xotcl1.3.5 -lxotclstub1.3.5' # Name of the xotcl stub library with full path in build and install directory XOTCL_BUILD_STUB_LIB_PATH='/home/neumann/xotcl-1.3.5/libxotclstub1.3.5.a' -XOTCL_STUB_LIB_PATH='/usr/lib/xotcl1.3.5/libxotclstub1.3.5.a' +XOTCL_STUB_LIB_PATH='/usr/local/aolserver40r8//lib/xotcl1.3.5/libxotclstub1.3.5.a' # Location of the top-level source directories from which XOTcl # was built. This is the directory that contains generic, unix, etc. @@ -65,5 +65,5 @@ XOTCL_UNSHARED_LIB_SUFFIX=1.3.5${DBGX}.a # the shell in whose installation dirs the xotcl package is installed -XOTCL_COMPATIBLE_TCLSH=/home/neumann/tcl8.4.9/unix/tclsh +XOTCL_COMPATIBLE_TCLSH=/home/neumann/tcl8.4.7/unix/tclsh