2009-12-30 14:49 jkrell * caltech-parser/cit_util/src/m3makefile: fix: LongReal => Longreal, in the local name, not the m3core name 2009-12-30 14:40 jkrell * m3-libs/m3core/src/word/: GenWord.ig, GenWord.mg, Long.i3, Long.m3, Word.i3, Word.ig, Word.m3, Word.mg, m3makefile: go back to GenWord the other front end (Olivetti m3-tk) doesn't understand INTERFACE Word = Word(WordRep) END Word. but it does't understand INTERFACE Word = GenWord(WordRep) END Word. 2009-12-30 13:13 jkrell * m3-libs/libm3/src/uid/POSIX/getMID.c: remove volatile that was from when I wanted to look in the debugger but wasn't yet doing anything else 2009-12-30 13:08 jkrell * m3-libs/libm3/src/uid/POSIX/getMID.c: remove redundant #include 2009-12-30 13:06 jkrell * m3-libs/libm3/src/uid/POSIX/GetPrimaryMACAddress.c: initial copy of Apple sample code from: http://developer.apple.com/mac/library/samplecode/GetPrimaryMACAddress/ I expect this will work on older systems as well. Note that to compile/link it, you need to specify -framework IOKit -framework CoreFoundation I'll add that to the Darwin config files shortly. 2009-12-30 12:53 jkrell * m3-libs/libm3/src/uid/POSIX/getMID.c: It sounds like this will work on Net/Free/OpenBSd as well. An option for pre-10.3 Mac OS X would be good too. 2009-12-30 12:41 jkrell * m3-libs/libm3/src/uid/POSIX/getMID.c: repair how the variable sized structs are walked demonstrate working code to get MAC addresses on Mac OS X, and perhaps other systems still to be worked into the real code but this is good 2009-12-30 00:00 rcoleburn * m3-libs/libm3/src/m3makefile: repair broken build process by commenting out the inclusion of "Types" folder because this folder is not in the source tree right now. 2009-12-29 18:22 rcoleburn * m3-libs/m3core/src/runtime/: WIN32/RTOSc.c, common/RTIOc.c, common/RTLinkerC.c: convert from MAC to UNIX format so Microsoft C++ compiler on Windows will process the file. 2009-12-23 22:07 hosking * m3-libs/synthesizer/src/m3makefile: LongrealType=>LongReal. 2009-12-23 22:06 hosking * m3-libs/sortedtableextras/src/: RedBlackTbl.ig, SkipListTbl.ig: RealType=>Real. 2009-12-23 22:06 hosking * m3-libs/arithmetic/src/basictypes/float/: ExtendedType.i3, ExtendedType.m3, m3makefile: Fix renames for RealType=>Real, LongrealType=>LongReal, ExtendedType=>Extended. 2009-12-23 22:05 hosking * m3-demo/mentor/src/binpack/: RealList.i3, RealList.m3, m3makefile: Fix renames for RealType=>Real and LongrealType=>LongReal. 2009-12-23 22:04 hosking * caltech-parser/cit_util/src/m3makefile: Fix renames. 2009-12-23 21:43 hosking * m3-libs/: m3core/src/m3makefile, libm3/src/types/ASCII.i3, libm3/src/types/ASCII.m3, libm3/src/types/Boolean.i3, libm3/src/types/Boolean.m3, libm3/src/types/COPYRIGHT-CMASS, libm3/src/types/Char.i3, libm3/src/types/Char.m3, libm3/src/types/Int32.i3, libm3/src/types/Int32.m3, libm3/src/types/Int64.i3, libm3/src/types/Int64.m3, libm3/src/types/Integer.i3, libm3/src/types/Integer.m3, libm3/src/types/Longint.i3, libm3/src/types/Longint.m3, libm3/src/types/LongrealType.i3, libm3/src/types/LongrealType.m3, libm3/src/types/RealType.i3, libm3/src/types/RealType.m3, libm3/src/types/Refany.i3, libm3/src/types/Refany.m3, libm3/src/types/Unicode.i3, libm3/src/types/Unicode.m3, libm3/src/types/WideChar.i3, libm3/src/types/WideChar.m3, libm3/src/types/m3makefile, m3core/src/float/Common/Extended.m3, m3core/src/float/Common/LongReal.m3, m3core/src/float/Common/Real.m3, m3core/src/float/IEEE/Extended.i3, m3core/src/float/IEEE/LongReal.i3, m3core/src/float/IEEE/Real.i3, m3core/src/float/VAX/Extended.i3, m3core/src/float/VAX/LongReal.i3, m3core/src/float/VAX/Real.i3: Move libm3/src/types into m3core. Note that LongrealType and RealType have been folded into m3core/src/float. Clients will need adjustment. 2009-12-23 21:37 hosking * m3-libs/m3core/src/word/: GenWord.ig, GenWord.mg, Long.i3, Long.m3, Word.i3, Word.ig, Word.m3, Word.mg, m3makefile: Move GenWord.ig and GenWord.mg to Word.ig and Word.mg. 2009-12-23 18:01 jkrell * m3-libs/sysutils/src/SystemC.c: from head: optimize, calling convention, Interix needs #define _REENTRANT 2009-12-23 18:00 jkrell * m3-libs/sysutils/src/POSIX/SystemPosixC.c: from head: remove lots of #includes 2009-12-23 17:59 jkrell * m3-libs/m3core/src/C/Common/CerrnoC.c: from head: calling convention 2009-12-22 18:27 jkrell * m3-libs/m3core/src/runtime/: AMD64_DARWIN/m3makefile, I386_DARWIN/m3makefile, LINUXLIBC6/m3makefile, PPC_DARWIN/m3makefile: delete empty m3makefile (more to do here: FreeBSD4, NetBSD2_i386, they should be empty but aren't) 2009-12-22 18:22 jkrell * m3-libs/m3core/src/runtime/: AIX386/m3makefile, AMD64_DARWIN/m3makefile, AP3000/m3makefile, ARM/m3makefile, FreeBSD/m3makefile, FreeBSD2/m3makefile, FreeBSD3/m3makefile, FreeBSD4/m3makefile, HPPA/m3makefile, I386_DARWIN/m3makefile, IBMR2/m3makefile, IBMRT/m3makefile, IRIX5/m3makefile, LINUX/m3makefile, LINUXELF/m3makefile, LINUXLIBC6/m3makefile, NetBSD2_i386/m3makefile, OKI/m3makefile, OS2/m3makefile, PPC_DARWIN/m3makefile, SEQUENT/m3makefile, SPARC/m3makefile, SUN386/m3makefile, VAX/m3makefile: forgot to delete RTMachine from m3makefiles 2009-12-22 18:19 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, AMD64_DARWIN/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, FreeBSD4/RTMachine.i3, HPPA/RTMachine.i3, I386_DARWIN/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, LINUXLIBC6/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, PPC_DARWIN/RTMachine.i3, SEQUENT/RTMachine.i3, SPARC/RTMachine.i3, SUN386/RTMachine.i3, VAX/RTMachine.i3: delete all these semantically identical RTMachine.i3 files common/m3makefile will use common/RTMachine.i3 when platform/RTMachine.i3 doesn't exist, and it is semantically equivalent to all of them keep the following: ALPHA, SPARC: frameinfo and has_stack_walker NT*: alignment=1 (which I suspect is wrong but ok) HP300, Sun3, Umax: 68K machines? (fairly obsolete but I M68K_MAC maybe? :) ) 2009-12-22 18:09 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, ALPHA_OSF/RTMachine.i3, ALPHA_OSF/novm/RTMachine.i3, AMD64_DARWIN/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, DS3100/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, FreeBSD4/RTMachine.i3, HPPA/RTMachine.i3, I386_DARWIN/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, LINUXLIBC6/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, PPC_DARWIN/RTMachine.i3, SPARC/RTMachine.i3, SUN386/RTMachine.i3, VAX/RTMachine.i3: generally PointerAlignment = BYTESIZE(INTEGER) (or ADDRESS) except I guess 68K machines? Also NT386* is marked as 1, but my quick experiment shows it is also BYTESIZE(INTEGER), will look into that more later 2009-12-22 18:03 jkrell * m3-libs/m3core/src/runtime/: FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, FreeBSD4/RTMachine.i3, NetBSD2_i386/RTMachine.i3: Change the few remaining BytesPerHeapPage = 4096, LogBytesPerHeapPage = 12 to BytesPerHeapPage = 8192, LogBytesPerHeapPage = 13. These aren't actually machine page sizes any longer. They were when we had virtual memory assisted garbage collection. It is more of an allocation granularity. Now all platforms use 8K except for NT386, which uses 64K since that is what VirtualAlloc allocates in. Perhaps we can just use 64K everywhere? 2009-12-22 17:57 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, ALPHA_OSF/RTMachine.i3, ALPHA_OSF/novm/RTMachine.i3, AMD64_DARWIN/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, DS3100/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, FreeBSD4/RTMachine.i3, HP300/RTMachine.i3, HPPA/RTMachine.i3, I386_DARWIN/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, LINUXLIBC6/RTMachine.i3, NEXT/RTMachine.i3, NT386/RTMachine.i3, NT386GNU/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, PPC_DARWIN/RTMachine.i3, SEQUENT/RTMachine.i3, SOLgnu/RTMachine.i3, SOLsun/RTMachine.i3, SPARC/RTMachine.i3, SPARC64_SOLARIS/RTMachine.i3, SUN3/RTMachine.i3, SUN386/RTMachine.i3, UMAX/RTMachine.i3, VAX/RTMachine.i3, common/RTHeapRep.i3, common/RTMachine.i3: AdrPerHeapPage = BytesPerHeapPage; (* addresses per page *) LogAdrPerHeapPage = LogBytesPerHeapPage; always, would move them to comon place but there is only one use, so remove them and change the use (which could probably be further smushed, but at least it isn't per-target) ("all machines are byte-addressable"?) BytesPerHeapPage = 8192 tempting too to make common but I stuck in 64K on NT, maybe we can just use that. 2009-12-22 17:51 jkrell * m3-libs/m3core/src/C/Common/CerrnoC.c: C++ compat, calling convention, optimize, libcmt.lib compat 2009-12-22 17:50 jkrell * m3-libs/sysutils/src/SystemC.c: C++ compat, calling convention, optimize 2009-12-22 17:39 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: copy from head: remove setjmp abstraction and just handle IA64 and use regular setjmp (the only one Windows head, there's no signal mask, though this code could be used with Cygwin, hm) 2009-12-22 17:36 jkrell * m3-libs/m3core/src/runtime/common/m3makefile: forgot this: partial merge from head: compile RTMiscC.c (not copying head because I didn't test the RTIO floating point support) 2009-12-22 17:35 jkrell * m3-libs/m3core/src/runtime/NetBSD2_i386/_fpsetjmp.s: delete more dead files (as in head) 2009-12-22 17:32 jkrell * m3-libs/m3core/src/runtime/common/: RTMisc.i3, RTMisc.m3: copy from head: equate RTMisc.Align(ADDRESS) == RTMisc.Upper(INTEGER) through linking instead of function call + loophole remove dependency on cloned (or then wrapped) headers 2009-12-22 17:27 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: copy from head: m3unix.h to m3core.h 2009-12-22 17:22 jkrell * m3-libs/m3core/src/runtime/common/RTLinkerC.c: copy from head: calling convention and optimize small stuff 2009-12-22 17:19 jkrell * m3-libs/m3core/src/runtime/common/RTMiscC.c: copy from head: calling convention We should Word.RoundUp Word.RoundUpPowerOf2 and inlining that? 2009-12-22 17:13 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: config.c, context.c, context.h, tcontext.c: copy from head: use sigsetjmp instead of setjmp openbsd/sparc64 support we'll stop using this code shortly anyway 2009-12-22 17:08 jkrell * m3-libs/m3core/src/runtime/: AMD64_DARWIN/RTMachineC.c, AMD64_DARWIN/RTSignal.m3, FreeBSD/_fpsetjmp.s, FreeBSD2/_fpsetjmp.s, FreeBSD3/_fpsetjmp.s, FreeBSD4/_fpsetjmp.s, I386_DARWIN/RTMachineC.c, I386_DARWIN/RTSignal.m3, LINUXLIBC6/RTSignal.m3, PPC_DARWIN/RTMachineC.c, PPC_DARWIN/RTSignal.m3, SPARC64_SOLARIS/RTSignal.m3: from head: delete some dead files 2009-12-22 17:08 jkrell * m3-libs/m3core/src/runtime/WIN32/RTOSc.c: forgot this earlier: from head: calling conventions, optimize, libcmt.lib compat 2009-12-22 11:18 jkrell * m3-sys/m3cc/src/m3makefile: This should fix cross compilers for SPARC64_SOLARIS -- configure doesn't ferry enough around so need to set gcc_cv_as_sparc_register_op in environment. 2009-12-22 10:52 jkrell * m3-libs/m3core/src/runtime/: WIN32/RTOSc.c, common/RTIOc.c, common/RTLinkerC.c, common/RTMiscC.c, common/RTUntracedMemoryC.c: win32 only: always optimize (such small functions), explicit calling conventions, be compatible with libcmt.lib 2009-12-22 10:43 jkrell * m3-libs/m3core/src/Csupport/: big-endian/dtoa.c, libgcc/libgcc.c, little-endian/dtoa.c: from head: fixes in case anyone wants to compile as C++ extern C, "new" (20 year old) function style 2009-12-22 10:42 jkrell * m3-libs/m3core/src/win32/m3makefile: from release: remove $Id$ 2009-12-22 10:41 jkrell * m3-libs/m3core/src/win32/m3makefile: oops: remove $Id$ 2009-12-22 10:41 jkrell * m3-libs/m3core/src/win32/m3makefile: from head: remove $Id$ 2009-12-22 10:39 jkrell * m3-libs/m3core/src/runtime/: ALPHA_OSF/RTStackC.c, DS3100/RTStackC.c: copy from head: add return types to functions (void) 2009-12-22 10:38 jkrell * m3-libs/m3core/src/runtime/: ALPHA_OSF/RTStackC.c, DS3100/RTStackC.c: add return types to functions (void) 2009-12-22 10:36 jkrell * m3-libs/m3core/src/: C/Common/CstringC.c, runtime/ALPHA_OSF/RTStackC.c, runtime/DS3100/RTStackC.c, runtime/POSIX/RTOSbrk.c, runtime/POSIX/RTOSmmap.c, runtime/SOLgnu/RTStackC.c, runtime/SOLsun/RTStackC.c, runtime/WIN32/RTOSc.c, runtime/ex_frame/RTStackC.c: copy from head: fixes for C++ compilation: const, extern C, explicit return type, ANSI style functions (20 years..) 2009-12-21 15:00 jkrell * m3-libs/m3core/src/: Csupport/libgcc/libgcc.c, runtime/ALPHA_OSF/RTStackC.c, runtime/DS3100/RTStackC.c, runtime/POSIX/RTOSbrk.c, runtime/POSIX/RTOSmmap.c, runtime/SOLgnu/RTStackC.c, runtime/SOLsun/RTStackC.c, runtime/WIN32/RTOSc.c, runtime/ex_frame/RTStackC.c: add mising #ifdef cplusplus extern "C" { } 2009-12-21 15:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/interix_context_on_signal_stack.c: whitespace only 2009-12-21 14:59 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: remove setjmp/longjmp abstraction, until such time as we do merge with pthread code 2009-12-21 14:57 jkrell * m3-libs/m3core/src/C/Common/CstringC.c: add back const, and then more, for C++ compilation this is because the non-const overloads are inline and mklib decides it wants to export them the right fix here is that mklib should ignore anything that starts with a question mark, as well as some other things it is exporting unnecessarily 2009-12-21 14:43 jkrell * m3-libs/m3core/src/Csupport/: little-endian/dtoa.c, big-endian/dtoa.c: don't use old style function definitions in C++ 2009-12-21 14:40 jkrell * m3-libs/m3core/src/C/Common/CstringC.c: remove some consts for C++ compilation 2009-12-21 14:36 jkrell * m3-libs/m3core/src/runtime/ex_frame/RTStackC.c: add missing return type (caught by C++ compiler) 2009-12-21 07:41 jkrell * m3-libs/m3core/src/unix/Common/: Ugrp.c, Unetdb.c, UnixLink.c, Upwd.c, Usocket.c, UstatC.c: from head: m3unix.h => m3core.h; "more mechanical wrappers via macros" 2009-12-21 06:16 jkrell * m3-libs/m3core/src/win32/m3makefile: remove $Id$, it shows up in diffs 2009-12-21 06:12 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: put #includes outside extern "C" extern "C" is each header's decision/responsibility 2009-12-21 06:08 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: from head: add explicit calling conventions for NT386 and use memcmp in set_ne and set_eq 2009-12-21 05:36 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: from head: m3unix.h => m3core.h 2009-12-21 05:35 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadFreeBSD.c: merge from head: m3unix.h => m3core.h; #if 0 assert(stack_grows_down) 2009-12-21 05:26 jkrell * m3-libs/m3core/src/m3core.h: partial merge from head: change #ifdef guard and provide Interix socklen_t 2009-12-21 05:05 jkrell * m3-libs/m3core/src/: m3core.h, unix/Common/m3unix.h: partial merge from head: have m3unix.h just #include m3core.h m3core.h in release doesn't yet assume certain time type equivalences 2009-12-21 04:51 jkrell * m3-libs/m3core/src/unix/: cygwin/Usysdep.i3, darwin-common/Usysdep.i3, freebsd-common/Usysdep.i3, hpux-common/Usysdep.i3, netbsd-common/Usysdep.i3, openbsd-common/Usysdep.i3, solaris-common/Usysdep.i3: partial merge from head: int32_t => int 2009-12-20 16:11 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: comments about m3back calling memcmp directly but gcc not (in the right place) 2009-12-20 16:11 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: comments about m3back calling memcmp directly but gcc not 2009-12-20 16:10 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: put in explicit calling conventions (so that user can alter the default in their compiler command line without breaking things) use memcmp for set_ne and set_eq (really belongs in parse.c to avoid the extra call) 2009-12-20 15:49 jkrell * m3-sys/m3back/src/M3x86.m3: use memcmp in place of set_ne or set_eq 2009-12-20 14:20 jkrell * m3-sys/m3back/src/: M3x86.m3: remove cas/casp support 2009-12-20 13:15 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: remove Win32 cas/casp functions 2009-12-20 13:11 jkrell * m3-sys/cm3/src/m3makefile: copy from head: change / to SL and also mention m3core.h note that usually now we use / instead of SL, but for some directories it might still be good to use SL for case of bootstrapping with older m3core, it might (if the paths are just passed through to the underlying functtions though, it doesn't matter) 2009-12-20 13:07 jkrell * m3-libs/m3core/src/runtime/POSIX/: RTOSbrk.c, RTOSmmap.c: copy from head: m3unix.h => m3core.h 2009-12-20 13:03 jkrell * m3-libs/m3core/src/unix/Common/: UdirC.c, Uexec.c, Uin.c, Umman.c, Uprocess.c, Usignal.c, Uugid.c, Uuio.c, Uutmp.c: copy from head: m3unix.h => m3core.h; use macros for mechanical wrappers 2009-12-20 12:53 jkrell * m3-sys/m3back/src/M3x86.m3: remove cas/casp support (compiler crashes if you use them) 2009-12-20 12:50 jkrell * m3-libs/m3core/src/win32/: WinConstants.c, WinUser.pl, WinUser.txt: new inactive files from head 2009-12-20 12:48 jkrell * m3-libs/m3core/src/C/LINUXLIBC6/Csetjmp.i3: copy from head: eliminate dependency on Usignal 2009-12-20 12:46 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: copy from head: move OpenBSD lines up so that OpenBSD/sparc64 uses them instead of the Sparc lines 2009-12-20 12:45 jkrell * m3-libs/m3core/src/runtime/common/RTLinker.m3: copy from head: brand tracing in @M3tracelinker 2009-12-20 12:44 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: copy from head: shorten comment by 2 characters 2009-12-20 11:26 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: copy from head: change UINT32 to UINT for compatibility with more header versions 2009-12-20 11:13 jkrell * m3-libs/m3core/src/C/Common/: CerrnoC.c, Csignal.i3, CsignalC.c, CstdioC.c, Cstdlib.i3, CstdlibC.c, Cstring.i3, CstringC.c: copy from head: use wrappers, be compatible with msvcrt.lib and libcmt.lib on Windows 2009-12-20 11:09 jkrell * m3-libs/m3core/src/C/Common/CstringC.c: remove #if 0 'unsecure' functions strcpy, strcat 2009-12-20 11:05 jkrell * m3-libs/m3core/src/C/Common/CstdioC.c: remove #if 0 'unsecure' functions tempnam and tmpnam (poor naming here too..) 2009-12-20 11:01 jkrell * m3-libs/m3core/src/thread.quake: copy from head: SPARC64_OPENBSD uses user threads 2009-12-20 10:57 jkrell * m3-libs/m3core/src/m3core.h: copy from head: whitespace only 2009-12-18 18:40 jkrell * m3-sys/m3back/src/M3x86.m3: initial support for cas/casp on 16bit and 32bit parameters for now it generates out of line function calls and requires a modern compiler 2009-12-18 18:39 jkrell * m3-libs/m3core/src/Csupport/Common/hand.c: initial support for cas/casp on 16bit and 32bit parameters for now it generates out of line function calls and requires a modern compiler The functions are statically linked into the caller. 2009-12-18 09:41 jkrell * m3-libs/m3core/src/runtime/SPARC64_SOLARIS/RTMachine.i3: copy from head -- remove unused import of Uucontext, so that Uucontext can be deleted 2009-12-18 09:38 jkrell * m3-libs/m3core/src/runtime/common/RTLinker.m3: lift traceInit check out of three or four function calls per type (integrated backend doesn't inline) 2009-12-18 09:06 jkrell * m3-libs/m3core/src/thread/PTHREAD/interix_context_on_signal_stack.c: demonstrate finding the context at runtime by searching the stack for the flags and segment registers 2009-12-18 08:27 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c, ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: go back a version 2009-12-18 08:26 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c, ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: viable prototype for Interix that does direct suspend/resume via /proc 2009-12-18 08:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadInterix.c: prototype based on test_interix, will probably be abandoned 2009-12-18 08:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/interix_context_on_signal_stack.c: a program to demonstrate that the context is indeed saved on the signal stack, so nothing special needed (except for having a single parameter signal handler and null context or such) 2009-12-17 21:48 rodney * doc/reference/complete/m3-defn-complete.tex: Better documentation of WIDECHAR and wide TEXT literals, and hex escapes in CHAR/WIDECHAR/TEXT literals. Derived files still need to be regenerated. 2009-12-16 16:26 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Let's tidy things up even more... 2009-12-16 16:12 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadFreeBSD.c, ThreadPThreadC.c: fix presumed FreeBSD break I caused assert(stack_grows_down) in ThreadPThreadC.c and not ThreadFreeBSD.c because it isn't available there 2009-12-16 15:44 jkrell * m3-libs/m3core/src/thread/PTHREAD/test_interix.c: fix newlines 2009-12-16 15:05 jkrell * m3-sys/m3cc/src/platforms.quake: add PPC64_LINUX and PPC64_DARWIN, I at least can build cm3cg for each easy but haven't set up the iMac G5 yet.. 2009-12-16 15:04 jkrell * m3-libs/m3core/src/thread/PTHREAD/test_interix.c: working demonstration of 'direct' suspend/resume pthreads with Interix and getting the registers of the suspended thread, using the /proc mechanism 2009-12-16 13:51 jkrell * m3-lectern/lectern/src/writev.c: remove unused file 2009-12-16 12:26 jkrell * m3-libs/m3core/src/unix/Common/m3makefile: remove out of date comment 2009-12-16 12:21 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: forgot this: switch OpenBSD to sigaltstack/sigsetjmp user threads 2009-12-16 12:19 jkrell * m3-libs/m3core/src/unix/: m3makefile, Common/Uconstants.c, Common/Uucontext.c, Common/Uucontext.h, Common/Uucontext.i3, Common/m3makefile, Common/context/setjmp/m3makefile: stop using much lingering platform-specific stuff specifically Usignal, Uucontext on all platforms except SOLgnu/SOLsun (SOLgnu/SOLsun RTMachine.i3 want Uucontext) remove all Uucontext stuff (the code that needs it is all in C, again, except for SOLgnu/SOLsun) Some portability and Modula-3 is possible here but we weren't using it. switch OpenBSD/x86 and OpenBSD/sparc64 to sigaltstack/sigsetjmp based user threads instead of poking around in the setjmp buffer unix/* is dead except for *ommon*, solaris*, WIN32 2009-12-16 12:16 jkrell * m3-libs/m3core/src/C/LINUXLIBC6/Csetjmp.i3: remove dependency on platform-specific Usignal.sigset_t 2009-12-16 09:46 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix: CleanUp => Cleanup 2009-12-16 09:26 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: assert that the counters suspendCount and suspend_cnt are always 0 or 1; that is, that they can be booleans as they are in pthreads 2009-12-16 09:16 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: add ActState for unification with pthread 2009-12-16 08:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: if we fail, but another thread succeeded, then don't raise 2009-12-16 07:58 jkrell * m3-libs/m3core/src/thread/: WIN32/ThreadWin32.m3, PTHREAD/ThreadPThread.m3: fix leak of activation when RegisterFinalCleanup is out of memory 2009-12-16 07:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove outdated/pointless comment and pointless assert 2009-12-16 07:39 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: some improvements from http://www.cs.wustl.edu/~schmidt/win32-cv-1.html - no need to acquire/release external mutex in loop - ResetEvent outside criticalsection 2009-12-15 19:52 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Match ThreadPThread.m3. 2009-12-15 19:52 hosking * m3-libs/m3core/src/: thread/PTHREAD/ThreadPThread.m3, runtime/common/RTCollector.m3, runtime/common/RTHeapRep.i3: Revert previous gratuitous change. There is no deadlock issue here with RTHeapLock. Let's be really clear when we can fail due to a thrown exception. 2009-12-15 18:00 jkrell * m3-libs/m3core/src/: runtime/common/RTCollector.m3, runtime/common/RTHeapRep.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadWin32.m3: restructure RegisterFinalCleanup into two phase Reserve/Commit in order to avoid holding initLock and heapLock at the same time and having to worry about lock order, deadlock etc. Reserve raises an exception under low memory (as Register did) and Commit does not. 2009-12-15 17:28 jkrell * m3-ui/formsedit/src/m3makefile: fix HasGui() 2009-12-15 17:24 jkrell * m3-ui/: bicycle/src/m3makefile, cmvbt/src/m3makefile, codeview/src/m3makefile, formsedit/src/m3makefile, formsvbt/src/m3makefile, images/src/m3makefile, mg/src/m3makefile, mgkit/src/m3makefile, ui/test/EyesVBT/src/m3makefile, vbtkit/src/m3makefile, videovbt/src/m3makefile, webvbt/src/m3makefile, webvbt/src/hyperpage/src/m3makefile, zeus/src/m3makefile: This should fix Win32 mentor in head erroring out with duplicate brands. But is not in release. -if HasGui() +if not HasGui() build_standalone() end 2009-12-15 16:39 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: fix bug where hand.obj doesn't always get shipped and then e.g. the Juno splashscreen is messed up (it's deeper than that though when it occurs, various set operations are broken) only people building m3core would see this, sometimes 2009-12-15 15:06 hosking * m3-libs/m3core/src/runtime/common/RTLinker.m3: Let's use RTIO.PutChars instead of copying over the characters ... 2009-12-15 14:16 jkrell * m3-libs/m3core/src/runtime/common/RTLinker.m3: move code into separate function TraceType 2009-12-15 14:10 jkrell * m3-libs/m3core/src/runtime/common/RTLinker.m3: trace branches the .i3 file implies they aren't nul terminated, so make a local copy use a separate function to avoid the stack bloat in the untraced case and check the global traceInit around a bunch of trace calls (should do that more) 2009-12-15 12:03 jkrell * m3-sys/m3tests/src/m3makefile: fix slash issue broken in merge; only affects test results on Windows 2009-12-15 11:49 jkrell * m3-sys/m3tests/src/: Test.common, m3makefile: merge with release: add 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223 their supporting infrastructure change previous 223 to 224 add 225 for __try/__finally 2009-12-14 23:37 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: InitCondition can use one boolean instead of two pointers for 'cleanup' 2009-12-14 23:33 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: and structure InitCondition like InitMutex in avoiding leak if RegisterFinalCleanup raises 2009-12-14 23:30 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: structure better (as was just done for pthread) 2009-12-14 23:27 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: structure better 2009-12-14 23:19 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: unlock initMu even if RegisterFinalCleanup raises (I think that's what it does upon out of memory even though it is untraced) 2009-12-14 23:18 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: oops -- double unlock in error path 2009-12-14 23:17 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: also need to exit initLock if RegisterFinalCleanup raises 2009-12-14 23:13 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: modify comment slightly 2009-12-14 23:09 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix leak in InitMutex if RegisterFinalCleanup runs out of memory. Note that this requires locking heap while initLock held, which is hopefully ok. We can't store back the mutex and have it be used until we are sure we'll be able to clean it up. (Which also means we can't share the provided Clean function) It would help if RegisterFinalCleanup provided some sort of two phase operation where the space could be reserved first and then the values either filled in later or the space given up. That way we could probably unnest the locks. Consider that shortly. It seems difficult though esp. to provide "space given up" unless maybe that is considered rare and the space just wasted for that case (at least if it is no longer the last entry in the array). 2009-12-14 19:29 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Perhaps closer to what Jay wants: cleanup early if memory tight. 2009-12-14 19:24 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Let's just let the cleanup handler do the cleanup as needed. 2009-12-14 19:06 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: ungeneralize InitMutex since we don't use it for anything else, such as conditions 2009-12-14 18:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: allow for RegisterFinalCleanup running out of memory 2009-12-14 18:38 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: slightly better structure -- more in the try/finally 2009-12-14 18:37 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: once register is done, can leave the try/finally 2009-12-14 18:35 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix leaks under low resources, structured like pthread but then even cleaner (will update pthread) 2009-12-14 18:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: slightly nicer? 2009-12-14 18:31 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix leak of activation under low memory, such as even RegisterFinalCleanup failing 2009-12-14 18:26 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: go back a version; I want to fix this differently; waiting for gc to come around and use RegisterFinalCleanup seems too slow when we know resources low 2009-12-14 18:19 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: rely on RegisterFinalCleanup to do the cleanup in the partial success case, unless it is out of memory, in which case fix the leak of the activation 2009-12-14 18:17 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix leak of activation when even RegisterFinalCleanup is out of memory 2009-12-14 17:56 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: No need for VAR param. 2009-12-14 17:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: remove obvious NIL deref from FreeSlot 2009-12-14 17:46 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3: rename CleanT to CleanThread to match Posix 2009-12-14 17:45 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: FreeSlot/CleanT fixes from head 2009-12-14 17:42 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: and then no null check in CleanT either 2009-12-14 17:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: match pthread FreeSlot style (t => self) 2009-12-14 17:40 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: match pthread FreeSlot fix 2009-12-14 16:15 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: use ZeroMemory 2009-12-14 16:08 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: cleanup: no need for SetContext in this code no need for functions to do extra work within the macros e.g. errno is handled elsewhere signal mask should be too if it isn't no need for sigsetjmp(1) within ProcessLive, sigsetjmp(0) is enough no other need for GetContext, just the sigsetjmp(0) use volatile on local that is used around longjmp add cast from void* so it might compile as C++ (not tested) 2009-12-14 15:57 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: integrate sigaltstack technique from: see http://www.engelschall.com/pw/usenix/2000/pmt-html/ so now AMD64_DARWIN user threads work (Juno starts up) AMD64_DARWIN 10.5 doesn't support get/set/make/swapcontext getcontext returns -1 and errno=ENOTSUP (does it work on 10.4 or 10.6?) will enable for OpenBSD after testing integrated right into the Modula-3 layer instead of implementing get/set/make/swapcontext (some unneeded generalization remains, will cleanup) 2009-12-14 15:50 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix FreeSlot call 2009-12-14 15:33 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Fix Jay's "fix". We need the cleanup routine to avoid a space leak. The activation field needs to stay valid long enough for the cleanup routine to do its job. 2009-12-14 15:27 jkrell * m3-libs/m3core/src/unix/Common/Uconstants.c: stop lying about real vs. virtual timers on Cygwin -- doesn't matter for several reason: cygwin, user threads, can use #ifdef in the now-C code 2009-12-14 13:40 jkrell * m3-libs/m3core/src/: runtime/SPARC64_SOLARIS/RTMachine.i3, runtime/SPARC64_SOLARIS/RTSignal.m3, unix/m3makefile: updates so SPARC64_SOLARIS bootstrap can build (possible tangent related to getting SPARC64_OPENBSD to work -- problem apparently with the floating point constants in RTCollector, such that Behind() is always TRUE, even for the first allocation, so access violate trying to garbage collect too early, when self is still NULL) 2009-12-14 13:04 jkrell * m3-sys/m3cc/src/m3makefile: attempting to build cross compilers from non-Solaris to Solaris failed because of -with-ld=/path configure tries to run /path which isn't present on the host building cm3cg remove all -with-ld=/path and -with-as=/path -with-gnu-ld, -with-gnu-as, -without-gnu-ld, -without-gnu-as are fine and left asis. This does affect even native SOLgnu/SOLsun builds but hopefully no actual effect. These parameters probably only affect building native gcc drivers. (And the values I had were good ones, having gone through some of that in the past) 2009-12-14 12:59 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: add a comment as to at least one reason _XOPEN_SOURCE is here 2009-12-14 08:53 jkrell * m3-sys/m3tests/src/: m3overrides, p2/p212/m3overrides: add missing m3overrides 2009-12-14 08:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix NIL deref 2009-12-14 08:18 jkrell * m3-libs/m3core/src/runtime/common/RTIOc.c: minor cleanup 2009-12-14 08:12 jkrell * m3-libs/m3core/src/runtime/common/RTIOc.c: take advantage of #defines 2009-12-14 08:10 jkrell * m3-libs/m3core/src/runtime/common/RTIOc.c: forgot t add file 2009-12-14 08:09 jkrell * m3-libs/m3core/src/runtime/common/: RTIO.i3, m3makefile: add PutE, PutF, PutG, PutBytes printf("%e", float), etc. 2009-12-14 06:57 jkrell * m3-libs/sysutils/src/POSIX/SystemPosix.m3: simpler and should mean same thing 2009-12-14 06:54 jkrell * m3-libs/sysutils/src/POSIX/SystemPosixC.c: trim this down; maybe remove it? removing it will increase what minimum toolset can be used to build; but we really need to know here if we have user threads or not, I'm seeing a hang on SPARC64_OPENBSD..though I386_OPENBSD works ok? 2009-12-13 18:09 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Don't test <=0.0 time to pause so that we go ahead and check the alert as needed. 2009-12-13 16:39 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: support for WinConstants.obj, if we decide to build it inactive since the file doesn't exist (could clash with unrelated?) 2009-12-13 16:21 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: stack needs to e aligned for SPARC64_OPENBSD, else I get a bus error (alignment) trying to read a pointer from a 4-aligned address in NoteStackLocations (I'm not making this up, I actually see it frequently); I don't feel comfortable with the idea that storage might be deemed dead and overlappable so remove the nested scope too 2009-12-13 16:04 jkrell * m3-libs/m3core/src/C/Common/: CstdioC.c, CstringC.c: remove tempnam, tmpnam, strcpy, strcat to avoid OpenBSD linker warnings (they aren't in the .i3 files; this was for possible improved compat between head and release) 2009-12-13 16:01 jkrell * m3-libs/m3core/src/C/Common/CstdioC.c: More OpenBSD linker warnings: gcc -g -fPIC -lm -lpthread -o cm3 *.o CstdioC.c.o(.text+0x558): In function `Cstdio__tmpnam': /home/jay/cm3-boot-SPARC64_OPENBSD-1/CstdioC.c:43: warning: tmpnam() possibly us ed unsafely; consider using mkstemp() CstdioC.c.o(.text+0x518): In function `Cstdio__tempnam': /home/jay/cm3-boot-SPARC64_OPENBSD-1/CstdioC.c:41: warning: tempnam() possibly u sed unsafely; consider using mkstemp() These aren't even in the .i3 file. 2009-12-13 15:54 jkrell * m3-libs/m3core/src/unix/Common/Uconstants.c: OpenBSD only: just include context.h, not context/setjmp/context.h -- that will hopefully fix bootstrap archives, with their flattened structure, assuming we have h_source(context) (this seems to constantly bite me, maybe a different approach needed..well, one thing would be to move the code to m3core/src/thread/POSIX and not go out of out of our way to emulate get/set/swap/makecontext, but instead just fit into the similar abstractions Tony made ? not a big deal, it's only user threads (and OpenBSD) 2009-12-13 15:45 jkrell * m3-libs/m3core/src/thread.quake: switch SPARC64_OPENBSD to user threads (not quite working, but it is hoped/expected to go well, whereas we've given up for now on OpenBSD pthreads (see I386_OPENBSD) 2009-12-13 15:35 jkrell * m3-libs/m3core/src/C/Common/: Cstring.i3, CstringC.c: OpenBSD linker rightfully complains (warns) about strcpy and strcat: new "/cm3/pkg/m3core/SPARC64_OPENBSD/libm3core.a" -> linking m3bundle /cm3/pkg/m3core/SPARC64_OPENBSD/libm3core.a(CstringC.o)(.text+0xfc): In function `Cstring__strcpy': /dev2/cm3/m3-libs/m3core/SPARC64_OPENBSD/../src/C/Common/CstringC.c:19: warning: strcpy() is almost always misused, please use strlcpy() /cm3/pkg/m3core/SPARC64_OPENBSD/libm3core.a(CstringC.o)(.text+0x15c): In functio n `Cstring__strcat': /dev2/cm3/m3-libs/m3core/SPARC64_OPENBSD/../src/C/Common/CstringC.c:21: warning: strcat() is almost always misused, please use strlcat() $ so provide only the old style <* extern *> and not a wrapper, so that we don't foist the warning on every Modula-3/OpenBSD user, just anyone actually using these bad functions. 2009-12-13 14:34 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile: build this for all OpenBSD systems, not just I386_OPENBSD (PPC_OPENBSD and AMD64_OPENBSD probably need repair and then ongoing tinderbox and/or hudson (preferably Hudson) 2009-12-13 14:32 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: add function IsOpenBSD like IsInterix, thin wrapper over TARGET_OS variable, in case it isn't defined 2009-12-13 14:30 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: OpenBSD/sparc64 continues the year 2038 bug and has undeclared padding in struct timespec -- adjust assertions for it 2009-12-13 14:11 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: move the OpenBSD lines ahead of the Sparc lines, so that this compiles for OpenBSD/sparc64 2009-12-13 13:55 jkrell * m3-sys/cm3/src/m3makefile: fix for m3unix.h => m3core.h 2009-12-13 13:27 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/context.c: very very small tweaks: comments, comment out an unused define, put in & when taking address of function We should probably move all this to m3core\src\thread\POSIX. 2009-12-13 13:03 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: config.c, context.c, context.h, tcontext.c: adapt get/set/make/swapcontext for OpenBSD/sparc64 Bonus points that it and OpenBSD/x86 survive various gcc optimizations including -O2 and -O3. 2009-12-13 13:03 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/tcontext.c: file tcontext.c was added on branch release_branch_cm3_5_8 on 2009-12-22 17:13:53 +0000 2009-12-13 09:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: use sigsetjmp/siglongjmp/sigjmp_buf 2009-12-13 09:18 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: context.c, context.h: use sigsetjmp/siglongjmp/sigjmp_buf instead 2009-12-13 08:59 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: context.c, tcontext.c: don't waste time saving/restoring signal mask twice, once is enough, add test case from other directory 2009-12-13 06:57 jkrell * m3-libs/m3core/src/C/Common/: CerrnoC.c, CsignalC.c, CstdioC.c, CstdlibC.c, CstringC.c: provide one m3core.lib.sa that should work with both libcmt.lib and msvcrt.lib (ie: suppress __declspec(dllimport) on functions, and #if out data (stdin/out/err)) 2009-12-13 06:17 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: UINT32 not in older headers, use UINT 2009-12-13 05:54 jkrell * m3-libs/m3core/src/thread/Common/: ThreadDebug.c, ThreadDebug.i3: update from head (copy) 2009-12-13 05:52 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: update again from head (copy) 2009-12-13 04:40 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: state of the art/stake in the ground for cloned header verification maybe/hopefully shorter idioms can be found? 2009-12-13 03:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix AlertJoin, oops 2009-12-13 03:54 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: move GetStackBounds to Modula-3 we assert that we have the size of the C struct correct, though we don't assert about its fields, probably we should 2009-12-13 03:49 jkrell * m3-ui/vbtkit/src/lego/: m3makefile, WIN32/ScrollerVBTClass.m3: copy from release: wild guess that fixes mentor startup crash also works if we just use the Posix version I don't think this is related to m3core churn! 2009-12-13 03:37 jkrell * m3-ui/vbtkit/src/lego/: m3makefile, WIN32/ScrollerVBTClass.m3: I forgot to mention: I'm really just guessing here. It seems to work. 2009-12-13 03:36 jkrell * m3-ui/vbtkit/src/lego/: m3makefile, WIN32/ScrollerVBTClass.m3: fix this crash starting up mentor in win32 specific code: *** *** runtime error: *** Attempt to reference an illegal memory location. *** pc = 0x12b16a8 = GetAttributes + 0x1ed in ..\src\lego\WIN32\ScrollerVBTCl ass.m3 *** Stack trace: FP PC Procedure --------- --------- ------------------------------- 0x2e2f670 0x846ced SystemError + 0x66 in ..\src\runtime\NT386\RTSignal.m3 0x2e2f720 0x12b16a8 GetAttributes + 0x1ed in ..\src\lego\WIN32\ScrollerVBTClas s.m3 0x2e2f7f8 0x12e95c8 AddView + 0x101e(!) in ..\src\lego\ViewportVBT.m3 0x2e2f844 0x12e762e Init + 0x30e in ..\src\lego\ViewportVBT.m3 0x2e2f964 0x1234fc7 pViewport + 0x512 in ..\src\FormsVBT.m3 0x2e2f9c4 0x12234b1 Item + 0x48b in ..\src\FormsVBT.m3 0x2e2f9f0 0x124107a OneChild + 0xf8 in ..\src\FormsVBT.m3 0x2e2faf8 0x1227520 pShape + 0x19c in ..\src\FormsVBT.m3 0x2e2fb58 0x12234b1 Item + 0x48b in ..\src\FormsVBT.m3 0x2e2fb84 0x124107a OneChild + 0xf8 in ..\src\FormsVBT.m3 ......... ......... ... more frames ... Really it'd be super nice if we could unfork these two directories. They are mostly the same, except the Posix directory gets more attentin fix this crash starting up mentor in win32 specific code: *** *** runtime error: *** Attempt to reference an illegal memory location. *** pc = 0x12b16a8 = GetAttributes + 0x1ed in ..\src\lego\WIN32\ScrollerVBTCl ass.m3 *** Stack trace: FP PC Procedure --------- --------- ------------------------------- 0x2e2f670 0x846ced SystemError + 0x66 in ..\src\runtime\NT386\RTSignal.m3 0x2e2f720 0x12b16a8 GetAttributes + 0x1ed in ..\src\lego\WIN32\ScrollerVBTClas s.m3 0x2e2f7f8 0x12e95c8 AddView + 0x101e(!) in ..\src\lego\ViewportVBT.m3 0x2e2f844 0x12e762e Init + 0x30e in ..\src\lego\ViewportVBT.m3 0x2e2f964 0x1234fc7 pViewport + 0x512 in ..\src\FormsVBT.m3 0x2e2f9c4 0x12234b1 Item + 0x48b in ..\src\FormsVBT.m3 0x2e2f9f0 0x124107a OneChild + 0xf8 in ..\src\FormsVBT.m3 0x2e2faf8 0x1227520 pShape + 0x19c in ..\src\FormsVBT.m3 0x2e2fb58 0x12234b1 Item + 0x48b in ..\src\FormsVBT.m3 0x2e2fb84 0x124107a OneChild + 0xf8 in ..\src\FormsVBT.m3 ......... ......... ... more frames ... Really it'd be super nice if we could unfork these two directories. They are mostly the same, except the Posix directory gets more attention and bug fixes while the Win32 one languishes. Surely they can share more code? 2009-12-13 03:22 jkrell * m3-ui/vbtkit/src/lego/m3makefile: Mentor crashes starting up. Even if I go back a week or a month in the release branch. (I haven't yet tested RC2, RC3, RC4, etc.) If we use the "Posix" scroller stuff, no problem. So do that for now. Probably some problem in the scroller code around locking. There were others recently (even on X) 2009-12-13 02:54 jkrell * m3-ui/ui/src/winvbt/WinContext.m3: copy from head: let's Juno get much further and fix error checks 2009-12-13 01:38 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: safe another line wrt VAR add explicit usual check to AlertJoin that GetActivation() # NIL pass GetActivation to XJoin (or NIL for non-alert version) REMOVE check in Pause that GetActivation() # NIL (debatable, but in fact it doesn't need any thread state, it just converts float seconds to integer milliseconds and calls Sleep) reduce check in XPause then as well (if NOT alertable) add more asserts 2009-12-13 01:27 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3: should fix it to compile 2009-12-13 01:16 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: merge Pause and AlertPause into XPause(alertable: BOOLEAN) to share a little code and resemble pthreads as part of this, split TestAlert into TestAlert and XTestAlert TestAlert = XTestAlert(GetActivation()) Fix bug where AlertPause(<=0) does not recieve alerts. Rename InnerWait to XWait to match pthreads. 2009-12-13 01:14 jkrell * m3-libs/m3core/src/thread/Common/: ThreadDebug.c, ThreadDebug.i3: - don't wrap #includes with extern "C" - always enable it still requires @m3debugthreads though to really kick in - tune the array size down due to always being enabled - add some functions like Pause, XWait, etc. 2009-12-13 00:30 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: cleanup: save a line on VAR; try to initialize locals at declaration more; always assert wait results should be no semantic change 2009-12-13 00:14 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: whitespace at start/end of pragmas 2009-12-13 00:07 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: comments and assertions (comment was leftover from lockless version 2009-12-12 16:24 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: inline DeleteActivation into its only caller CleanT 2009-12-12 16:20 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove unused imports (from removing the RTIO (matches head again) 2009-12-12 16:19 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: some cleanup: remove the RTIO, alter a comment, alter asserts 2009-12-12 16:17 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: darn a little sloppy this time; previously all the release versions were good; copy from head again: in particular the fix to not leak all the critical sections as well take the Win32-idiomatic join implementation, and using RegisterFinalCleanup to run the cleanup 2009-12-12 16:12 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: There's actually no window of opportunity for failure here so just do things more directly. Also remove some micro-optimizations. 2009-12-12 16:07 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: cleanup via RegisterFinalCleanup 2009-12-12 15:49 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix leak from when I was still getting the PCRITICAL_SECTION thing to compile 2009-12-12 15:49 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: some RTIO, but I see the problem -- the change to wait on the thread handle instead of a condition, uses freed memory instead of relying on garbage collection 2009-12-12 15:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: use my helper function DelHandle to shrink code for readability 2009-12-12 15:16 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: We have portable idioms, and now good implementations of them, but still, it seems far more sensible for Join to wait on the thread itself and not a separate condition. (I think even pthreads can do similar -- pthread_join, at least in the non alertable case. One reason historically not to use this, in the Win32 implementation, is the thread cache; if we cache threads, then the threads are never signaled.) The check for multiple joins is now a bit racy, but that's ok, we don't have to always detect it. We could tighten that up if it mattered (with more locking). 2009-12-12 14:48 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: port race condition fix from head: don't return pthread handle from thread_create instead, in new thread, store pthread_self It isn't clear otherwise if the handle gets stored before it is used. I had seen the pthread_detach call fail previously. 2009-12-12 14:40 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: copy from head: NIL check vs. range check 2009-12-12 14:39 jkrell * m3-libs/m3core/src/runtime/common/RTHeapStats.m3: copy from head: < vs. <= 2009-12-12 14:35 jkrell * m3-libs/m3core/src/m3core.h: whitespace 2009-12-12 14:30 jkrell * m3-libs/m3core/src/thread/: Common/ThreadDebug.i3, WIN32/ThreadWin32.i3, WIN32/ThreadWin32.m3, WIN32/ThreadWin32C.c: copy from head: no more giant lock, move some code back to Modula-3 from C 2009-12-12 14:29 jkrell * m3-libs/m3core/src/thread/Common/ThreadDebug.i3: change InnerWait parameter from REFANY (self) to ADDRESS (activation); forgot to commit this a while ago and things broken otherwise 2009-12-12 14:26 jkrell * m3-libs/m3core/src/win32/WinNT.i3: copy from head: remove some parens, and use sensible 3.6 definition of PRTL_CRITICAL_SECTION; I should check if we're inserting 'barrier' uses unnecessarily here 2009-12-12 14:23 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: don't bother returning result from SetActivation, since nobody looks at it 2009-12-12 14:15 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: comments 2009-12-12 14:14 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix comment 2009-12-12 14:13 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: restore more like traditional structure where more is done in Modula-3 However still with some interesting differences. - the giant lock is still gone, alert is still its own event :) - CONTEXT is still abstracted into C At least getting the fields; we can consider getting the size from C and then doing the allocation in Modula-3 (Getting CONTEXT right, and not using C, would threaten a LOT of duplication for VERY little platform variation; for the most part, Win32 == Win64 except for SIZE_T, sizeof(void*), ULONG_PTR, DWORD_PTR, INT_PTR, size_t, ptrdiff_t, which are differences easy to deal with, AND CONTEXT, which is difficult; there are also differences a la InterlockedExchange vs. InterlockedExchangePointer) - restore Self() and FreeSlot to being lockful like pthreads (now that we never call Self() internally!) - <* ASSERT BYTESIZE(CRITICAL_SECTION) = sizeof(CRITICAL_SECTION) *> - the static locks are still allocated in C, as our debugging support is very inadequate and this helps tremendously (the assert is still needed for the dynamic locks) Unification with pthreads is made more difficult here, but in my opinion the experimenting was a success and we CAN do such unification. (In particular, I no longer have "LockRE", no longer compute if stack grows down, I'm willing to assume it) Still we are structured like pthreads with ProcessLive, ProcessOther, and the suspend/resume code could be easily moved to C as well. - The relatively new function GetStackBounds is still in C but it could be moved to Modula-3. - assert in BroadcastHeap that we have the lock, so we can try not introducing the InterlockedCompareExchange dependency, for more support across operating system versions RTOS.i3 vaguely implies this is correct. Alternatively we can introduce a tiny lock for this. (Even if this is more dependent on C header cloning, that cloning can be more like m3core/unix where we wrap every function and implement all constants as C variables; we don't absolutely have to invent new interfaces for the Modula-3/C bridging) 2009-12-12 14:10 jkrell * m3-libs/m3core/src/win32/WinNT.i3: restore historical (3.6) definition of PCRITICAL_SECTION, so that NEW() works with it (I get compile errors otherwise that I don't understand, and the historical definition follows the usual pattern, the contemporary one is wierd to me; if needed, we can replace everything with properly sized integers) 2009-12-12 12:57 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: remove the abstraction layer cost without removing the abstraction layer (next we'll remove the layer, the experiment proved successful, we can bring it back when we unify pthreads/win32) 2009-12-12 12:35 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: eliminate giant lock Use the algorithm from the Java implementation. Adding another lock per condition, since they have the one user and condition lock, but we apparently let folks use multiple locks with the same condition. (Multiple conditions per lock makes sense to me; multiple locks per condition does not.) also eliminate all uses of Self() (like pthreads) Now putting slotLock back in FreeSlot and Self() not so bad, esp. in the interest of unifying with pthreads. Not done yet. (since we no longer call Self, and FreeSlot is rare) 2009-12-12 12:26 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix lockinglevel comments suspend_cnt giant => activeLock "Mu" => "Lock" the name "lock" is used because it is neither the pthread term ("mutex") nor the win32 term ("criticalsection") so therefore we can hopefully agree to use it in some future unified version 2009-12-12 10:27 jkrell * m3-libs/m3core/src/win32/: WinConstants.c, WinUser.pl, WinUser.txt: incorporate (voluminous) WinUser.i3 content in a fashion -- fully #ifdefed, as the headers vary a lot through the years 2009-12-12 10:27 jkrell * m3-libs/m3core/src/win32/WinConstants.c: file WinConstants.c was added on branch release_branch_cm3_5_8 on 2009-12-20 12:50:42 +0000 2009-12-12 10:27 jkrell * m3-libs/m3core/src/win32/WinUser.pl: file WinUser.pl was added on branch release_branch_cm3_5_8 on 2009-12-20 12:50:42 +0000 2009-12-12 10:27 jkrell * m3-libs/m3core/src/win32/WinUser.txt: file WinUser.txt was added on branch release_branch_cm3_5_8 on 2009-12-20 12:50:42 +0000 2009-12-12 08:28 jkrell * m3-libs/m3core/src/win32/WinConstants.c: add WinNLS.i3 content 2009-12-12 08:23 jkrell * m3-libs/m3core/src/win32/WinConstants.c: very viable prototype that reduces header cloning; note that current MSDN documentation lists explicit values, probably to aid independent header writers? 2009-12-12 08:18 jkrell * m3-libs/m3core/src/win32/WinNT.i3: remove a few parens 2009-12-12 07:11 jkrell * m3-libs/m3core/src/win32/WinBase.c: remove prototype 2009-12-12 06:46 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: move #pragmas to under #if 0 since not needed elsewhere 2009-12-12 06:26 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: go back to initLock instead of InterlockedCompareExchange for greater toolset/processor/operatingsystem compatibility 2009-12-12 06:11 jkrell * m3-libs/m3core/src/win32/WinBase.c: prototype, that I probably won't use 2009-12-12 05:46 jkrell * m3-libs/m3core/src/win32/WinBase.c: trim down 2009-12-12 05:43 jkrell * m3-libs/m3core/src/win32/WinBase.c: copy WinBase.i3 to WinBase.c to consider making interlocked stuff more available (e.g. as long as the process supports it, not the compiler/headers/libraries/OS) 2009-12-11 15:53 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove pointless variable 2009-12-11 15:53 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: go back a version 2009-12-11 15:46 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: shrink a little 2009-12-11 15:44 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: "Rewrite" alerting to use a separate event This cuts out a large use of the giant lock. There is no longer the two booleans alerted and alertable. "alertable" isn't needed, just have Alert set the event. alerted is embodied in the event's state. Atomtic test and clear alerted is provided by WaitForSingleObject and an auto reset event. downsides: Thread is larger -- two booleans (two bytes) replaced by a handle Thread is slower to create -- an extra kernel object. TestAlert is much slower: WaitForSingleObject(timeout = 0) a kernel call instead of reading a boolean (possibly under giant lock, but the giant lock holds do/did all appear brief, judging from the code) We /might/ be able to delay creating the handle? Until someone does an AlertWait or Alert? We might be able to synthesize alerting with Interlocked? Maybe but having two events seems good. possible alternatives: the boolean for alerted could come from elsewhere, in particular the Win32 alerted feature Downside here is I'm not sure how to easily set it on Win9x. On NT it is simply QueueUserAPC (introduced in what version?) Maybe it is by completing arbitrary I/O to an arbitrary handle? upsides: one more large dent toward removing the giant lock and hopefully therefore being much more scalable And we know how to remove it entirely, without dropping pre-Vista support (do like Java, with its tricky counters/tickets system) 2009-12-11 14:57 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Tidy a little. Why do we not check stackbase=NIL anymore in ProcessOther? 2009-12-11 14:47 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: Match comment length. 2009-12-11 13:33 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: go back a version (undo safekeeping) 2009-12-11 13:32 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: safekeeping: unfinished experiment around using one long with bitfields for alert and alerted and interlocked operations I think we can win instead with simply Alert() SetEvent(alertEvent) and dispense with alertable entirely If a thread becomes alertable, it'll just wait on two events. The alert will always stick around until checked. 2009-12-11 12:43 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: use WinBase.InterlockedIncrement/Decrement (I've gone back and forth on this; cloning Win32 headers just once isn't as bad as n times for FreeBSD/OpenBSD/NetBSD/Solaris/Irix/AIX/OpenVMS/Linux/Tru64/Darwin, and if we do wrap, we can do it over in m3core/win32 like we do in m3core/unix, instead of in the client 2009-12-11 12:38 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: move comment 2009-12-11 12:34 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: from head: use InterlockedExchange and InterlockedCompareExchange on HeapDoSignal to ensure its thread safety (probably just storing instead of Exchange would do) 2009-12-11 12:33 jkrell * m3-libs/m3core/src/win32/WinBase.i3: from head: add InterlockedExchange and InterlockedCompareExchange 2009-12-11 12:32 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: make HeapDoSignal definitely thread safe by manipulating it only with Interlocked functions 2009-12-11 12:27 jkrell * m3-libs/m3core/src/win32/WinBase.i3: add InterlockedExchange and InterlockedCompareExchange 2009-12-11 12:14 jkrell * m3-libs/m3core/src/thread/WIN32/: SchedulerPosix.m3, ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: copy from head: lengthen some module variable names: inCritical => HeapInCritical do_signal => HeapDoSignal mutex => HeapWaitMutex condition => HeapWaitCondition remove writeToForceGcInteractionOutsideOfGiantLock reorder ThreadWin32C.c some use memory barriers for paranoia replace initLock with InterlockedCompareExchangePointer don't have BroadcastHeap take heap lock, its caller already should (right?); this can go either way, really, since it is a recursive lock..let's see, the pthread version can go either way..let's change the BOOLEAN to an INTEGER so we are sure that writes to it are atomic then we should be ok 2009-12-11 12:05 jkrell * m3-libs/m3core/src/: runtime/common/RTThread.i3, thread/POSIX/ThreadPosix.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadWin32.m3: port from head: rename parameter in function pointer type from "stop" to "limit" note that there are still "start, stop" pairs, in addition to the "start, limit" pairs 2009-12-11 11:42 jkrell * m3-libs/m3core/src/runtime/WIN32/RTOS.m3: port from head: very small change that makes debugging sometimes much better (break right into debugger, don't waste time trying to suspend threads and dump stacks, the debugger does a much better job of suspending threads and usually (if you have symbols) of dumping stacks) If you aren't using a debugger, then no change. The thing about RestoreHandlers can probably just be removed since in my brief experience the DebugBreak works fine before it. Really it can probably just go like this: If debugger debugbreak ELSE suspend others, maybe dumpstack one of the important parts restore handlers probably can be removed Exit(-1) also important though maybe should be TerminateProcess which is much quicker/cleaner doesn't run all the dllmains though currently I just made the small change of moving the debugbreak much earlier 2009-12-11 11:38 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: port from head: just a comment, but it reduces the head vs. release diffs 2009-12-11 11:29 jkrell * m3-libs/m3core/src/runtime/common/RTLinkerX.i3: copy from head: just a insignificant reordering 2009-12-11 11:24 jkrell * m3-libs/m3core/src/thread/WIN32/m3makefile: port from head -- make ThreadContext private -- it is after all the most unportable thing in Win32 let alone Modula-3 libraries! (the MSDN documentation says 'see header files for the fields' or somesuch) 2009-12-11 11:18 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: port AMD64_DARWIN assertion failure fix from head 2009-12-11 11:14 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: port simple race condition fix from head related to stopping a thread before/after it has any traced references 2009-12-11 11:12 jkrell * m3-libs/m3core/src/float/: DS3100/FloatMode.m3, IRIX5/FloatMode.m3, VAX/FloatMode.m3: copy from head: change get/set to direct access via an unsafe pointer 2009-12-11 11:10 jkrell * m3-libs/m3core/src/float/: DS3100/FloatMode.m3, IRIX5/FloatMode.m3, VAX/FloatMode.m3: ThreadInternal => RTThread 2009-12-11 11:02 jkrell * m3-libs/m3core/src/: float/DS3100/FloatMode.m3, float/IRIX5/FloatMode.m3, float/VAX/FloatMode.m3, runtime/NT386/RTSignal.m3, runtime/WIN32/RTOS.m3, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/common/RTLinkerX.i3, runtime/common/RTThread.i3, runtime/common/m3makefile, runtime/ex_frame/RTExFrame.m3, runtime/ex_frame/RTException.m3, thread/Common/ThreadInternal.i3, thread/Common/m3makefile, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/SchedulerPosix.m3, thread/WIN32/ThreadWin32.m3: manually apply pervasiv diff from head: ThreadInternal => RTThread This is one of the largest pieces differing between head and release and making it "difficult" to port changes. 2009-12-11 10:53 jkrell * m3-libs/m3core/src/runtime/common/RTMiscC.c: bring over new file from head 2009-12-11 10:50 jkrell * m3-libs/m3core/src/runtime/common/: RTAllocator.m3, RTCollector.m3: restore orphaned comment into position 2009-12-11 10:46 jkrell * m3-libs/m3core/src/runtime/POSIX/RTThread.i3: delete another unused file 2009-12-11 10:44 jkrell * m3-libs/m3core/src/runtime/POSIX/: RTThreadStk.m3: delete unused file 2009-12-11 01:52 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: retry once after short delay under low resources 2009-12-11 01:46 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: use InterlockedCompareExchangePointer in place of initLock 2009-12-11 01:40 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: prepare to remove initLock in favor of InterlockedCompareExchange 2009-12-11 01:25 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: #if 0 out LockE code at least for now 2009-12-11 01:23 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: back to LockRE at least for now They do have nice properties and it is hard to chose. good: They have brief spins multiprocessor and they delay allocating the kernel object until there is contention. So they scale better under brief contention and are much cheaper to create. bad: They are larger. (and we have to add a boolean to avoid the recursion) bad: Prior to XP there were problems under low memory. bad: We are less likely to remove the indirection for them. But we have that in pthreads too. 2009-12-11 01:17 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: rename some variables for clarity -- too much in this module for such short names I think 2009-12-11 01:05 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3: use unique opaque types and fix a harmless typo it revealed 2009-12-11 01:02 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: fix for low resources (but we should really just move LockE implementation into Modula-3 since we control it enough, will do -- remove a level of indirection, but also lose out on inlined interlocked intrinsics..tradeoff) 2009-12-11 00:39 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: add volatile 2009-12-11 00:36 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: provide LOCKE macro analogous to LOCKRE macro; neither has as much point as in the past when we generated per-lock functions 2009-12-11 00:33 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: fix for low memory 2009-12-11 00:31 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: a little more reordering and paranoia 2009-12-11 00:13 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: a little more reordering 2009-12-11 00:10 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: reordering and comments (so we might switch some LockRE_t to LockE_t, without adding declarations) 2009-12-11 00:02 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: fix signed/unsigned mismatch 2009-12-10 17:31 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: use the smaller exclusive locks based on Java's implementation Note that they are more expensive to initialize because the kernel object is allocated up-front remove writeToForceGcInteractionOutsideOfGiantLock 2009-12-10 17:12 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: try again: BroadcastHeap's caller needs to have heap lock already 2009-12-10 17:03 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: go back a version 2009-12-10 16:56 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: BroadcastHeap's caller must already have the heap lock 2009-12-10 15:39 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32C.c: Unlock => UnlockRE 2009-12-10 15:38 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32C.c: Unlock => UnlockRE also typedef CRITICAL_SECTION LockRE_t and push that around 2009-12-10 15:21 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadContext.i3, ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: copy from head plus minor changes RTThread vs. ThreadInternal stop vs. limit in parameter names several changes from head: movement of some fields from Thread.T (traced) to Thread.Activation (untraced) LockMutex/UnlockMutex is just EnterCriticalSection/LeaveCriticalSection reads from global slots array are lockless (this is how Self() translates from untraced to traced) stack boundary is accurately known (not tested on Win9x) InitialStackBase removed in favor of something more efficient (not tested on Win9x) hack to verify stack addresses removed (removal of VerifySP function) some x86-isms factored into #ifdefed C the size and the fields of CONTEXT static locks changed back to variables instead of functions (really this could go either way) write into traced objects "immediately" before taking giant lock to greatly mitigate deadlock (what is the right fix here? To merge giantlock and heaplock??) (to check that allocator only uses locks and not conditions, now that locks don't use giantlock?) 2009-12-10 15:08 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: rename Lock => LockRE for recursive/exclusive so that we might introduce LockE for exclusive 2009-12-10 12:38 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: move comment for readabilty 2009-12-10 12:26 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: put back assertion that alertable is false upon LockMutex 2009-12-10 12:18 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Change LockMutex into basically just EnterCriticalSection, UnlockMutex into basically just LeaveCriticalSection. No more use of giant lock or Self() in them. This precludes an optimization of condition variables mentioned by Birrel (not shown by him, but easy to understand, but also it was never done here). Before long we'll probably just switch to Java's implementation anyway, which doesn't have a giant lock (if/when I understand it better, or maybe Tony will do this, since it might improve pthreads also and sounds like he wants to). Note this makes LockMutex/UnlockMutex very much resemble the .v0 and .v1 files that were left here. (which I went back and made the code look more like; not maintaining a uint32 "holder" threadi but just a boolean "held", but without the cache and still using C to know about the size of a critical section) remove incorrect lockingLevel comments in the perf code Note that I think perflocking should be moved one line up in LockMutex, but I match pthreads here, and it doesn't really matter 2009-12-10 11:26 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: and then stop writing to alertable in LockMutex (so that giant lock not needed in LockMutex/UnlockMutex) 2009-12-10 11:23 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: prepare to remove use of giant lock from LockMutex / UnlockMutex modify slightly alertable so that LockMutex doesn't have to change it 2009-12-10 07:44 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: move comments for readability 2009-12-10 07:38 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Fix race condition that I saw "fail", around management of stack bounds and the read, check, read again pattern. Instead just read once and check. (There is an assumption of a certain level of non-optimization here; let's throw in barriers shortly.) 2009-12-10 07:13 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix extraction of stack pointer from context (fixes hang) 2009-12-10 07:09 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: greatly mitigate the possible giantLock/heapLock deadlock Another problem was found, so maybe this wasn't really there, maybe. 2009-12-09 14:26 jkrell * m3-libs/m3core/src/C/Common/CstdioC.c: remove possibly less portable P_tmpdir -- MSVC stdio.h seems to /sometimes/ though rarely not defined it? 2009-12-09 14:20 jkrell * m3-libs/m3core/src/C/Common/: CerrnoC.c, CsignalC.c, CstdioC.c, CstdlibC.c, CstringC.c, m3makefile: bring files from head notice no change to the *3 files, so most of this goes unused when running binaries built against the release *.i3 files, but for binaries from head, there will be some extra exports that might let them work and some existing wrappers are "rewritten" as well 2009-12-09 14:17 jkrell * m3-libs/m3core/src/: m3core.h, m3makefile: bring over files from head 2009-12-09 13:08 jkrell * m3-libs/m3core/src/runtime/WIN32/RTOS.m3: just enter debugger right away, don't waste time and state suspending other threads, the debugger will suspend all and won't care if they are busy in the Modula-3 heap allocator 2009-12-09 08:57 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: go back a version 2009-12-09 08:54 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: keep alertable = FALSE except in AlertWait, so that LockMutex doesn't have to touch it, as part of removing giant lock from LockMutex / UnlockMutex 2009-12-09 08:45 jkrell * m3overrides: comment out _NETOBJ_OVERRIDE, _NETOBJ_OVERRIDE until I understand better how this works 2009-12-07 14:18 jkrell * m3overrides: set _NETOBJ_OVERRIDE, _SHAREDOBJ_OVERRIDE 2009-12-07 13:51 jkrell * caltech-parser/: m3overrides, cit_common/src/m3overrides, cit_util/src/m3overrides, drawcontext/dcpane/src/m3overrides, drawcontext/kgv/src/m3overrides, drawcontext/src/m3overrides, drawcontext/test/src/m3overrides, hack/src/m3overrides, m3browserhack/src/m3overrides, m3tmplhack/src/m3overrides, paneman/kemacs/src/m3overrides, paneman/src/m3overrides, parserlib/m3overrides, parserlib/kext/src/m3overrides, parserlib/klex/src/m3overrides, parserlib/klexlib/src/m3overrides, parserlib/ktok/src/m3overrides, parserlib/ktoklib/src/m3overrides, parserlib/kyacc/src/m3overrides, parserlib/kyacclib/src/m3overrides, parserlib/parserlib/src/m3overrides, parserlib/parserlib/test/src/m3overrides, parserlib/parserlib/test_stdin/src/m3overrides, term/src/m3overrides: just include toplevel m3overrides 2009-12-07 13:49 jkrell * m3overrides: add commented out the caltech-parser packages that we don't have 2009-12-07 13:46 jkrell * m3overrides: add some caltech-parser stuff 2009-12-07 12:55 jkrell * m3-libs/libm3/src/rw/: AutoFlushWr.m3, FileWr.m3, Rd.m3, UnsafeWr.i3, Wr.m3: copy from head (nudged by Peter's mail): have AutoFlush always copy all the fields copying not all of them is a micro optimization and more importantly, hard to know the correctness of some functions Foo where already implemented as LOCK UnsafeFoo this seems like a good pattern; do it more 2009-12-07 12:19 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: a few mechanical wrappers 2009-12-07 12:09 jkrell * m3-libs/m3core/src/C/Common/: CsignalC.c, CstdioC.c, CstdlibC.c, CstringC.c: use m3core.h's macros for wrappers, at least for functions that don't return void 2009-12-07 11:45 jkrell * m3-libs/m3core/src/: runtime/POSIX/RTOSbrk.c, runtime/POSIX/RTOSmmap.c, thread/POSIX/ThreadPosixC.c, thread/PTHREAD/ThreadApple.c, thread/PTHREAD/ThreadFreeBSD.c, thread/PTHREAD/ThreadPThreadC.c, time/POSIX/DatePosixC.c, time/POSIX/TimePosixC.c, unix/Common/Uconstants.c, unix/Common/UdirC.c, unix/Common/Uexec.c, unix/Common/Ugrp.c, unix/Common/Uin.c, unix/Common/Umman.c, unix/Common/Unetdb.c, unix/Common/UnixC.c, unix/Common/UnixLink.c, unix/Common/Uprocess.c, unix/Common/Upwd.c, unix/Common/Usignal.c, unix/Common/Usocket.c, unix/Common/UstatC.c, unix/Common/UtimeC.c, unix/Common/Uucontext.c, unix/Common/Uugid.c, unix/Common/Uuio.c, unix/Common/Uutmp.c: switch from m3unix.h to m3core.h 2009-12-07 11:39 jkrell * m3-libs/m3core/src/: m3makefile, unix/Common/m3unix.h: add m3core.h and have m3unix.h just #include it 2009-12-07 11:38 jkrell * m3-libs/m3core/src/m3core.h: change #ifdef guard to reflect new name 2009-12-07 11:38 jkrell * m3-libs/m3core/src/m3core.h: file m3core.h was added on branch release_branch_cm3_5_8 on 2009-12-09 14:17:47 +0000 2009-12-07 11:37 jkrell * m3-libs/m3core/src/m3core.h: initial copy of m3unix.h 2009-12-07 11:29 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: resolve the race setting act.handle by setting it in ThreadBase to pthread_self before adding the thread to the active list; this can happen as far as I can tell before pthread_create actually returns or writes the resulting handle in the creating thread 2009-12-07 11:03 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fill in some LockingLevel comments empirically/transitively so I can see how act.handle is dealt with 2009-12-07 10:57 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: whitespace to line up columns; cosmetic to hilight the critical line in RunThread 2009-12-07 10:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3, ThreadPThreadC.c: account for that I moved nulling stackbase to outside a lock -- don't reread it after checking it, just read it once and check it once after that (I don't understand this heap thread state stuff, ok?) 2009-12-07 09:15 jkrell * m3-libs/m3core/src/unix/Common/Uprocess.c: fix typo 2009-12-07 09:11 jkrell * m3-libs/m3core/src/unix/Common/: UdirC.c, Uin.c, Umman.c, Uprocess.c, Upwd.c, Usignal.c, Uugid.c, Uuio.c, Uutmp.c, m3unix.h: put extern "C" in the macros so that the really simple files can be even a few lines shorter (really we could just delete the extern "C" probably, but I still like the idea) 2009-12-07 09:07 jkrell * m3-libs/m3core/src/unix/Common/: UdirC.c, Upwd.c, UstatC.c, Uucontext.c: mechanize a few more wrappers 2009-12-07 08:59 jkrell * m3-libs/m3core/src/unix/Common/: Uprocess.c, Usignal.c, Usocket.c, Uugid.c, Uuio.c, Uutmp.c, m3unix.h: mechanize more wrappers 2009-12-07 08:48 jkrell * m3-libs/m3core/src/unix/Common/: UdirC.c, Uexec.c, Uin.c, Umman.c, UnixC.c, m3unix.h: mechanize wrappers via preprocessing 2009-12-07 08:00 jkrell * m3-libs/m3core/src/C/Common/: CsignalC.c, CstdlibC.c, CstringC.c: new files from head, not active in release, may or may not become so 2009-12-07 07:55 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c: new files from head 2009-12-07 07:54 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Try a bit to deal with low resources in more places: sem_init pthread_attr_init pthread_key_create pthread_setspecific These are all documented as possibly returning one or more of: ENOMEM ENOSPC (sem_init) EAGAIN 2009-12-07 07:17 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: partial merge from head use pthread_detach_self() C function that does pthread_detach(pthread_self()) instead of relying on act.handle, which should work; hm? some cosmetic commenting drop traced refs by storing NIL, shouldn't make a difference stackbase was already managed roughly like head 2009-12-07 07:03 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: remove some derefences of traced references, remove RTIO use I had just put in, NIL the traced references that we aren't allowed to use (which should get optimized away but ok either way) 2009-12-07 06:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: slightly reduce critical section and remove unnecessary variable 2009-12-06 19:12 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Revert to structure like 163. We are seeing the same complaint Jay had commented on in the commit for 170. A race unless we hold activeMu when setting stackbase. 2009-12-06 15:18 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: cover more of the stack for the GC to find references; this seems to significantly reduce the problems, but not eliminate them; the detach often fails still, r=3, and capturing local handle := me.handle and then asserting they match often finds the local handle = NIL 2009-12-06 14:35 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: print some information when the error occurs 2009-12-06 13:39 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile: fix incrementality and remove echo 2009-12-06 13:37 jkrell * m3-libs/m3core/src/time/POSIX/: DateBsd.m3, DateBsdNoLock.m3, m3makefile: use grep -v to remove the references to " mu " in DateBsd.m3 when compiling for KernelThreads/pthreads, as their threading library will swap the localtime/asctime/etc. buffers when they swap threads (or switch to a new bank of thread locals, etc.) Unnecessary locks are bad. 2009-12-06 13:21 jkrell * m3-libs/m3core/src/time/POSIX/DateBsdNoLock.m3: initial copyunchanged of DateBsd.m3 2009-12-06 13:12 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: sync unused file with head 2009-12-06 13:10 jkrell * m3-libs/m3core/src/time/POSIX/DateBsd.m3: use predeclared MUTEX instead of Thread.Mutex (copied from head) 2009-12-06 13:06 jkrell * m3-libs/libm3/src/os/POSIX/ProcessPosixCommon.m3: On Interix in particular, I have seen bash often say something like fork: Resource temporarily unavailable, retry and then it seems to work upon retry. Therefore, put in sleep/retry for fork returning EAGAIN, and we throw in ENOMEM as well, based closely on the bash code, which is very little. (does sleep(0,1,2,4,8),giveup) 2009-12-06 12:58 jkrell * m3-libs/m3core/src/unix/Common/: Unix.i3, UnixC.c: add wrapper for sleep +<*EXTERNAL Unix__sleep*> PROCEDURE sleep (a: unsigned): unsigned; +unsigned Unix__sleep(unsigned i) { return sleep(i); } 2009-12-06 12:29 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: a little more aggressive handling of EAGAIN and ENOMEM if pthread_create/pthread_mutex_init/pthread_cond_init fail with either, try again right away; if they fail again, sleep(1) and try again; this logic could be put into the Modula-3 as it is portable and such (Posix doesn't allow pthread_create to return ENOMEM though it seems reasonable; also a smaller sleep might be reasonable, and so would sleep/retrying even more, it's a difficult to resolve philosophical/engineering dilemna..) 2009-12-06 12:14 jkrell * scripts/python/pylib.py: remove ThreadApple.c/ThreadFreeBSD.c hack 2009-12-06 12:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c, ThreadPThreadC.c, m3makefile: Try again. Compile the files separately. Add #include stdlib.h and move the assert(stack_grows_down) to ThreadPThreadC.c. Alternative would be to: - remove it altogether - compute it in ThreadApple.c - or rename it ThreadPThread__stack_grows_down (or Thread__stack_grows_down) 2009-12-06 12:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadApple.c: file ThreadApple.c was added on branch release_branch_cm3_5_8 on 2009-12-07 07:55:40 +0000 2009-12-06 12:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadFreeBSD.c: file ThreadFreeBSD.c was added on branch release_branch_cm3_5_8 on 2009-12-07 07:55:40 +0000 2009-12-06 11:34 jkrell * m3-libs/m3core/src/time/POSIX/: DateBsd.m3, DatePosix.m3: go back to long standing versions without mutex I still think there might be something fishy here like wrt the timezone changing as the process runs 2009-12-06 11:28 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: fix assertions for AMD64_DARWIN where timeval unfortunately contains undeclared padding 2009-12-06 11:11 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c, m3-libs/m3core/src/thread/PTHREAD/m3makefile, scripts/python/pylib.py: fix Apple (abort not declared, stack_grows_down unknown) fix possible problem in FreeBSD fix bootstrapping Apple and FreeBSD that is: restructure elationship of ThreadPThreadC.c, ThreadApple.c, ThreadFreeBSD.c #include the later in the earlier, so more is in scope (so stack_grows_down remains static; #include would have been easy) use pgm_source to insure the files get into the boot archive and hack pylib.py to special case and not compile ThreadApple|FreeBSD.c 2009-12-06 10:31 jkrell * scripts/python/pylib.py: build the cross m3cc/m3cg in boot1.py 2009-12-04 10:41 jkrell * m3-libs/m3core/src/C/Common/CstdioC.c: a lot more wrappers, and much more mechanical 2009-12-03 20:58 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: further fix assertion 2009-12-03 20:52 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: in resume, allow that dying threads maybe aren't suspended -- hm. probably we should just remove from the list earlier? 2009-12-03 20:47 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: all but start threads not suspended it seems nearly impossible to start them running unless we want to use an extra DuplicateHandle for act.handle, in the thread structure more like pthreads specifically add to the list of active threads in the new thread instead of fork structure the try/finally nicer initialize local to nil and try/finally the entire function really fix deadlock where thread can't finish and remove itself from active list because suspendothers already has the lock, and suspendthread..works, but then GetContextAndCheckStack fails because start/end are nil 2009-12-03 20:02 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: add more check for low resources; fix hang in stubgen by stopping scanning stack earlier (a bit of a mystery?) 2009-12-03 19:45 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: calling convention 2009-12-03 19:42 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix leak upon out of memory 2009-12-03 19:27 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: reduce but don't eliminate dependency on header cloning, at the cost of an extra heap allocation per thread (up from 2 to 3, but we can probably get it back down by allocation the entire Activation in C (RTSignal.m3 still depends on the header cloning)) 2009-12-03 19:26 jkrell * m3-libs/m3core/src/thread/WIN32/m3makefile: make ThreadContext interface private 2009-12-03 19:00 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: reduce dependency on cloned headers 2009-12-03 18:47 jkrell * m3-libs/m3core/src/thread/Common/ThreadDebug.i3: loosen types up completely as I'll be changing some and they don't really matter 2009-12-03 13:29 jkrell * m3-libs/m3core/src/thread/WIN32/: SchedulerPosix.m3, ThreadWin32.i3, ThreadWin32.m3: begin moving fields from traced to untraced to match pthreads in this diff: waitSema alertable alerted still tbd: waitingOn nextWaiter 2009-12-03 12:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix suspendCount of initial thread 2009-12-03 12:47 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: structure more like ThreadPThread.m3: ProcessLive ProcessStopped ProcessMe ProcessOther etc. including pushing some processor-dependency into C however this code still knows the sizeof CONTEXT In fact these functions now exist in both and are practically identical. But Win32 print the more useful act.handle instead of act. And win32 is a little different wrt context. 2009-12-03 12:43 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: ThreadWin32__threadIndex => static threadIndex 2009-12-03 12:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadContext.i3: add ExtendedRegisters from newer headers, though it doesn't really gain anything and it costs us an extra 512 bytes per thread 2009-12-03 12:36 jkrell * m3-sys/cminstall/src/config-no-install/cm3.cfg: fix warning from cm3ide about EOL not defined (this .cfg file isn't perhaps mainstream, it isn't what a release installs 2009-12-03 12:32 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: initial activation starts out not suspended (fixes the cm3ide assert stackpointer # NIL) 2009-12-03 10:56 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: -CONST debug = FALSE; +VAR DEBUG := RTParams.IsPresent("debugthreads"); to be more like pthreads (though we don't currently print the same stuff) 2009-12-03 10:53 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: - fix previous change to FreeSlot; it needs both, for the sanity check - inline RunThread in its only caller ThreadBase I see no real distinction between them, and the stack address is found such that the inlining won't break it. 2009-12-03 10:49 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: newlines to try to unhide the important line 2009-12-03 10:35 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: NIL stackPointer when not suspended 2009-12-03 10:32 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove gratuitous use of a traced ref: FreeSlow(untraced me) instead of FreeSlot(traced self) 2009-12-02 17:09 wagner * www/: download.html, news.html: some fixes and additions for RC4 2009-12-02 01:19 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.i3: fix 2009-12-02 00:56 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadInterix.c, ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c, m3makefile: remove interix stuff for now It wasn't a terrible idea and Interix isn't useless, but it seems you can only get a suspend/resume handle to a thread on the first thread, not anything created with pthread_create, very surprising (also can't getcontext) a few not great options remain: use semaphore/signal but rely on all traced references to always be on stack; fairly viable if you don't optimize, though a little tricky when the references are first created? make/get/set/swapcontext - no, they aren't present sigstack/sigaltstack -- not present stuff in /proc -- yes very promising 2009-12-01 09:54 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: cleanup: use new function AdjustShared to encapsulate the Interix check and the defined("install_symbolic_link") check (These config files with older compilers don't support shared, just building an up to date static compiler, and then using that to build stuff shared.) 2009-12-01 09:49 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: for now turn off shared for Interix, pending more testing/debugging/fixing 2009-12-01 09:46 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: remove some ntdll special casing now that m3-win/ntdll does more itself 2009-12-01 09:42 jkrell * m3-sys/cminstall/src/config-no-install/: I386_INTERIX, Interix.common: refactor a little, and twiddle with linking switches 2009-12-01 09:34 jkrell * m3-sys/m3cc/gcc/: gcc/config/i386/i386-interix.h, config/mh-interix: merge with Interix; esp. ASM_DECLARE_FUNCTION_NAME so that dlltool can tell data from functions and make import libs properly This lets us link shared, though running doesn't work yet. 2009-11-30 12:03 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: keep two thread handles what to call them is unclear here we ahve: joinHandle suspendResumeHandle aka: pthread ntthread on all but Interix (and possibly Cygwin), they are equivalent, either the result of pthread_create or pthread_self on Interix, once is pthread_create/self, the other is a kernel handle for suspend/resume alternate names welcome the intent seems hoky, but helps much 2009-11-30 12:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadInterix.c: strange need for sleep/retry in duplicating current thread, we get a few access denied otherwise 2009-11-30 10:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadInterix.c: explicit calling convention 2009-11-30 09:59 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadInterix.c: more information for errors 2009-11-30 09:54 jkrell * m3-libs/m3core/src/thread/PTHREAD/m3makefile: fix newlines 2009-11-30 09:54 jkrell * m3-libs/m3core/src/thread/PTHREAD/m3makefile: tweak to repeat less and use relative up paths sometimes (was trying to fix a problem but this wasn't it) 2009-11-30 09:53 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadInterix.c: print more information when it fails (just saw it happen :( ) 2009-11-30 09:44 jkrell * m3-www/: deckscape/src/m3makefile, webscape/src/m3makefile: wrap in if HasGui() 2009-11-30 09:40 jkrell * m3-demo/calculator/src/m3makefile, m3-demo/cube/src/m3makefile, m3-demo/fisheye/src/m3makefile, m3-demo/sharedboard/boardclient/src/m3makefile, m3-tools/showheap/src/m3makefile, m3-tools/shownew/src/m3makefile, m3-demo/mentor/src/m3makefile: wrap in if HasGui() 2009-11-30 09:30 jkrell * m3-tools/: replayheap/src/m3makefile, showthread/src/m3makefile: wrap in if HasGui() 2009-11-30 09:27 jkrell * m3-obliq/visualobliq/src/m3makefile, m3-obliq/voquery/src/m3makefile, m3-obliq/vorun/src/m3makefile, m3-tools/rehearsecode/src/m3makefile: wrap in if HasGui() 2009-11-30 02:33 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: use whole-archive on Interix to shorten command lines; did not have proposed affect of causing unresolved symbols to be resolved but ok 2009-11-29 06:40 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: remove --no-undefined, at least for now 2009-11-29 06:13 jkrell * m3-obliq/: obliqsrvui/src/m3makefile, obliqbinui/src/m3makefile, obliqbinanim/src/m3makefile: wrap in if HasGui() 2009-11-29 05:51 jkrell * m3-ui/: bicycle/src/m3makefile, cmvbt/src/m3makefile, codeview/src/m3makefile, formsvbt/src/m3makefile, images/src/m3makefile, mg/src/m3makefile, mgkit/src/m3makefile, ui/src/xvbt/m3makefile, ui/test/EyesVBT/src/m3makefile, vbtkit/src/m3makefile, videovbt/src/m3makefile, webvbt/src/m3makefile, webvbt/src/hyperpage/src/m3makefile, zeus/src/m3makefile: change if HasGui() .. Library(xxx) end to if HasGui() build_standalone() end ... Library(xxx) so we still compile all the code, which is arguably worthwhile test coverage (we could also change program that won't link into standalone libraries, but for now, I haven't made that call) 2009-11-29 05:21 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: remove OPENGL and MOTIF from I386_INTERIX, though both are available from third party 2009-11-29 05:18 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: proc HasOpenGL() is % but see http://www.interix.com/Motif-OpenGL.htm return not IsInterix() end 2009-11-29 05:06 jkrell * m3-ui/: codeview/src/m3makefile, formsedit/src/m3makefile, formsview/src/m3makefile, mg/src/m3makefile, ui-tests/test25/src/m3makefile, ui-tests/texturecomtest/src/m3makefile, webvbt/src/m3makefile: Wherever there is import("formsvbt"), wrap with HasGui(). 2009-11-29 04:55 jkrell * m3-ui/: bicycle/src/m3makefile, cmvbt/src/m3makefile, formsvbt/src/m3makefile, images/src/m3makefile, juno-2/juno-app/src/m3makefile, ui/test/Argus/src/m3makefile, ui/test/BadBricks/src/m3makefile, ui/test/ButtonTest/src/m3makefile, ui/test/Cards/src/m3makefile, ui/test/ColorMonster/src/m3makefile, ui/test/Draw/src/m3makefile, ui/test/EyesVBT/src/m3makefile, ui/test/Hello/src/m3makefile, ui/test/Monster/src/m3makefile, ui/test/Sketch2/src/m3makefile, ui/test/StarAnim/src/m3makefile, ui/test/Track/src/m3makefile, ui/test/TypeInTest/src/m3makefile, ui-tests/pixmapcomtest/src/m3makefile, vbtkit/src/m3makefile, webvbt/src/hyperpage/src/m3makefile: wherever there is import("ui"), wrap in if HasGui() 2009-11-29 04:48 jkrell * m3-ui/videovbt/src/m3makefile: use HasGui to skip on Interix (at least for now, I really should be able to get X to work on Interix, it's only X CLIENT after all, not server) 2009-11-29 04:44 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: proc HasGui() is return not IsInterix() end 2009-11-29 04:13 jkrell * m3-ui/X11R4/src/m3makefile: experiment wrt X and Interix build it all, but just don't import_sys_lib("X11") if it isn't there this works as long as the library is entirely "external" and doesn't actually contain any code that links to anything (ie: if we avoid cloning headers, this won't work, not clear what is best, and not clear how to filter well, in particular, only this low level should really know about X11, higher up should check for their immediate dependencies I kind of think..) 2009-11-29 03:46 jkrell * m3-ui/ui/src/xvbt/m3makefile: use if SYSTEM_LIBS contains X11 like m3-ui\X11R4 (which I'm sure I put in; need consensus here) 2009-11-29 03:44 jkrell * m3-ui/ui/src/xvbt/m3makefile: filter out for Interix (maybe we should be checking for X11 in SYSTEM_LIBS or SYSTEM_LIBORDER? (imagine some wierdo system which X is 'built in' though) 2009-11-29 02:43 jkrell * m3-sys/cminstall/src/config-no-install/: cm3cfg.common, Unix.common: move IsInterix so it is more available and can filter gui stuff 2009-11-28 22:57 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Fix names in process procedure to match declaration in RTThread.i3. 2009-11-28 11:50 jkrell * m3-sys/cminstall/src/config-no-install/: NT386.common, Unix.common, cm3cfg.common: support "libfoo.a.sa" for "standalone" in Interix like NT386's "foo.lib.sa" simple: move ConvertLibsToStandalone from NT386.common to cm3cfg.common add call to it produce the .sa files (move foo.a foo.a.sa, etc.) 2009-11-28 11:07 jkrell * m3-sys/cminstall/src/config-no-install/: Interix.common, Unix.common: PKG_INSTALL is defined later, so move back to Unix.common; probably could be better but ok 2009-11-28 11:05 jkrell * m3-sys/cminstall/src/config-no-install/: I386_INTERIX, Interix.common, Unix.common: a little better -- ntdll only needed by m3core and non-shared executables (we don't have a notion of a "standalone shared library" here, though it does make sense; more generally each library an executable or shared library links to could be shared or not -- a boolean per import) 2009-11-28 10:56 jkrell * m3-sys/cminstall/src/config-no-install/: I386_INTERIX, Unix.common: special casing for ntdll on Interix similar to Uconstants.obj, hand.obj 2009-11-28 07:38 jkrell * scripts/python/pylib.py: need -f on rm commands to avoid error for nonexistant files 2009-11-28 07:34 jkrell * scripts/python/pylib.py: newlines and fix comment for Interix 2009-11-28 07:16 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadInterix.c, ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: split pthread_self into GetCurrentThreadHandleForSuspendResume and GetCurrentThreadHandleForLockHolder 2009-11-28 07:01 jkrell * scripts/python/pylib.py: delete another output file (part of 'some fixes/hack to compile/link Interix bootstrap') 2009-11-28 06:59 jkrell * scripts/python/pylib.py: some fixes/hack to compile/link Interix bootstrap 2009-11-27 21:13 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Bring comment up to date. 2009-11-27 21:11 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Cosmetic reordering. 2009-11-27 21:05 hosking * m3-libs/m3core/src/thread/POSIX/: ThreadPosix.i3, ThreadPosix.m3, ThreadPosixC.c: Flag live thread to ProcessContext with NIL sp. Eliminate GetContext. 2009-11-27 20:49 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Unused field. 2009-11-27 20:41 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: Casts (some needed, some not). 2009-11-27 20:34 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: DEC(inCritical) on exception return from Fork. 2009-11-27 20:00 jkrell * m3-libs/m3core/src/unix/Common/Uconstants.c: Interix has no net/if.h 2009-11-27 20:00 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: Interix has no socklen_t, here typedef int socklen_t 2009-11-27 19:58 jkrell * scripts/python/pylib.py: add ntdll (wherever import-libs is) 2009-11-27 19:53 hosking * m3-libs/m3core/src/thread/POSIX/: ThreadPosix.i3, ThreadPosix.m3, ThreadPosixC.c: Let's not depend on ucontext_t reporting a reliable stack pointer. 2009-11-27 19:36 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadApple.c, ThreadFreeBSD.c, ThreadInterix.c, ThreadPThreadC.c, apple.c, freebsd.c, m3makefile: using c_source helps build working boot archives, so use it instead of #include (I think there is some other directive, but also boot archives are "flat" so we need more unique file names.) consider ThreadDarwin.c or ThreadMacosx or ThreadMacX or such instead 2009-11-27 17:48 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: set local after longjmp, because strictly speaking it'd have to be volatile to survive (but parameters are ok?) 2009-11-27 17:47 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: set local after longjmp, you know, because strictly speaking it'd have to be volatile to survive (but parameters are ok?) 2009-11-27 17:43 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix readability (subjective) and syntax error on Solaris (http://modula3.elegosoft.com:8080/view/SOLgnu/job/boot-solgnu/19/console) 2009-11-27 17:37 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: a little less casting 2009-11-27 17:34 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix readability and syntax error on Solaris (http://modula3.elegosoft.com:8080/view/SOLgnu/job/boot-solgnu/19/console) 2009-11-27 12:27 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadInterix.c, ThreadPThreadC.c, m3makefile: attempt to solve some of the problems and flaws - only compile ThreadInterix.c on interix, remove dummy - modify SYSTEM_CC to point to headers - clevely implement pthread_self as returning NT thread handle (DuplicateObject(CurrentThread()) 2009-11-27 11:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: replace pthread_detach(me.handle) with pthread_detach_Self, where pthread_detach_self is in C as pthread_detach(pthread_self()) All other uses of act.handle are for suspend/resume. This little trick will let us redefine act.handle on Interix as the NT thread handle. 2009-11-27 11:29 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadInterix.c, ThreadPThreadC.c, interix.c, m3makefile: compile separately since the headers seem to conflict 2009-11-27 11:04 jkrell * m3-libs/m3core/src/thread/PTHREAD/interix.c: fix assert -- context vs. signal_context 2009-11-27 11:03 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c, interix.c: work in progress for interix direct suspend it seems pretty simple and viable not yet worked out small issues: reaching around for #include (or, notice that it ended up so simple, that we can just duplicate the three lines plus #include windows.h for context; though the headers seem to conflict and we do need context, so probably best to compile separately) similarly, the .lib using HANDLE instead pthread_t (need to store both in the activation, and then use NtDuplicateObject(NtCurrentThread()) probably) 2009-11-27 10:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c, noinline.h: move a few dead lines out (safekeeping? move to m3unix.h or introduce some new m3defs.h?) 2009-11-27 10:22 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c, apple.c, freebsd.c: split up ThreadPThreadC.c some currently #include the pieces but might want to not do that 2009-11-27 08:50 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: copy from head and: change RTThread back to ThreadInternal change limit to stop fixes AMD64_LINUX p007 hang 2009-11-27 08:28 jkrell * m3-mail/llscan/src/llscan.c: any file that uses errno or h_errno, at least, needs #define _REENTRANT for Interix (might change in the config file); also remove manual 'extern int errno', there is already #include and it should suffice 2009-11-27 08:27 jkrell * m3-mail/llscan/src/err.c: any file that uses errno or h_errno, at least, needs #define _REENTRANT for Interix (might change in the config file) 2009-11-27 08:26 jkrell * m3-libs/sysutils/src/SystemC.c: any file that uses errno or h_errno, at least, needs #define _REENTRANT for Interix (might change in the config file); this file is only for bootstrapping against older builds so probably could be left 'broken' 2009-11-27 08:22 jkrell * m3-libs/dps/src/ccDisplayPS.c: any file that uses errno or h_errno, at least, needs #define _REENTRANT for Interix (might change in the config file); also remove manual 'extern int errno', there is already #include and it should suffice 2009-11-27 08:20 jkrell * m3-lectern/lecternclient/src/POSIX/LecternClient.c: any file that uses errno or h_errno, at least, needs #define _REENTRANT for Interix (might change on the config file 2009-11-27 08:17 jkrell * m3-comm/tcp/src/POSIX/HerrnoC.c: Interix needs #define _REENTRANT 2009-11-27 08:12 jkrell * m3-libs/m3core/src/C/Common/CerrnoC.c: Interix needs #define _REENTRANT 2009-11-26 20:57 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Something closer to what Jay seems to like. We could even extract the stack pointer from the ucontext_t. 2009-11-26 18:44 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Refactor slightly to avoid need for awkward SignalHandlerC call. 2009-11-26 18:30 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: Bail out of NoteStackLocations for start < stop. 2009-11-26 17:08 jkrell * m3-libs/m3core/src/runtime/common/RTThread.i3: file RTThread.i3 was added on branch release_branch_cm3_5_8 on 2009-12-11 11:02:45 +0000 2009-11-26 17:08 hosking * m3-libs/m3core/src/runtime/common/RTThread.i3: Forgot to commit this. 2009-11-26 15:55 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: noinline for Visual C++ >= 7.0 (optionally the compiler for Interix) noinline for Sun CC >= 5.9 still could be better e.g. Intel compiler 2009-11-26 13:56 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: RTThread to ThreadInternal (unless we merge more from head) 2009-11-26 09:43 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: copy from head, several changes, we'll see if this clears up SOLgnu and SOLsun 2009-11-26 09:41 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: ignore stack=0,0 in NoteStackLocations, in prep for ThreadPThreadC.c copy 2009-11-26 09:38 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadContext.i3: copy from head: shorter by using 'IMPORT FROM' 2009-11-26 09:37 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTSignal.m3, SOLsun/RTSignal.m3: remove unused files 2009-11-26 09:34 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTStackC.c, SOLsun/RTMachine.i3, SOLsun/RTStackC.c: copy from head: replace assembly with setjmp/longjmp remove locals that are initialized but not further used remove userthread support in RTMachine.i3, we use make/get/set/swapcontext now 2009-11-26 09:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: try again setjmp/longjmp on sparc instead of the gnarly assembly different this time call setjmp on all targets in both SignalHandler and ProcessLive call longjmp immediately then for sparc and ia64 make another function call to ensure taking the address of a local includes jmp_buf (without having to worry about stack direction) introduce SignalHandlerC (C code called from Modula-3 SignalHandler) SignalHandlerX (called from SignalHandlerC to be sure capture all the stack) ProcessLiveX (called from ProcessLive to be sure capture all the stack) 2009-11-26 09:18 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: get errno before getting the activation, since the point is to preserve errno 2009-11-26 09:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: try not to waste time on signal mask, though this area is frought with #ifdef'ed headers, but it is ok if we get it wrong 2009-11-26 09:11 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: combine the two implementations of InitC 2009-11-26 08:46 jkrell * scripts/sysinfo.sh: remove echo that breaks building cm3 2009-11-26 07:01 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: in NoteStackLocations, if stack is 0,0, just return having done nothing 2009-11-26 05:04 jkrell * m3-libs/m3core/src/runtime/common/: RTMisc.i3, RTMisc.m3, RTMiscC.c: equate RTMisc.Upper and RTMisc.Align via <*EXTERNAL*> so an unoptimized RTMisc.Align will still jump right to RTMisc.Upper preserve RTMisc.Align for binary compatibility however 2009-11-26 05:04 jkrell * m3-libs/m3core/src/runtime/common/RTMiscC.c: file RTMiscC.c was added on branch release_branch_cm3_5_8 on 2009-12-11 10:53:45 +0000 2009-11-26 04:46 jkrell * m3-libs/m3core/src/runtime/common/RTMisc.i3: rewrite comment -- Align is the same as Upper, but casting INTEGER <=> ADDRESS 2009-11-26 04:45 jkrell * m3-libs/m3core/src/runtime/common/: RTMisc.i3, RTMisc.m3, RTMiscC.c, m3makefile: be aggressive about not cloning headers actually, since we already wrapped what this is calling, this code is ok but then, remove an extra layer 2009-11-26 04:28 jkrell * m3-libs/m3core/src/C/Common/: CerrnoC.c, Csignal.i3, CsignalC.c, CstdioC.c, Cstdlib.i3, CstdlibC.c, Cstring.i3, CstringC.c, m3makefile: be more aggressive about not cloning headers certainly the signatures here are/were correct, but there is still the danger of inlines or pragmas creating not the normal binary interface, and apparently a source interface is all we can really count on 2009-11-26 04:28 jkrell * m3-libs/m3core/src/C/Common/CsignalC.c: file CsignalC.c was added on branch release_branch_cm3_5_8 on 2009-12-07 08:00:56 +0000 2009-11-26 04:28 jkrell * m3-libs/m3core/src/C/Common/CstdlibC.c: file CstdlibC.c was added on branch release_branch_cm3_5_8 on 2009-12-07 08:00:56 +0000 2009-11-26 04:28 jkrell * m3-libs/m3core/src/C/Common/CstringC.c: file CstringC.c was added on branch release_branch_cm3_5_8 on 2009-12-07 08:00:56 +0000 2009-11-26 04:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: parameter names in procedure types are apparently part of the signature; fix it to compile 2009-11-26 02:44 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix it to compile -- xx vs. callee, and eliminate casts by changing void* to int* 2009-11-26 02:42 jkrell * m3-libs/m3core/src/runtime/common/RTThread.i3: add RTThread.i3, copy of last? ThreadInternal.i3 but with interface name changed 2009-11-26 00:31 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Restore SPARC SaveRegsInStack implementation. longjmp is MT-Level unsafe. Not sure what this says about setjmp -- Boehm doesn't appear to process any context other than the stacks. 2009-11-26 00:25 hosking * m3-libs/m3core/src/runtime/: SOLgnu/RTStackC.c, SOLsun/RTStackC.c: Tweak comment. 2009-11-26 00:25 hosking * m3-libs/m3core/src/runtime/common/RTHeapStats.m3: ProcessStacks routine takes a base address and a *limit*. So, stop before limit. 2009-11-25 19:00 hosking * m3-libs/m3core/src/: float/DS3100/FloatMode.m3, float/IRIX5/FloatMode.m3, float/VAX/FloatMode.m3, runtime/NT386/RTSignal.m3, runtime/WIN32/RTOS.m3, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/common/RTLinkerX.i3, runtime/common/m3makefile, runtime/ex_frame/RTExFrame.m3, runtime/ex_frame/RTException.m3, thread/Common/ThreadInternal.i3, thread/Common/m3makefile, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadWin32.m3: Move ThreadInternal.i3 to RTThread.i3. 2009-11-25 18:42 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Eliminate tabs. 2009-11-25 18:27 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Lift out common static variables stack_grows_down and activations. Eliminate unused XX. 2009-11-25 18:23 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Clean up a bunch of things. Move stack_grows_down into C. I'm still dubious about elimination of SaveRegsInStack for SPARC. Jay, you'll really need to confirm that all is OK. 2009-11-25 12:34 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: MyFPState should return floatState not heapState! 2009-11-25 12:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: MyFPState should return floatState, not heapState, oops! 2009-11-25 12:31 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: add some LL and LL-ish comments (LL-ish like "write-once in function Foo") This is just from a quick scan of the code and hopefully correct. Actual code not changed. + mutex: pthread_mutex_t := NIL; (* write-once in CreateT *) + cond: pthread_cond_t := NIL; (* write-once in CreateT; a place to park while waiting *) + alerted : BOOLEAN := FALSE; (* LL = mutex; the alert flag *) + waitingOn: pthread_mutex_t := NIL; (* LL = mutex; The CV's mutex *) + nextWaiter: Activation := NIL; (* LL = mutex; queue of threads waiting on the same CV *) 2009-11-25 12:26 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: reformat field comments to be on the same line as the field, the resulting lines may be a bit long but on a wide screen the result seems far more readable than either alternative (unless a lot more vertical space is used to separate fields) 2009-11-25 12:20 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: move frame to the start to try to get it to be offset 0, in case that is more efficient, since it is overwhelmingly the most often access field (for every function with try or lock, well, maybe lock related stuff competes in frequency) 2009-11-24 12:38 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTStackC.c, SOLsun/RTStackC.c: remove unused locals (fix gcc -Wall) 2009-11-24 12:35 jkrell * m3-libs/m3core/src/runtime/: SOLsun/RTStackC.c, SOLgnu/RTStackC.c: replace gnarly assembly with setjmp/longjmp 2009-11-24 12:29 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: replace gnarly assembly with setjmp/longjmp prepare to callback just once instead of separately for registers and stack Please review. 2009-11-24 11:45 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix warning about unterminated character constant in comment: don't => do not 2009-11-24 11:43 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: rename pthread_getspecific_activations to GetActivation (called many times) (matches Win32) rename pthread_setspecific_activations to SetActivation (called twice) (matches Win32) leave pthread_key_create_activations alone (called once) (Win32 does the initialization in InitC) (I thought I had already commited this) 2009-11-24 09:41 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: copy from release branch: use sys/ucontext.h on Darwin instead of ucontext.h + #define _XOPEN_SOURCE 2009-11-24 09:39 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: per http://duriansoftware.com/joe/PSA:-avoiding-the-%22ucontext-routines-are-deprecated%22-error-on-Mac-OS-X-Snow-Leopard.html #include sys/ucontext.h on Darwin instead of ucontext.h We aren't actually after the deprecated ucontext functions, but the (apparently) non-deprecated ucontext data structures 2009-11-24 09:31 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: copy from head to address ucontext deprecation on Snow Leopard? (they give and they take away, these APIs were only added in 10.4 or 10.5, and then deprecated in 10.6; make up your minds..) 2009-11-24 09:24 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: address ucontext deprecation (presumably in Snow Leopard, the break is on a Darwin 10.0.0 machine, I have Darwin 9.8.0 Leopard) just with #define _XOPEN_SOURCE (Do we need to consider another way? Probably not.) 2009-11-23 19:10 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.i3: Use brands to enforce type separation between various opaque C-level pthread types. 2009-11-23 00:46 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: cleanup 2009-11-23 00:45 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: go back to asserting success for now, since the Modula-3 code doesn't and we can fail here under very low resources 2009-11-23 00:01 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: slight hypothetical unify with pthread -- just rename CRITSEC to LOCK and copy two comments 2009-11-22 23:53 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32C.c: better compiler compat? 2009-11-22 23:53 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: make it work with more compiler/header versions consider moving initialization and cleanup into DllMain in particular, this lets us propagate failures, which are possible but the problem is that executables don't have DllMain (tls callbacks?) 2009-11-22 23:33 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: copy from head: add const and return the pthread_unlock_mutex return value (!) (fixes Solaris but is a general bug) 2009-11-22 23:29 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix pthread_mutex_unlock wrapper, duh! 2009-11-22 22:33 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: copy from head to address #error on some Apple environments (don't #include ucontext.h, signal.h suffices) 2009-11-22 22:30 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: signal.h suffices on all Darwin architectures, at least with the ppc/ppc64/x86/amd64 cross compilers on my current system 2009-11-22 22:16 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: #if defined(__APPLE__) && defined(__i386__) && !defined(_XOPEN_SOURCE) /* http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1258879870.10595#err9 */ /* /usr/include/ucontext.h:42:2: error: #error ucontext routines are deprecated, and require _XOPEN_SOURCE to be defined */ /* expand #if to allow more architecures as they are discovered/tested, probably just allow all */ #define _XOPEN_SOURCE #endif 2009-11-22 11:43 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.i3: don't capitalize or period comments that aren't sentences esp. one that I just changed 2009-11-22 11:39 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: remove incorrect comment (Set is not called frequently, only Get is) 2009-11-22 11:38 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: SetActivation == TlsSetValue_threadIndex GetActivation == TlsGetValue_threadIndex (pthreads doesn't do this but probably should) 2009-11-22 11:12 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: add const on the static locks/conditions 2009-11-22 11:11 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Like pthreads, switch from functions to variables for the static locks. (pthreads also has a static cond, we don't) Instead of using either Win32 "critical section" or pthread "mutex" vocabulary, use Lock(Lock_t), Unlock(Lock_t), slotLock, heapLock, etc. Also add NewLock and DeleteLock, not yet used. 2009-11-22 10:24 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: adjust LL comments to describe what I believe is acceptable reality: closure and result are not locked; completed is only ever written and never read so remove it (larger effort here is to unify a lot with pthread, esp. what is in T vs. Activation) 2009-11-22 09:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: adjust LL comments to describe what I believe is acceptable reality: handle, stackStart, stackEnd not locked, on neither read nor write (it is common to make a mistake where only writes are locked) 2009-11-22 09:46 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: a little more reformating of comments for readability 2009-11-22 09:43 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: move just a few comments around slightly to be on same line as what they are describing (this area about to change more, to more resemble pthread implementation) 2009-11-22 09:19 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Win32 ProcessStacks had a hack where if the stack pointer was more than 10K below the stack top, it would use VirtualQuery to ensure the pages are readable. The comment was that this was to workaround Windows 95 sometimes returning incorrect stack pointers. While I'm not testing Windows 95 here, and I should, modify the code like so: At thread creation (and special case first thread), compute the stack bounds accurately. (again, only tested on NT) Move GetThreadContext from ProcessStacks to SuspendOthers. When we GetThreadContext, if the stack is not in bounds, treat it like a "busy" thread and resume it and try again later. NOTE that GetThreadContext is documented as not working on the current thread, but the previous code did exactly that. Perhaps that was the problem? The current thread's stack pointer is trivial to compute of course, no need for GetThreadContext. Testing is advised on Win9x, though I personally haven't run that in years and hardly ever did. In the previous code, see of course ProcessStacks, and VerifySP. This likely had the affect as well of, when the stack went beyond 10K, to round the stack pointer down to the next page, scanning a little extra garbage (which if you consider that "most objects die young", probably had a good chance of causing retention of otherwise garbage? But I have no data.) (Nice side effect here, of course, is decreased dependency on cloned headers, since I always strive to use C to interact with the underlying system that is described with C headers.) Unfortunate side affect here is increased memory use because the CONTEXT is now in Activation, in order to get from SuspendOthers to ProcessStacks. We might do better to allocate an array of CONTEXT in SuspendOthers. We might do better also to use a "mini context" since we only use a small fraction of the context (just the control and integer registers, not the rather larger floating point state nor the segment registers, debug registers, status flags, etc. since they can't contain pointers.. or can they? well, not with our backend..hm) Furthermore, of course, we should abstract this code to not be so x86 specific. With this change, the stack bounds are very well known, and the "end" value is "just past the end", the first byte of the first page after the stack. It might be wise to subtract one from this. Previously we used an approximate end of stack that pointed to an actual untraced value on the stack. NoteStackLocations does subtract ADRSIZE(ADDRESS) though. Note that ThreadPosix.m3 could also implement such precise stackbase. ThreadPThread.m3 probably often could, like with the functions on OpenBSD (broken) and FreeBSD, etc. 2009-11-22 07:20 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadContext.i3: flatten namespace by using FROM Foo IMPORT Bar instead of just IMPORT Foo and then use Foo.Bar 2009-11-22 05:06 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: import FloatMode 2009-11-22 04:12 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: add ProcessEachStack (that just asserts false) 2009-11-22 04:11 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: add MyFPState 2009-11-22 04:05 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: copy from head, for #include 2009-11-22 04:04 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: mainly: #if defined(__ppc__) || defined(__ppc64__) #include #endif and small tweaks 2009-11-22 04:00 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: copy from head: affect is to remove OpenBSD support and twiddle the sparc stuff inconsequentially (comments and reordering that doesn't matter); still ignoring SOLsun, until everything else works 2009-11-22 03:58 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: ignore the SOLsun issue for now 2009-11-22 02:35 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: restructure slightly to share code, and avoid double scan of registers on sparc (seems applicable on all architectures, really) 2009-11-22 02:22 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: restore optimzation based on existing setjmp 2009-11-22 02:21 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: split into two implementations to avoid confusing #if in the middle of code 2009-11-22 02:15 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix confusing code -- missing brace 2009-11-22 02:07 jkrell * m3-libs/m3core/src/runtime/SOLsun/RTStackC.c: comments 2009-11-22 02:07 jkrell * m3-libs/m3core/src/runtime/SOLsun/RTStackC.c: assembly outside a function doesn't work with Sun cc, use setjmp/longjmp instead 2009-11-22 01:39 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: This should fix SOLsun. Sun cc doesn't support asm outside of functions. Rather than fight assembly details, use setjmp/longjmp. 2009-11-22 00:10 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: copy from release: fix parameter order to pthread_cond_wait -- cond then mu, not mu then cond, Solaris nicely fails an assert on this exact line 2009-11-22 00:08 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: fix parameter order to pthread_cond_wait -- cond then mu, not mu then cond, Solaris nicely fails an assert on this exact line 2009-11-21 23:54 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTStackC.c, SOLsun/RTStackC.c: copy from head; will change more later, once things back to working 2009-11-21 20:52 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/m3makefile, SOLsun/m3makefile: COPY from head, I thought I got this earlier 2009-11-21 20:50 jkrell * m3-libs/m3core/src/runtime/common/: RTCollector.m3, RTMachine.i3: COPY from head 2009-11-21 20:48 jkrell * m3-libs/m3core/src/runtime/POSIX/m3makefile: remove RTThread and RTThreadStk 2009-11-21 20:47 jkrell * m3-libs/m3core/src/runtime/: AIX386/m3makefile, ALPHA_OSF/m3makefile, ALPHA_OSF/novm/m3makefile, AMD64_DARWIN/m3makefile, AP3000/m3makefile, ARM/m3makefile, DS3100/m3makefile, FreeBSD/m3makefile, FreeBSD2/m3makefile, FreeBSD3/m3makefile, FreeBSD4/m3makefile, HP300/m3makefile, HPPA/m3makefile, I386_DARWIN/m3makefile, IBMR2/m3makefile, IBMRT/m3makefile, IRIX5/m3makefile, LINUX/m3makefile, LINUXELF/m3makefile, LINUXLIBC6/m3makefile, NEXT/m3makefile, NT386/m3makefile, NT386GNU/m3makefile, NetBSD2_i386/m3makefile, OKI/m3makefile, OS2/m3makefile, PPC_DARWIN/m3makefile, SEQUENT/m3makefile, SPARC/m3makefile, SUN3/m3makefile, SUN386/m3makefile, UMAX/m3makefile, VAX/m3makefile, common/m3makefile: make RTMachine private on all platforms it already was on SOLsun/SOLgnu 2009-11-21 20:45 jkrell * m3-libs/m3core/src/runtime/: AIX386/m3makefile, ALPHA_OSF/m3makefile, ALPHA_OSF/novm/m3makefile, AMD64_DARWIN/m3makefile, AP3000/m3makefile, ARM/m3makefile, DS3100/m3makefile, FreeBSD/m3makefile, FreeBSD2/m3makefile, FreeBSD3/m3makefile, FreeBSD4/m3makefile, HP300/m3makefile, HPPA/m3makefile, I386_DARWIN/m3makefile, IBMR2/m3makefile, IBMRT/m3makefile, IRIX5/m3makefile, LINUX/m3makefile, LINUXELF/m3makefile, LINUXLIBC6/m3makefile, NEXT/m3makefile, NT386/m3makefile, NT386GNU/m3makefile, NetBSD2_i386/m3makefile, OKI/m3makefile, OS2/m3makefile, PPC_DARWIN/m3makefile, SEQUENT/m3makefile, SPARC/m3makefile, SUN3/m3makefile, SUN386/m3makefile, UMAX/m3makefile, VAX/m3makefile, common/m3makefile: make RTMachine private on all platforms notice it already was on SOLgnu/SOLsun 2009-11-21 20:29 jkrell * m3-libs/m3core/src/runtime/HPPA/: RTThread.m3.sav: delete another RTThread.m3 2009-11-21 20:28 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTThread.m3, ALPHA_OSF/RTThread.m3, AMD64_DARWIN/RTThread.m3, AP3000/RTThread.m3, ARM/RTThread.m3, DS3100/RTThread.m3, FreeBSD/RTThread.m3, FreeBSD2/RTThread.m3, FreeBSD3/RTThread.m3, FreeBSD4/RTThread.m3, HP300/RTThread.m3, HPPA/RTThread.m3, I386_DARWIN/RTThread.m3, IBMR2/RTThread.m3, IBMRT/RTThread.m3, IRIX5/RTThread.m3, LINUX/RTThread.m3, LINUXELF/RTThread.m3, LINUXLIBC6/RTThread.m3, NEXT/RTThread.m3, NetBSD2_i386/RTThread.m3, OKI/RTThread.m3, OS2/RTThread.m3, POSIX/RTThread.m3, PPC_DARWIN/RTThread.m3, SEQUENT/RTThread.m3, SOLgnu/RTThread.m3, SOLsun/RTThread.m3, SPARC/RTThread.m3, SUN3/RTThread.m3, SUN386/RTThread.m3, UMAX/RTThread.m3, VAX/RTThread.m3: copy from head: delete all RTThread.m3 files 2009-11-21 20:23 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTThreadC.c, ALPHA_OSF/RTThreadC.c, AMD64_DARWIN/RTThreadC.c, AP3000/RTThreadC.c, ARM/RTThreadC.c, DS3100/RTThreadC.c, FreeBSD/RTThreadC.c, FreeBSD2/RTThreadC.c, FreeBSD3/RTThreadC.c, FreeBSD4/RTThreadC.c, HP300/RTThreadC.c, HPPA/RTThreadC.c, I386_DARWIN/RTThreadC.c, IBMR2/RTThreadC.c, IBMRT/RTThreadC.c, IRIX5/RTThreadC.c, LINUX/RTThreadC.c, LINUXELF/RTThreadC.c, LINUXLIBC6/RTThreadC.c, NEXT/RTThreadC.c, NetBSD2_i386/RTThreadC.c, OKI/RTThreadC.c, OS2/RTThreadC.c, PPC_DARWIN/RTThreadC.c, SEQUENT/RTThreadC.c, SOLgnu/RTMachineASM.s, SOLgnu/RTThreadC.c, SOLsun/RTMachineASM.s, SOLsun/RTThreadC.c, SPARC/RTThreadC.c, SUN3/RTThreadC.c, SUN386/RTThreadC.c, UMAX/RTThreadC.c, VAX/RTThreadC.c: copy from head: delete all the RTThreadC.c files delete SOLgnu/RTMachineASM.s (moved into RTStackC.c) delete SOLsun/RTMachineASM.s (moved into RTStackC.c) 2009-11-21 20:06 jkrell * m3-libs/m3core/src/thread/: Common/ThreadF.i3, WIN32/ThreadWin32.m3: remove SetSwitchingInterval 2009-11-21 19:57 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, AIX386/m3makefile, ALPHA_OSF/RTMachine.i3, ALPHA_OSF/m3makefile, AMD64_DARWIN/RTMachine.i3, AMD64_DARWIN/m3makefile, AP3000/RTMachine.i3, AP3000/m3makefile, ARM/RTMachine.i3, ARM/m3makefile, DS3100/RTMachine.i3, DS3100/m3makefile, FreeBSD/RTMachine.i3, FreeBSD/m3makefile, FreeBSD2/RTMachine.i3, FreeBSD2/m3makefile, FreeBSD3/RTMachine.i3, FreeBSD3/m3makefile, FreeBSD4/RTMachine.i3, FreeBSD4/m3makefile, HP300/RTMachine.i3, HP300/m3makefile, HPPA/RTMachine.i3, HPPA/m3makefile, I386_DARWIN/RTMachine.i3, I386_DARWIN/m3makefile, IBMR2/RTMachine.i3, IBMR2/m3makefile, IBMRT/RTMachine.i3, IBMRT/m3makefile, IRIX5/RTMachine.i3, IRIX5/m3makefile, LINUX/RTMachine.i3, LINUX/m3makefile, LINUXELF/RTMachine.i3, LINUXELF/m3makefile, LINUXLIBC6/RTMachine.i3, LINUXLIBC6/m3makefile, NEXT/RTMachine.i3, NEXT/m3makefile, NT386/RTMachine.i3, NT386GNU/RTMachine.i3, NetBSD2_i386/RTMachine.i3, NetBSD2_i386/m3makefile, OKI/RTMachine.i3, OKI/m3makefile, OS2/RTMachine.i3, OS2/m3makefile, PPC_DARWIN/RTMachine.i3, PPC_DARWIN/m3makefile, SEQUENT/RTMachine.i3, SEQUENT/m3makefile, SOLgnu/RTMachine.i3, SPARC/RTMachine.i3, SPARC/m3makefile, SPARC64_SOLARIS/RTMachine.i3, SPARC64_SOLARIS/m3makefile, SUN3/RTMachine.i3, SUN3/m3makefile, SUN386/RTMachine.i3, SUN386/m3makefile, UMAX/RTMachine.i3, UMAX/m3makefile, VAX/RTMachine.i3, VAX/m3makefile: COPY from head removal of various user threading support most of this had to do with poking jmp_buf just right, but we now use get/set/make/swapcontext instead which abstracts that, except for OpenBSD (and possibly old Darwin) where we do the work in #ifdef'ed C also manually compute numbers instead of using Word.Shift deletes to follow 2009-11-21 19:41 jkrell * m3-libs/m3core/src/thread/POSIX/: ThreadPosix.h, ThreadPosix.i3, ThreadPosix.m3, ThreadPosixC.c: COPY wholesale from head 2009-11-21 19:38 jkrell * m3-libs/m3core/src/thread.quake: switch OpenBSD/x86 to user threads (which need to be merged/copied as well) 2009-11-21 19:37 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: just dump all the OpenBSD code 2009-11-21 19:35 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: #error for OpenBSD, it doesn't work and anyone working on it can remove the #error 2009-11-21 19:33 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: COPY wholesale from head including use pthread_suspend/resume_np on FreeBSD instead of signal/semaphore (and pthread_attr_getstack) similar attempts on OpenBSD, but it doesn't work movement of C and assembly code (esp. for Apple and Solaris) 2009-11-21 19:28 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: merge from head: use local wrappers instead of Upthread 2009-11-21 19:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.i3: merge from head: wrap pthread_mutex_lock and pthread_mutex_unlock in C 2009-11-21 19:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: merge from head: remove extra #define ZeroMemory 2009-11-21 19:22 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: slotMu vs. slotsMu (comment only) 2009-11-21 19:21 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: merge from head: just always use 'THREAD_LOCAL_SLOW' 2009-11-21 19:20 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: slotMu vs. slotsMu 2009-11-21 19:18 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: merge from head: just always use 'THREAD_LOCAL_SLOW' 2009-11-21 19:16 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: merge from head: no more use of Upthread (define things locally) 2009-11-21 19:09 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: merge from head: make the static mutexes and condition variables variables instead of functions 2009-11-21 19:06 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: merge from head: make the static mutexes and condition variables variables instead of pairs of functions 2009-11-21 10:59 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: MyFPState 2009-11-21 10:57 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: MyFPState, MyHeapState, SetSwitchingInterval, DisableSwitching, EnableSwitching 2009-11-21 10:53 jkrell * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3, WIN32/ThreadWin32.m3: MyFPState, MyHeapState, SetSwitchingInterval, DisableSwitching, EnableSwitching 2009-11-20 23:01 rcoleburn * m3-sys/m3tests/src/m3makefile: Add p213 test case for new "Mutex Checker" test program.--Randy Coleburn 2009-11-20 21:19 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Let's try this for OpenBSD stackseg brokenness. 2009-11-20 20:30 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: remove non-working M3_THREADS_USE_SIGALTSTACK_AND_JMPBUF for now for now stuck with non-portable jmpbuf groveling on OpenBSD 2009-11-20 20:28 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: eliminate more tabs 2009-11-20 20:04 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: add pthread_attr_destroy in the FreeBSD case see http://www.freebsd.org/cgi/man.cgi?query=pthread_attr_get_np&apropos=0&sektion=0&manpath=FreeBSD+7.2-RELEASE&format=html 2009-11-20 19:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: twiddle between char* and void* more 2009-11-20 19:37 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c: void* to char* 2009-11-20 19:34 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: void* to char* 2009-11-20 19:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: favor char* over void* it is more amenable to comparison and arithmetic, esp. w/o relying on gcc-isms and adding casts 2009-11-20 19:28 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: change tabs to spaces, for consistent rendering in editors that default to 4 space tabs 2009-11-20 15:13 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Does OpenBSD not report a reliable stack pointer for stopped threads? If not, then we have no way except to scan from sp to sp+size. What does this mean for FreeBSD? Is it just as broken? Yuck. 2009-11-20 11:28 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: altzone fix from head (based on Python -- subtract an hour) 2009-11-20 11:25 jkrell * m3-libs/m3core/src/unix/Common/: UnixC.c, Usocket.c, UtimeC.c: more careful merging from head assert => M3_STATIC_ASSERT new assertions about times and sockets, not yet taken advantage of (head takes advantage of them, to reduce Usysdep.i3) 2009-11-20 11:22 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: fix for more premature merging 2009-11-20 11:15 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: fix 2009-11-20 10:54 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: partial merge from head: for now just the added lines 2009-11-20 10:51 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: fix newlines 2009-11-20 10:45 jkrell * m3-libs/m3core/src/: thread/PTHREAD/ThreadPThreadC.c, unix/Common/UtimeC.c, unix/Common/m3unix.h: merge from head: timespec_t => timespec_T to avoid warning due to newer Sun headers having the same typedef 2009-11-20 10:31 jkrell * m3-libs/m3core/src/runtime/common/: RTLinker.m3, RTLinkerX.i3: fix: ThreadF => ThreadInternal 2009-11-20 10:19 jkrell * m3-libs/m3core/src/: float/DS3100/FloatMode.m3, float/IRIX5/FloatMode.m3, float/VAX/FloatMode.m3, runtime/NT386/RTSignal.m3, runtime/WIN32/RTOS.m3, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/ex_frame/RTExFrame.m3, runtime/ex_frame/RTException.m3, thread/Common/ThreadF.i3, thread/Common/ThreadUnsafe.i3, thread/Common/m3makefile, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.i3, thread/POSIX/ThreadPosix.m3, thread/POSIX/m3makefile, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/PTHREAD/m3makefile, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadInternal.i3, thread/WIN32/ThreadWin32.i3, thread/WIN32/ThreadWin32.m3, thread/WIN32/m3makefile: merge from head: ThreadF/ThreadUnsafe => ThreadInternal (except for ThreadF.MyId, Id, State) 2009-11-20 09:39 jkrell * m3-libs/m3core/src/float/: DS3100/FloatMode.m3, IRIX5/FloatMode.m3, VAX/FloatMode.m3: ThreadF => ThreadInternal 2009-11-20 09:27 jkrell * m3-libs/m3core/src/win32/: WinNT.i3, WinNTc.c, m3makefile: minor merge from head: m3_MemoryBarrier => WinNT__MemoryBarrier 2009-11-20 09:13 jkrell * m3-libs/m3core/src/: platforms.quake, thread/Common/ThreadF.i3, thread/Common/ThreadInternal.i3: new files from head 2009-11-20 08:49 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix my mista;e ThreadPThread__SaveRegsInStack is referenced from Modula-3 so must remain here for all platforms 2009-11-20 08:27 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: inactive attempt at http://www.usenix.org/event/usenix2000/general/full_papers/engelschall/engelschall.pdf which would be much more portable than what we currently have for OpenBSD (which lacks get/set/make/swapcontext, as well as decent pthread implementation, though I will retest pthreads shortly) doesn't seem to work I must have something simple wrong. It does seem dangerous to call sigaltstack with any signals other than SIGUSR1 enabled. 2009-11-20 08:17 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosix.h: remove unused declaration 2009-11-18 10:10 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix 2009-11-17 20:23 hosking * m3-libs/m3core/src/: runtime/SOLgnu/RTStackC.c, runtime/SOLsun/RTStackC.c, thread/PTHREAD/ThreadPThreadC.c: SaveRegsInStack is a *static* asm (not embedded in the body of a C-level function). The C *declaration* is there only for C calls. Tidy up a few symbols as well. 2009-11-17 20:05 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThreadC.c: wrap everything 2009-11-17 19:59 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: better: remove ThreadPThread__SaveRegsInStack entirely for most platforms 2009-11-17 19:58 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix 2009-11-17 19:58 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix for SOLgnu (and probably SOLsun, SPARC{32,64}_{SOLARIS,LINUX,FREEBSD,OPENBSD,etc.}) ThreadPThreadC.c 2009-11-17 00:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: comments and fix #if/#endif 2009-11-17 00:26 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: remove tentative (#if 0'ed) use of __thread 2009-11-17 00:25 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: ThreadPThread__SuspendThread and ThreadPThread__RestartThread are identical for OpenBSD and FreeBSD, don't duplicate them (we can probably use same for others such as NetBSD, Irix, AIX, and almost the same for Solaris) 2009-11-17 00:21 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: remove redundant #define of ZeroMemory 2009-11-17 00:20 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: move all #includes to top rename CUSTOM_SUSPEND_ASSERT_FALSE to M3_DIRECT_SUSPEND_ASSERT_FALSE fprintf and abort after assert(0) 2009-11-17 00:12 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: replace Apple | FreeBSD | OpenBSD with M3_DIRECT_SUSPEND 2009-11-17 00:10 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: replace __0OpenBSD__ with __OpenBSD__ 2009-11-15 12:38 wagner * www/: download.html, news.html, top.html: add link to contributed Debian archives 2009-11-14 21:41 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Reorder for readability. 2009-11-14 21:39 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: Some assertions for OpenBSD. 2009-11-14 21:23 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Use thread suspend/resume primitives on FreeBSD. I've tested p007 with this and it works fine on Mika's FreeBSD machine. Further testing needed please! Cleaned up thread state processing code. Made static mutexes directly accessible to eliminate special-purpose mutex routines. 2009-11-11 06:21 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3, ThreadWin32C.c: use windows.h MemoryBarrier if available or WinNT__MemoryBarrier 2009-11-11 06:18 jkrell * m3-libs/m3core/src/win32/: WinNT.i3, WinNTc.c, m3makefile: cleanup WinNT__MemoryBarrier 2009-11-11 05:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: cleanup (extern C, include atomic.h) 2009-11-10 16:55 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: FreeBSD seems to lose signals somehow... So, let's be even more precise about states and signaling. 2009-11-10 03:49 hosking * m3-libs/m3core/src/m3makefile: Ditch atomic here. Use CAS/CASP builtins in preference. 2009-11-10 03:47 hosking * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3, ThreadWin32C.c: Put the memory barrier stuff here if it is needed for MSC. Generally, I prefer using the already-supported gcc intrinsics, which give inline instructions where needed. On x86, a StoreLoad membar can also be implemented using CAS/CASP builtins. This will be preferred for other targets than WIN32. Jay should decide what he wants to do. It can easily be supported by implementing the __sync_* functions that the gcc-based backend otherwise implements as intrinsics. Beware for now that the current gcc-based backend is not up-to-date for proper generation of mfence on x86. We need to move to a later version of gcc (gcc-4.4.1?) for that. Also, I am unconvinced that the current implementation of AssignSlot can ever be correct without the critical section. It requires atomic update of both the slots array pointer (with the new slots) *and* the array elements. This requires a proper CS instead of non-blocking synchronization. 2009-11-09 22:38 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Avoid warning. 2009-11-09 22:37 hosking * m3-libs/m3core/src/m3makefile: Current atomic breaks on Mac OS X. Disable. 2009-11-09 22:32 hosking * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, ALPHA_OSF/RTMachine.i3, AMD64_DARWIN/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, DS3100/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, FreeBSD4/RTMachine.i3, HP300/RTMachine.i3, HPPA/RTMachine.i3, I386_DARWIN/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, LINUXLIBC6/RTMachine.i3, NEXT/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, PPC_DARWIN/RTMachine.i3, SEQUENT/RTMachine.i3, SPARC/RTMachine.i3, SUN3/RTMachine.i3, SUN386/RTMachine.i3, UMAX/RTMachine.i3, VAX/RTMachine.i3: Trash unnecessary code from old user-threads implementation. 2009-11-09 22:31 hosking * m3-libs/m3core/src/runtime/: SOLgnu/RTMachine.i3, SOLgnu/RTStackC.c, SOLsun/RTMachine.i3, SOLsun/RTStackC.c, SPARC64_SOLARIS/RTMachine.i3, SPARC64_SOLARIS/m3makefile: Clean up for compilation on both 64-bit and 32-bit. Need to verify that SPARC64_SOLARIS FrameInfo is correct before enabling stack walking on 64-bit. 2009-11-09 21:39 hosking * m3-libs/m3core/src/: thread/PTHREAD/ThreadPThreadC.c, runtime/SOLgnu/RTMachineASM.s, runtime/SOLgnu/RTStackC.c, runtime/SOLgnu/m3makefile, runtime/SOLsun/RTMachineASM.s, runtime/SOLsun/RTStackC.c, runtime/SOLsun/m3makefile: Move SPARC window flushing code into C files as ASM. Eliminates a couple of files, and makes things more modular. 2009-11-09 16:14 hosking * m3-libs/m3core/src/thread/PTHREAD/m3makefile: ThreadPThread.s no longer exists here. 2009-11-09 05:13 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: use Atomic.MemoryBarrier instead of ThreadWin32.MemoryBarrier 2009-11-09 04:58 jkrell * m3-libs/m3core/src/m3makefile: enable atomic, probably will need interface policing 2009-11-09 01:11 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: remove locking from FreeSlot also, using InterlockedIncrement/Decrement on n_slotted 2009-11-09 00:58 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: tweak 2009-11-09 00:54 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: eliminate locking of reading slots ensure the writing is done with a careful ordering, using MemoryBarrier slots has high use on Win32 but low use now in pthreads (essentially Modula-3 Win32 threads had two big locks affecting "all" thread options, now down to one) 2009-11-09 00:36 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: OK, fine, yes we don't need to lock in InitActivations. But why bother with the repeated assertions. 2009-11-09 00:22 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: no locking needed here, during startup 2009-11-08 23:49 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: go back to Tony's version 163 otherwise I intermittently get: *** *** runtime error: *** Thread client error: unslotted thread! *** file "../src/thread/PTHREAD/ThreadPThread.m3", line 360 *** which I think may indicate some other bug or fragility 2009-11-08 23:43 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: something odd here, go back a version 2009-11-08 23:37 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: reduce critical section slightly (I don't think the locking is needed here at all actually.) 2009-11-08 23:09 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: please, no tabs 2009-11-08 23:06 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: update coment to not refer to RunThread that I removed 2009-11-08 22:22 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: inline RunThread in its only caller ThreadBase 2009-11-08 21:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: inline InitActivations into its only caller Init 2009-11-08 21:17 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: This appears to work on Mika's AMD64_FREEBSD box, at least for p007. Further testing needed. Hopefully should also fix the problems on OpenBSD? 2009-11-08 08:19 hosking * m3-libs/m3core/src/: thread/PTHREAD/ThreadPThread.i3, thread/PTHREAD/ThreadPThread.m3, thread/PTHREAD/ThreadPThreadC.c, unix/Common/Upthread.c, unix/Common/Upthread.i3, unix/Common/m3makefile, unix/darwin-generic/Upthread.i3, unix/darwin-generic/Upthread.m3, unix/darwin-generic/m3makefile, unix/freebsd-4/Upthread.i3, unix/freebsd-4/m3makefile, unix/linux-libc6/Upthread.i3, unix/linux-libc6/m3makefile, unix/solaris-2-x/Upthread.i3, unix/solaris-2-x/m3makefile: Rework ThreadPThread to avoid use of deprecated Upthread.i3. Delete Upthread files. Rework ThreadPThread to avoid expensive Self() call on thread primitives by putting the thread state in the (UNTRACED) Activation rather than Thread.T. Be much more cautious about resending signals to avoid too many acks. Hopefully this will fix the reported errors on FreeBSD7. Needs thorough testing on all platforms (help appreciated). Tested on I386_DARWIN, but needs testing on non-Darwin systems that use signals to stop threads. 2009-11-07 21:55 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: need to clear join after broadcast for the Alert during AlertWait code, like pthread 2009-11-07 21:52 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Slightly restructure for better code sharing and greater similarity with Pthread implementation (maybe we can share more code..) Copy the code from pthread as well for correctly dealing with an alert within AlertWait. 2009-11-07 21:34 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: no need for these self variables that are only used once (except maybe where the order varies) 2009-11-07 19:39 hosking * m3-libs/m3core/src/unix/solaris-common/Usysdep.i3: Drop ref to Upthread. 2009-11-07 18:56 wagner * www/: index.html, nav-home.html, news.html, olds.html, startf.html: split news and start page 2009-11-06 18:28 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: The assertion may be wrong (cf. Boehm collector pthread_stop_world.c). 2009-11-06 00:36 wagner * www/: download.html, news.html: switch to RC4 2009-11-05 23:35 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Another version for Mika to try. Not sure why we might need to extract the semaphore value yet again, but OK. 2009-11-05 23:01 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Some more sanity checking for Mika. 2009-11-05 22:13 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Print out errno for unexpected values. 2009-11-05 21:15 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Let's keep all calls to Self at the top-level entry points. 2009-11-05 21:09 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Fix compilation error. And eliminate GetActivation. 2009-11-05 20:54 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Non-M3 threads should never hold Mutex or Condition references (otherwise the GC cannot find those references). Non-M3 threads should never call TestAlert. 2009-11-05 19:37 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: use common code Self/SelfOrDie/XJoin though the diagnostics suffer slightly in terms of function name/line (we could pass them in, but that maybe is not worth the cost) 2009-11-05 18:52 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: fix typo and limit width to 80 (I'm not strict about this, but I happen to be in a narrow terminal and it is easy here); but it doesn't work anyway and is disabled, user threads for now 2009-11-05 17:56 jkrell * m3-libs/m3core/src/unix/Common/Usignal.i3: copy from head -- remove pragma extern on interfaces 2009-11-05 17:54 jkrell * m3-libs/m3core/src/runtime/common/: RTCollector.m3, RTCollectorSRC.i3: minor partial merge from head -- add do-nothing DisableVM for slightly improved source compatibility with older cm3 (slightly easier building of old cm3 against new m3core, which I sometimes run into investigating historical behavior and when things changed, which is a scenario that doesn't work well and is only a very minor improvement to) 2009-11-05 17:53 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3, ThreadPThreadC.c: Revert state management to what it used to be. Add (hopefully correct) extraction of sp for OpenBSD. 2009-11-05 17:49 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: context.c, context.h: Trivial and so far moot copy/merge from head. - move #defines get/set/make/swapcontext Uucontext__get/set/make/swapcontext from .c to .h, so that over in ThreadPosix.c they can #include context.h and get them - only store the stack pointer for the first call to setjmp, not both These only matter if we port more stuff from head and then only for OpenBSD or (untested) pre-10.5 Darwin/PPC. (There is the minor matter of 10.4 Darwin/Intel.) 2009-11-05 17:42 jkrell * m3-libs/m3core/src/unix/Common/Upwd.i3: copy from head -- remove pragma extern on interfaces 2009-11-05 17:41 jkrell * m3-libs/m3core/src/runtime/common/RTIO.i3: from head -- fix a comment 2009-11-05 17:37 jkrell * m3-libs/m3core/src/unix/Common/Uin.c: copy/merge from head -- #include arpa/inet.h 2009-11-05 17:26 jkrell * m3-libs/m3core/src/unix/Common/: Uexec.i3, Unix.i3, Uprocess.i3, Usched.i3, Uugid.i3, Uuio.i3: Trivial merge/copy from head: remove external pragamas on interfaces, add one functions to correlate (just on vfork -- in our current scheme functions need their own anyway to affect the rename, except that vfork cannot be wrapped without violating Posix spec (and we never use vfork, we use fork instead, fork is just as fast (or slow, Cygwin) on all our platforms, vfork is left here just for some sort of compat..though it isn't even exactly compatible (NetBSD?))))) 2009-11-03 20:42 hosking * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3: Implement check that at most one thread can join. 2009-11-03 20:30 hosking * m3-libs/m3core/src/runtime/common/RTType.m3: Oops, dropped TypeDefnToName somehow. 2009-11-03 20:26 hosking * m3-libs/m3core/src/runtime/common/: RTTypeSRC.i3, RTType.m3: No need for TypecodeCharStar. We can print using RTIO.PutString(RTType.Get(tc).name). 2009-11-03 18:03 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Revert until we resolve some questions as to spec for Join/AlertJoin. 2009-11-03 17:36 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Check for double join. 2009-11-03 17:06 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Undo undo. Sorry Jay. Forgot that InitMutex is used for both Condition and Mutex. 2009-11-03 17:02 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Revert Condition = MUTEX OBJECT. Not sure why Jay undid this. Should work fine. 2009-11-03 16:54 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Ignore stacks of threads that aren't yet fully initialized/running. Now Juno works on OpenBSD/x86 with user threads! 2009-11-03 15:29 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/context.c: use just the one notion of the stack (from the jumpbuf instead of the address of a local or parameter) 2009-11-03 15:21 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/context.c: only set ss_sp on the get side, not on the return size, seems to fix the OpenBSD problem..still testing.. 2009-11-03 14:02 jkrell * m3-sys/m3cc/src/m3makefile: -static on OpenBSD to avoid the ever changing libc.so name 2009-11-03 13:55 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: cleanup the #ifs and #defines (compiles on OpenBSD/x86, Solaris/sparc, Darwin/x86) 2009-11-03 13:49 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: 0 to NULL 2009-11-03 13:23 jkrell * m3-libs/m3core/src/thread.quake: again userthreads on OpenBSD, seems to work 2009-11-03 13:20 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: style: use NULL instead of 0 (arguable) 2009-11-03 13:15 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/context.c: fill in the stack in getcontext (just to the address of parameter), so we don't access NULL 2009-11-03 13:13 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: check for failure 2009-11-03 13:07 jkrell * m3-libs/m3core/src/thread/POSIX/: ThreadPosixC.c, ThreadPosix.m3: check for failure 2009-11-03 12:59 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: fix for C++ -- #include string.h and cast from void* 2009-11-03 12:50 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: go ahead and zero act, oact, being sure to #define ZeroMemory like in m3unix.h to hopefully avoid warning (in time we'll probably #include m3unix.h always here and remove the #define, once we compile on a few more systems) 2009-11-03 12:38 jkrell * m3-libs/m3core/src/thread/POSIX/ThreadPosixC.c: remove unused macro ZeroMemory 2009-11-03 12:06 jkrell * m3-sys/cminstall/src/config-no-install/: OpenBSD.common, Unix.common: Actually use -static on OpenBSD as OpenBSD seems to have absolutely zero compatibility for dynamic files across releases with default installs -- libc.so changes name. This addresses cm3. cm3cg still needs a fix like this. 2009-11-03 12:02 jkrell * scripts/sysinfo.sh: reduce echoing that causes problems 2009-11-03 11:57 jkrell * scripts/sysinfo.sh: remove echos that break m3-sys/cm3/src/version.quake 2009-11-03 11:25 jkrell * m3-libs/m3core/src/: thread.quake, thread/PTHREAD/ThreadPThreadC.c: neuter OpenBSD changes pending investigation/fix; it worked 'better' before even though it didn't really work 2009-11-03 11:01 jkrell * m3-libs/m3core/src/: thread.quake, thread/POSIX/ThreadPosixC.c, unix/Common/context/setjmp/context.c, unix/Common/context/setjmp/context.h: slightly adapt so OpenBSD can compile/link user threads, and uses them by default. (OpenBSD doesn't have ucontext.h and has a wierd ucontext.h; we replace them in our context.h) but also crashes Can we fix it? Maybe. Some of the #ifdef __OpenBSD__ should be dropped as compilation is tested on other platforms. 2009-11-03 10:56 jkrell * m3-libs/m3core/src/runtime/common/RTMachine.i3: fix so it compiles 2009-11-03 10:54 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: adapt to use pthread_suspend/resume_np on OpenBSD only crashes though Can we fix it? Maybe. 2009-11-03 09:47 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: restore it to compiling -- put back Condition inheriting from MUTEX and use the correct identifier on END 2009-11-02 23:24 wagner * scripts/: make-dist.sh, version: move to RC4 at last 2009-11-02 21:58 jkrell * scripts/python/pylib.py: a few more processor names 2009-11-02 21:57 jkrell * scripts/python/pylib.py: should allow building Debian packages for any target 2009-11-02 21:52 jkrell * scripts/python/pylib.py: should allow building Debian packages for any target 2009-11-02 18:18 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Let's make the mutex in Condition explicit rather than inherited. Implementation of Condition may change making it not like a mutex exactly. 2009-11-02 16:31 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: - remove the funny recursive retry in favor a normal loop - use a clearer and more accurate test to determine who won the race The previous code was ok but the comment not always right as multiple threads could allocate a table of n+n size. 2009-11-02 15:44 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix 2009-11-02 15:42 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: merge StopWorld into its only caller SuspendOthers, similar to how ResumeOthers was already written seemingly avoid unnecessary calls to GetActivation also, though not sure this ever occurs recursively as the code is prepared to handle 2009-11-02 15:26 jkrell * m3-libs/m3core/src/thread/: PTHREAD/ThreadPThread.m3, WIN32/ThreadWin32.m3: fix AssignSlot under race condition + low resources 2009-11-02 15:24 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: back to a criticalsection for suspendCount inline InitActivations start out inCritical 2009-11-02 15:20 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: save a newline 2009-11-02 15:18 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: use literal type instead of explcit type f := 1 instead of f: INTEGER := 1 2009-11-02 15:00 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Go back to critical section for suspendCount; I don't see a simple way around it. 2009-11-02 14:47 jkrell * m3-libs/m3core/src/thread/: PTHREAD/ThreadPThread.m3, WIN32/ThreadWin32.m3: fix very dubious looking code in rare condition in AssignSlot, probably can rewrite this function better though 2009-11-02 14:44 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: raise an exception when CreateThread fails (presumably low memory) and remove useless checks 2009-11-02 14:24 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: thread-safe manipulation of suspendCount does not necessarily? lead to the correct decision; start fixing this 2009-11-02 13:30 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: InitActivations is only called once; inline it 2009-11-02 13:24 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: assert inCritical = 1 in Init 2009-11-02 13:18 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove unused lock from Condition 2009-11-02 13:16 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: cosmetic: remove comment about idle threads, save a newline, add a semicolon 2009-11-02 13:15 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Rename "cond" to "join". Slight cleanup in RunThread to match pthread/head. 2009-11-02 13:11 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove another idle thread comment reference 2009-11-02 13:10 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove comment about idle threads 2009-11-02 13:09 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: There is no need to guard use of "unlinked" locals with a critical section, esp./including a call into the kernel (CloseHandle). (match head) 2009-11-02 13:06 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Remove ridiculous threadMu that serializes access to all fields of all threads. Instead make each thread have its own lock. 2009-11-02 13:02 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadInternal.i3, ThreadWin32.m3: equate thread id with Windows GetCurrentThreadId this requires moving a few perf notifications to be from within the thread instead of the e.g. creating/joining thread 2009-11-02 12:44 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove more idle thread remains 2009-11-02 12:39 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Fix to balance SuspendThread and ResumeThread to avoid "random" hangs, such as in Juno startup. 2009-11-02 12:30 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: Remove idle thread code. I had recently bumped the idle thread count to 0 and the code is gone in head. However this was in response to heap corruption that was ultimately found to be caused by something else, so maybe maybe maybe we should restore this code for a performance gain. Maybe. 2009-11-02 12:17 jkrell * m3-libs/m3core/src/thread/Common/: ThreadDebug.c, ThreadDebug.i3, m3makefile: new files from head, in case we fully merge ThreadWin32.m3 2009-11-02 12:14 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32C.c: portability fix 2009-11-02 12:11 jkrell * m3-libs/m3core/src/thread/Common/Thread.i3: cosmetic change from head 2009-11-02 11:53 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: reshrink critical section by using interlocked 2009-11-02 11:39 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: manage suspended more correct with regard to thread creation 2009-11-02 11:30 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: move it up to the transparent ones 2009-11-02 11:28 jkrell * m3-libs/m3core/src/: runtime/common/RTHeapRep.i3, thread/WIN32/ThreadWin32.m3: put suspended directly in Thread analogous to pthread (which uses a 4 state enum for the same information) 2009-11-02 11:23 jkrell * m3-libs/m3core/src/: runtime/common/RTHeapRep.i3, thread/WIN32/ThreadWin32.m3: Balance SuspendThread/ResumeThread so as to not randomly hang, such as in Juno startup. 2009-11-02 11:07 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: go back a version; that isn't right either 2009-11-02 10:56 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Fix occasional hang starting up Juno -- or rather, fix random hangs in any Win32 Modula-3 code. SuspendThread/ResumeThread wasn't being balanced. The symptom in Juno is that the posted "forge vbt" event wasn't getting recieved. The giveaway however was noticing suspend counts >1 in the debugger when you'd really only expect them all to be 1, or sometimes in Modula-2, 2. But no more than one thread should be 2 and none should be higher. 2009-11-01 11:53 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove incorrect perf notification (all cross-thread ones were recently changed to non cross-thread in order that id == GetCurrentThreadId()) 2009-11-01 11:41 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: win9x compat (or at least compat with older docs, which I presume correlates) -- don't pass NIL for threadid parameter of CreateThread 2009-11-01 11:34 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Don't bother getting the previous count in ReleaseSemaphore since it is never used (matches head). 2009-11-01 11:24 jkrell * m3-sys/cminstall/src/config-no-install/NT386: style alteration 2009-10-31 18:38 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: I may have broken old space write barriers... revert until can be reconsidered. 2009-10-31 15:16 jkrell * m3-libs/m3core/src/runtime/common/RTUntracedMemory.i3: fix newlines 2009-10-31 15:16 jkrell * m3-libs/m3core/src/runtime/common/: RTCollector.m3, RTType.m3, RTTypeSRC.i3: print type names just not type codes this might violate RTTypeSRC's safety, in which case move it to RTTypeSRCUnsafe 2009-10-31 14:53 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: also print weak field 2009-10-31 14:48 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: print more information when an assertion is going to fail besides, factor two nearly identical functions (one just had one extra line vs. the other) 2009-10-31 14:47 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: go back a version because messed up cvs command line such as to have no comment 2009-10-31 14:46 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: RTCollector.m3 2009-10-31 13:41 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: invert delayload default for compat with older linkers 2009-10-31 13:35 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: cosmetic changes to reduce diff to head -- removing parens on IF/THEN 2009-10-31 13:33 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: restore slightly more efficient unlock order to match release and Birrel paper (see revision 1.75 at Tue Sep 29 17:34:35 2009) 2009-10-30 03:30 rcoleburn * scripts/doc/: Read_Me.pdf, Read_Me.txt: Seems I needed at least one file in the folder to get TortoiseCVS/CVSNT to create the folders, so put in a ReadMe file explaining the "proposed" folder layout. Note that this layout is only proposed; we can change it as needed going forward. --Randy Coleburn 2009-10-30 03:13 rcoleburn * scripts/: ArcDir.CMD, Documentation_CM3SetupCmdEnv.htm, Documentation_CM3SetupCmdEnv.pdf, Documentation_CM3StartIDE.htm, Documentation_CM3StartIDE.pdf, Documentation_cm3Proj.htm, Documentation_cm3Proj.pdf, UnArc.CMD, cm3Proj.cmd, cm3SetupCmdEnv.cmd, cm3StartIDE.CMD, startReactor.cmd, v526_all.CM3P, win/RCC_upgradeCM3.cmd, win/do-cm3.cmd: Based on prior m3devel message I sent out, make the first attempt toward improving structure of "scripts" folder. These changes only affect previous contributions I have made to this folder. That way, others can choose when/if to align their stuff with a new folder layout as time goes on. Since we are close to a release, we don't want to break anything right now. Create new folder "obsolete" and put all my old stuff in there. No one should use any of this stuff. But, just in case anyone is dependent on it currently, it is still avail via the "obsolete" folder. Create new "dev" folder tree with subfolders "windows", "posix", and "python". The later 2 folders are empty. In the "windows" folder, I've put scripts I use on Windows 2000/XP/Vista for "upgrading compiler" (RCC_upgradeCM3.cmd) and for "building packages based on definitions in PkgInfo.txt" (do-cm3.cmd). Create new "install" folder tree with subfolders "windows", "posix", and "python". The later 2 folders are empty. In the "windows" folder, I've put scripts I use on Windows 2000/XP/Vista for "opening up a cm3 command prompt window" (cm3CommandShell.cmd), "starting the IDE" (cm3StartIDE.cmd), and I've revamped my old "cm3Proj.cmd" to work with the new "cm3CommandShell.cmd". Documentation for these 3 scripts is now in the "doc" folder as PDF files. Intent for the "install\windows" folder is that its contents should be copied to the "cm3\bin" folder of the target installation on Windows platforms. Indeed, my "RCC_upgradeCM3.cmd" scripts does just that. --Randy Coleburn 2009-10-30 02:46 rcoleburn * scripts/doc/: Documentation_cm3CommandShell.pdf, Documentation_cm3Proj.pdf, Documentation_cm3StartIDE.pdf, CM3SetupCmdEnv.html, cm3Proj.html, startReactor.html: remove obsolete docs; add new docs for forthcoming (shortly) scripts. --Randy Coleburn 2009-10-26 14:58 jkrell * m3-ui/ui/src/winvbt/WinContext.m3: fix newlines 2009-10-26 14:54 jkrell * m3-sys/cm3/src/Main.m3: fix warning for unused import 2009-10-26 14:20 jkrell * m3-ui/ui/src/winvbt/: WinScrnCursor.m3, WinScrnFont.m3, WinScrnPixmap.m3: fix more zero vs. non-zero vs. 1 confusion 2009-10-26 14:08 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: rename lock "cs" to "heap" which is more understandable and matches head 2009-10-26 14:05 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: rename "cm" lock to "giant" for readability to and to match head 2009-10-26 13:42 jkrell * m3-ui/anim3D/src/win-opengl/Win_OpenGL_Base.m3: fix assertions SetWindowText, UpdateWindow, DestroyWindow are not documented as returning distinguished TRUE for success, merely non-zero 2009-10-26 13:38 jkrell * m3-ui/ui/src/winvbt/WinTrestle.m3: better check for GetMessage return value (but we should raise an exception for -1?) 2009-10-26 13:37 jkrell * m3-ui/ui/src/winvbt/WinTrestle.m3: Fix a few incorrect assertions. Most of these functions are documented as returning 0 for failure and non-zero for success. The distinguished value 1 for success is not called out. There are two exceptions. DeleteDC does return 1 for success. GetMessage is trivalue: 0, -1, 1. 2009-10-26 10:23 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: small amount of compat with 5.2.6 don't use pos if it isn't defined, just hardcode to _m3.lst 2009-10-26 10:19 jkrell * m3-sys/cm3/src/m3makefile: small amount of compat with 5.2.6 / to SL 2009-10-26 09:55 jkrell * m3-ui/vbtkit/src/lego/WIN32/ScrollerVBTClass.m3: match X Windows lock use in Rescreen 2009-10-26 09:29 jkrell * m3-ui/vbtkit/src/lego/WIN32/ScrollerVBTClass.m3: add lock in Rescreen to match X Windows version 2009-10-26 03:05 jkrell * m3-ui/juno-2/juno-app/src/Juno.m3: remove @M3no-trestle-await-delete support from here 2009-10-26 03:03 jkrell * m3-ui/ui/src/trestle/Trestle.m3: remove accidental FATAL from previous 2009-10-26 03:02 jkrell * m3-ui/ui/src/trestle/Trestle.m3: add @M3no-trestle-await-delete, very useful for running gui apps in a loop for debugging 2009-10-25 13:43 hosking * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThreadC.c, ThreadPThread.s: Revert to using RTMachine__SaveRegsInStack. 2009-10-25 13:39 hosking * m3-libs/m3core/src/time/POSIX/: DatePosix.m3, DateBsd.m3: Why import when MUTEX is predeclared. 2009-10-25 12:16 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/m3makefile, SOLgnu/RTMachineASM.s, SOLsun/RTMachineASM.s, SOLsun/m3makefile: bring back RTMachine__SaveRegsInStack for use by RTStackC.c This is highly non-ideal. Tony had done a good thing in reducing two copies to one, and now I've put them back so we have three. However if Solaris is to have user threads, then Tony's copy might not be there. Perhaps we can put it in runtime/common or runtime/posix instead? 2009-10-25 12:08 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: address this: ../src/thread/PTHREAD/ThreadPThreadC.c: In function `ThreadPThread__ProcessRegis ters': ../src/thread/PTHREAD/ThreadPThreadC.c:235: warning: return makes pointer from i nteger without a cast -> archiving libm3core.a Undefined first referenced 2009-10-25 12:04 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: m3_pthread to m3_pthread_t, should fix compilation 2009-10-25 12:01 jkrell * m3-libs/m3core/src/time/POSIX/DatePosix.m3: fix it to compile (missing import) 2009-10-25 10:58 jkrell * m3-libs/m3core/src/runtime/: FreeBSD/_fpsetjmp.s, FreeBSD2/_fpsetjmp.s, FreeBSD3/_fpsetjmp.s, FreeBSD4/_fpsetjmp.s, NetBSD2_i386/_fpsetjmp.s: remove unused files I found in implementing get/set/make/swapcontext on some platforms that it can be a useful strategy to get the compiler to save a bunch of state on the stack by calling a function with many parameters and/or use of floating point, and call setjmp from that function. (see m3core/src/unix/Common/context/setjmp/context.c how it avoids using register-based parameters) 2009-10-25 10:43 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTMachineASM.s, SOLsun/RTMachineASM.s: remove unused files (content now in ThreadPThread.s) 2009-10-25 10:41 jkrell * m3-libs/m3core/src/runtime/: AMD64_DARWIN/RTMachineC.c, I386_DARWIN/RTMachineC.c, PPC_DARWIN/RTMachineC.c: remove unused files (content now in ThreadPThreadC.c) 2009-10-25 10:33 jkrell * m3-libs/m3core/src/runtime/NT386/RTMachine.i3: remove unused import (though I did like it how it was with Word.LeftShift) 2009-10-25 10:29 jkrell * m3-libs/m3core/src/runtime/: I386_DARWIN/RTSignal.m3, AMD64_DARWIN/RTSignal.m3, LINUXLIBC6/RTSignal.m3, PPC_DARWIN/RTSignal.m3, SOLgnu/RTSignal.m3, SOLsun/RTSignal.m3: delete some unused files 2009-10-25 10:07 jkrell * m3-libs/m3core/src/runtime/common/RTUntracedMemoryC.c: experiment with ANSI vs. K&R 2009-10-25 08:12 hosking * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, AIX386/RTThread.m3, AIX386/RTThreadC.c, AIX386/m3makefile, ALPHA_OSF/RTMachine.i3, ALPHA_OSF/RTThread.m3, ALPHA_OSF/RTThreadC.c, ALPHA_OSF/m3makefile, AMD64_DARWIN/RTMachine.i3, AMD64_DARWIN/RTMachineC.c, AMD64_DARWIN/RTThread.m3, AMD64_DARWIN/RTThreadC.c, AMD64_DARWIN/m3makefile, AP3000/RTMachine.i3, AP3000/RTThread.m3, AP3000/RTThreadC.c, AP3000/m3makefile, ARM/RTMachine.i3, ARM/RTThread.m3, ARM/RTThreadC.c, ARM/m3makefile, DS3100/RTMachine.i3, DS3100/RTThread.m3, DS3100/RTThreadC.c, DS3100/m3makefile, FreeBSD/RTMachine.i3, FreeBSD/RTThread.m3, FreeBSD/RTThreadC.c, FreeBSD/m3makefile, FreeBSD2/RTMachine.i3, FreeBSD2/RTThread.m3, FreeBSD2/RTThreadC.c, FreeBSD2/m3makefile, FreeBSD3/RTMachine.i3, FreeBSD3/RTThread.m3, FreeBSD3/RTThreadC.c, FreeBSD3/m3makefile, FreeBSD4/RTMachine.i3, FreeBSD4/RTThread.m3, FreeBSD4/RTThreadC.c, FreeBSD4/m3makefile, HP300/RTMachine.i3, HP300/RTThread.m3, HP300/RTThreadC.c, HP300/m3makefile, HPPA/RTMachine.i3, HPPA/RTThread.m3, HPPA/RTThreadC.c, HPPA/m3makefile, I386_DARWIN/RTMachine.i3, I386_DARWIN/RTMachineC.c, I386_DARWIN/RTThread.m3, I386_DARWIN/RTThreadC.c, I386_DARWIN/m3makefile, IBMR2/RTMachine.i3, IBMR2/RTThread.m3, IBMR2/RTThreadC.c, IBMR2/m3makefile, IBMRT/RTMachine.i3, IBMRT/RTThread.m3, IBMRT/RTThreadC.c, IBMRT/m3makefile, IRIX5/RTMachine.i3, IRIX5/RTThread.m3, IRIX5/RTThreadC.c, IRIX5/m3makefile, LINUX/RTMachine.i3, LINUX/RTThread.m3, LINUX/RTThreadC.c, LINUX/m3makefile, LINUXELF/RTMachine.i3, LINUXELF/RTThread.m3, LINUXELF/RTThreadC.c, LINUXELF/m3makefile, LINUXLIBC6/RTMachine.i3, LINUXLIBC6/RTThread.m3, LINUXLIBC6/RTThreadC.c, LINUXLIBC6/m3makefile, NEXT/RTMachine.i3, NEXT/RTThread.m3, NEXT/RTThreadC.c, NEXT/m3makefile, NT386/RTMachine.i3, NT386GNU/RTMachine.i3, NetBSD2_i386/RTMachine.i3, NetBSD2_i386/RTThread.m3, NetBSD2_i386/RTThreadC.c, NetBSD2_i386/m3makefile, OKI/RTMachine.i3, OKI/RTThread.m3, OKI/RTThreadC.c, OKI/m3makefile, OS2/RTMachine.i3, OS2/RTThread.m3, OS2/RTThreadC.c, OS2/m3makefile, POSIX/RTThread.i3, POSIX/RTThread.m3, POSIX/m3makefile, PPC_DARWIN/RTMachine.i3, PPC_DARWIN/RTThread.m3, PPC_DARWIN/RTThreadC.c, PPC_DARWIN/m3makefile, SEQUENT/RTMachine.i3, SEQUENT/RTThread.m3, SEQUENT/RTThreadC.c, SEQUENT/m3makefile, SOLgnu/RTMachine.i3, SOLgnu/RTThread.m3, SOLgnu/RTThreadC.c, SOLgnu/m3makefile, SOLsun/RTMachine.i3, SOLsun/RTThread.m3, SOLsun/RTThreadC.c, SOLsun/m3makefile, SPARC/RTMachine.i3, SPARC/RTThread.m3, SPARC/RTThreadC.c, SPARC/m3makefile, SPARC64_SOLARIS/RTMachine.i3, SUN3/RTMachine.i3, SUN3/RTThread.m3, SUN3/RTThreadC.c, SUN3/m3makefile, SUN386/RTMachine.i3, SUN386/RTThread.m3, SUN386/RTThreadC.c, SUN386/m3makefile, UMAX/RTMachine.i3, UMAX/RTThread.m3, UMAX/RTThreadC.c, UMAX/m3makefile, VAX/RTMachine.i3, VAX/RTThread.m3, VAX/RTThreadC.c, VAX/m3makefile, common/RTCollector.m3, common/RTMachine.i3, common/RTUntracedMemory.i3: With refactoring of threads support into the respective ThreadPThreadC.c and ThreadPosixC.c we no longer need it smeared through the target directories. 2009-10-25 08:11 hosking * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.i3, POSIX/ThreadPosix.m3, POSIX/ThreadPosixC.c, PTHREAD/ThreadPThread.i3, PTHREAD/ThreadPThread.m3, PTHREAD/ThreadPThread.s, PTHREAD/ThreadPThreadC.c, PTHREAD/m3makefile: Big refactoring of user-level POSIX and pthreads thread implementation. Strategy is to implement user-level threads using makecontext and friends. Push C-dependent pthreads code into a single ThreadPThreadC.c instead of throughout the target directories. Tested both user-level and pthreads threading on I386_DARWIN using p007 test. 2009-10-25 04:41 hosking * m3-libs/m3core/src/runtime/I386_DARWIN/RTMachineC.c: Type m3 properly. 2009-10-25 04:06 hosking * m3-libs/m3core/src/thread/Common/Thread.i3: Cosmetic change. 2009-10-24 14:35 jkrell * m3-libs/m3core/src/runtime/common/RTUntracedMemoryC.c: fix warnings and make calling convention explicit 2009-10-24 14:33 jkrell * m3-libs/m3core/src/runtime/common/RTUntracedMemoryC.c: arithmetic overflow checking on Posix too, incase their calloc doesn't check 2009-10-24 14:32 jkrell * m3-libs/m3core/src/runtime/common/: RTUntracedMemory.i3, RTUntracedMemoryC.c: alternatives to malloc/calloc/free to be used to reduce and maybe eventually eliminate C runtime dependency on Windows 2009-10-23 13:05 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: start out inCritical and then go non-critical shortly into initialization; this way we avoid using condition before it is initialized when we have hacked the heap to start small and collect more often while hunting Juno bug, but it should most likely be this way anyway 2009-10-23 13:01 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix newlines 2009-10-23 12:15 jkrell * m3-libs/m3core/src/thread/: Common/ThreadDebug.c, Common/ThreadDebug.i3, Common/m3makefile, WIN32/ThreadDebugWin32.c, WIN32/ThreadDebugWin32.i3, WIN32/ThreadWin32.m3, WIN32/m3makefile: put portable code in common location, even if not enabled for all platforms, and without platform name in the identifiers 2009-10-23 12:15 jkrell * m3-libs/m3core/src/thread/Common/ThreadDebug.c: file ThreadDebug.c was added on branch release_branch_cm3_5_8 on 2009-11-02 12:17:56 +0000 2009-10-23 12:15 jkrell * m3-libs/m3core/src/thread/Common/ThreadDebug.i3: file ThreadDebug.i3 was added on branch release_branch_cm3_5_8 on 2009-11-02 12:17:56 +0000 2009-10-23 12:04 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadDebugWin32.c: disable it 2009-10-23 12:03 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadDebugWin32.c: make it portable, so far to Cygwin, there's really nothing Win32-specific here 2009-10-21 10:25 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadDebugWin32.c, ThreadDebugWin32.i3, ThreadWin32.m3: honor documented locking protocol for do_signal add a bit more instrumentation (disabled) 2009-10-21 09:14 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadDebugWin32.c: add static 2009-10-21 09:13 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadDebugWin32.c: comment only 2009-10-21 09:12 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadDebugWin32.c: more disabling 2009-10-21 09:09 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadDebugWin32.c, ThreadDebugWin32.i3, ThreadWin32.m3, m3makefile: aggressive instrumentation, hasn't found the bug, disabled should get optimized away 2009-10-15 14:50 jkrell * m3-sys/m3tests/src/: Test.i3, TestC.c: fix to compiler with recently reduced Usysdep.i3 2009-09-29 15:34 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: change: InnerWait: .. Leave(giant) UnlockMutex: TlsGetValue() Enter(giant) do stuff Leave(giant) to: InnerWait: .. UnlockMutex: TlsGetValue() Enter(giant) (recursive now) do stuff Leave(giant) Leave(giant) This increases the critical section ever so slightly, which can't be too bad, and increases atomicity, which can't be bad. Juno now fails rarely, but not never. Sometimes it hangs. Sometimes it has an array access out of bounds. Assuming m.release() is UnlockMutex. Renaming the mutex to "giant" really does make it easier to understand. 2009-09-29 13:48 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: reduce critical section -- esp. remove kernel call CloseHandle 2009-09-29 13:39 jkrell * m3-libs/m3core/src/thread/WIN32/: SchedulerPosix.m3, ThreadWin32.i3, ThreadWin32.m3: like pthread, stop passing around and storing extra thread id just call GetCurrentThreadId as needed (pthread uses the slot index; we have that too, but this is probably better) 2009-09-29 13:35 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: more adjustments to perf callbacks to match pthreads -- this will let us stop storing the thread id redundantly 2009-09-29 13:30 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: move PerfChanged(alive) from Fork to RunThread to patch pthreads and because it enables more profitable mimicing of pthreads imminently 2009-09-29 13:29 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: rename 'cond' to 'join' to match pthreads 2009-09-29 13:00 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: in comments also: cs => heap cm => giant 2009-09-29 12:24 jkrell * m3-ui/juno-2/juno-app/src/Juno.m3: add @M3no-trestle-await-delete command line option This enables test cases on Windows like: for /l %a in (1 1 20) do start /wait /min \cm3\bin\Juno.exe @M3no-trestle-await-delete see if it gets to the end or not 20 worked testing 100 now 2009-09-29 12:15 jkrell * m3-ui/ui/src/winvbt/WinContext.m3: let Juno limp along much better but still doesn't really work 2009-09-29 11:40 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: rename the lock "cm" to "giant" I believe it a broad, albeit maybe briefly held, lock that is needed because condition variables are difficult to implement well on Win32 (prior to Vista, upon which they are they are trivial) either way, "cm" is not a great name 2009-09-29 11:36 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: rename "cs" to "heap" since I believe it is conceptually "the heap lock" "cs" is too short of a name, for certain 2009-09-29 11:14 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix error messages again as Tony had done on Feb 16 2009 2009-09-29 10:52 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: restore one set of parens 2009-09-29 10:51 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: cleanup: no need for parens around top level expression in if contrary to C 2009-09-29 10:45 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: LeaveCriticalSection_activeMu => EnterCriticalSection_activeMu where needed MaxIdle => 0 to disable the idle thread functionality This way Juno no longer crashes worse than historically. 2009-09-29 10:27 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Like pthreads, have Thread.T derive from MUTEX, so we can LOCK it, instead of using one global threadMu for the fields of all threads. Note that Win32 Modula-3 threads/mutexes still scale well due to the the critical section cm that guards everything. Probably can't be fixed until there is a version that depends on the condition variables introduced in Vista. 2009-09-29 10:09 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: remove obsolete comment about rebirth 2009-09-29 10:04 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: make it look a little more like ThreadPThread.m3 with respect to no need to lock setting of thread.result or reading thread.closure remove assertion that thread.closure is non-NIL (maybe Win32 was better here?) assert that allThreads # me; that is, the initial thread never gets here redefine thread id from an always incrementing number to instead match the Win32 thread id Index: ThreadWin32.m3 =================================================================== RCS file: /usr/cvs/cm3/m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3,v retrieving revision 1.60 diff -u -w -r1.60 ThreadWin32.m3 --- ThreadWin32.m3 29 Sep 2009 09:54:06 -0000 1.60 +++ ThreadWin32.m3 29 Sep 2009 10:02:29 -0000 @@ -17,15 +17,14 @@ FROM WinBase IMPORT WaitForSingleObject, INFINITE, ReleaseSemaphore, GetCurrentProcess, DuplicateHandle, GetCurrentThread, CreateSemaphore, CloseHandle, CreateThread, ResumeThread, Sleep, SuspendThread, - GetThreadContext, VirtualQuery, GetLastError, CREATE_SUSPENDED; + GetThreadContext, VirtualQuery, GetLastError, CREATE_SUSPENDED, + GetCurrentThreadId; (*----------------------------------------- Exceptions, types and globals ---*) VAR default_stack: DWORD := 8192; - nextId: Id := 1; - threadMu: Mutex; (* Global lock for internal fields of Thread.T *) @@ -499,31 +498,21 @@ END ThreadBase; PROCEDURE RunThread (me: Activation) = - VAR self: T; cl: Closure; res: REFANY; + VAR self: T; BEGIN EnterCriticalSection_slotMu(); self := slots [me.slot]; LeaveCriticalSection_slotMu(); - LockMutex(threadMu); - cl := self.closure; - self.id := nextId; INC (nextId); - UnlockMutex(threadMu); - - IF (cl = NIL) THEN - Die (ThisLine(), "NIL closure passed to Thread.Fork!"); - END; - (* Run the user-level code. *) IF perfOn THEN PerfRunning(self.id) END; - res := cl.apply(); + self.result := self.closure.apply(); + IF perfOn THEN PerfChanged(self.id, State.dying) END; LockMutex(threadMu); (* mark "self" done and clean it up a bit *) - self.result := res; self.completed := TRUE; Broadcast(self.cond); (* let everybody know that "self" is done *) - IF perfOn THEN PerfChanged(self.id, State.dying) END; UnlockMutex(threadMu); IF perfOn THEN PerfDeleted(self.id) END; @@ -539,7 +528,7 @@ (* remove ourself from the list of active threads *) EnterCriticalSection_activeMu(); - IF allThreads = me THEN allThreads := me.next; END; + <*ASSERT allThreads # me*> me.next.prev := me.prev; me.prev.next := me.next; me.next := NIL; @@ -571,6 +560,7 @@ act := t.act; act.handle := CreateThread(NIL, stack_size, ThreadBase, act, CREATE_SUSPENDED, ADR(id)); + t.id := id; EnterCriticalSection_activeMu(); act.next := allThreads; act.prev := allThreads.prev; @@ -932,7 +922,7 @@ BEGIN threadMu := NEW(Mutex); self := CreateT(me); - self.id := nextId; INC (nextId); + self.id := GetCurrentThreadId(); mutex := NEW(MUTEX); condition := NEW(Condition); 2009-09-29 09:54 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3, ThreadWin32C.c: eliminate idle thread code pass NIL for last parameter to ReleaseSemaphore assign t.closure := closure earlier, before any possible race 2009-09-29 08:52 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: repair LeaveCriticalSection_activeMu() to EnterCriticalSection_activeMu() see: http://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3.diff?r1=1.36;r2=1.37;f=u 2009-09-29 08:47 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix my regression from April 21 2009 that turned an EnterCriticalSection into a LeaveCriticalSection; this presumably the problem! 2009-09-29 08:32 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: The idle thread mechanism is apparently buggy and leads to heap corruption and crashes. Juno was apparently just a heavy thread user (unnecessarily so) and is where the crashes were consistently seen (though with somewhat inconsistent details). First provide a small change that sets the idle thread maximum to 0, in case anyone wants to experiment and fix it. Next will delete the whole thing. 2009-09-29 08:28 jkrell * scripts/regression/user-defs.sh-example: remove extra newline 2009-09-29 08:26 jkrell * m3-sys/m3tests/src/m3makefile: The detection of if a platform has a good FloatMode implementation has never really been correct, but worked by luck. Remove this mechanism for now, until any platform does have a good FloatMode implementation. (It should be easy on NT386 at least, though not on AMD64_NT for example.) 2009-09-29 08:24 jkrell * m3-sys/m3tests/src/: m3makefile: hardcode SL as / 2009-09-29 00:04 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Clean up Fork code -- no need to signal parent once forked thread is up and running. Joining parent will wait properly on the thread's completion condition. 2009-09-28 19:13 wagner * scripts/regression/: hudson_build_system.sh, hudson_pkg_tests.sh: fix prebuilt m3cc logic 2009-09-28 17:15 wagner * scripts/regression/hudson_pkg_tests.sh: heed different workspace layouts on master and slaves 2009-09-28 16:57 hosking * m3-sys/cminstall/src/config-no-install/Solaris.common: Let's see if this works with the next tinderbox run... 2009-09-28 16:51 wagner * scripts/regression/hudson_build_system.sh: heed different workspace layouts on master and slaves 2009-09-28 16:37 wagner * scripts/regression/defs.sh: fix typo in test_build_system 2009-09-28 16:24 wagner * scripts/regression/defs.sh: fix undefined BSET in test_build_system 2009-09-28 11:13 jkrell * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: fix it to compile 2009-09-28 10:57 jkrell * scripts/regression/defs.sh: should fix an error seen in Hudson 2009-09-28 09:58 jkrell * m3-ui/ui/src/winvbt/WinContext.m3: better to compare against false than true, lest there be other non-zero true values 2009-09-28 09:46 jkrell * m3-www/: deckscape/src/m3overrides, http/src/m3overrides, proxy/src/m3overrides, web/src/m3overrides, webcat/src/m3overrides, webscape/src/m3overrides: replace all m3-www m3overrides files with the same 31 byte file 2009-09-28 09:43 jkrell * m3-ui/: anim3D/src/m3overrides, bicycle/src/m3overrides, cmvbt/src/m3overrides, codeview/src/m3overrides, formsedit/src/m3overrides, formsvbt/src/m3overrides, formsvbtpixmaps/src/m3overrides, formsview/src/m3overrides, juno-2/juno-app/src/m3overrides, juno-2/juno-compiler/src/m3overrides, juno-2/juno-compiler/tests/compiler/src/m3overrides, juno-2/juno-compiler/tests/lexer/src/m3overrides, juno-2/juno-compiler/tests/parser/src/m3overrides, juno-2/juno-compiler/tests/scope/src/m3overrides, juno-2/juno-machine/linear/src/m3overrides, juno-2/juno-machine/nonlinear/src/m3overrides, juno-2/juno-machine/runtime/src/m3overrides, juno-2/juno-machine/solve/src/m3overrides: cleanup more m3overrides files some of this is removing copyright statements which is hopefully ok, since I replaced entire files with one line that I wrote.. 2009-09-28 09:32 jkrell * m3-obliq/: metasyn/src/m3overrides, obliq/src/m3overrides, obliqbin3D/src/m3overrides, obliqbinanim/src/m3overrides, obliqbinmin/src/m3overrides, obliqbinstd/src/m3overrides, obliqbinui/src/m3overrides, obliqlib3D/src/m3overrides, obliqlibanim/src/m3overrides, obliqlibemb/src/m3overrides, obliqlibm3/src/m3overrides, obliqlibui/src/m3overrides, obliqparse/src/m3overrides, obliqprint/src/m3overrides, obliqrt/src/m3overrides, obliqsrvstd/src/m3overrides, obliqsrvui/src/m3overrides, synex/src/m3overrides, synloc/src/m3overrides, visualobliq/src/m3overrides, vocgi/src/m3overrides, voquery/src/m3overrides, vorun/src/m3overrides: cleanup all m3-obliq m3overrides files to just include ROOT m3overrides 2009-09-28 08:59 jkrell * m3-comm/: events/src/m3overrides, events/tests/msg/src/m3overrides, events/tests/work/src/m3overrides, netobj/src/m3overrides, netobjd/src/m3overrides, rdwr/src/m3overrides, rdwr/test/echo/src/m3overrides, rdwr/test/john/src/m3overrides, serial/src/m3overrides, sharedobj/src/m3overrides, sharedobj/tests/obsequence/src/m3overrides, sharedobjgen/src/m3overrides, stubgen/src/m3overrides, tapi/src/m3overrides, tcp/src/m3overrides, udp/src/m3overrides, udp/test/src/m3overrides: cleanup more m3overrides files, to mainly just include ROOT & /m3overrides, but not always 2009-09-28 08:57 jkrell * m3overrides: add obliqlibemb=m3-obliq, udp=m3-comm 2009-09-28 08:38 jkrell * m3-comm/netobj/tests/: echorw/src/m3makefile, fd/src/m3makefile, fd1/src/m3makefile, longcall/src/m3makefile, perf/src/m3makefile, pkl/src/m3makefile: copy from release branch -- add quotes around quake strings without quotes was an old DEC SRC Modula-3 allowance as I understand 2009-09-28 08:33 jkrell * m3overrides: copy from head -- just adds to overloads, pkl-fonts=m3-ui/juno-2/juno-app and EyesVBT=m3-ui/ui/test 2009-09-28 05:57 hosking * m3-ui/ui/src/vbt/VBT.m3: Pedantic check for mutex holder reworked to use overriding of MUTEX methods, instead of nasty and incorrect (user-thread dependent) hacky LOOPHOLE. 2009-09-28 05:54 hosking * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3: Let's try to stay with the OO methods of MutexRep throughout Wait/AlertWait. This will allow subclasses of MUTEX to override acquire/release as necessary. 2009-09-28 05:15 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Let's try to stay with the OO methods of MutexRep throughout Wait/AlertWait. This will allow subclasses of MUTEX to override acquire/release as necessary. 2009-09-28 04:39 hosking * m3-ui/vbtkit/src/lego/POSIX/ScrollerVBTClass.m3: Merge from head: fix for formsedit crash reported for PPC_DARWIN, but fix for all POSIX targets. 2009-09-28 03:33 hosking * m3-ui/vbtkit/src/lego/POSIX/ScrollerVBTClass.m3: Fix crash reported for PPC_DARWIN. Rescreen can be called by other threads while another thread is in the middle of Repaint, and Rescreen may set v.shadow to NIL, which makes Repaint very unhappy. Lock v.mu to prevent unsynchronized access/changes to v.shadow. 2009-09-28 01:35 hosking * m3-sys/cminstall/src/config-no-install/Solaris.common: Add libz to SYSTEM_LIBS. 2009-09-27 19:26 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.i3: file ThreadInternal.i3 was added on branch release_branch_cm3_5_8 on 2009-11-20 09:13:44 +0000 2009-09-27 19:26 hosking * m3-libs/m3core/src/thread/Common/ThreadInternal.i3: IMPORT FloatMode! 2009-09-27 19:25 hosking * m3-libs/m3core/src/thread/Common/ThreadInternal.i3: There are implementations of ProcessEachStack and MyFPState on all targets now. 2009-09-27 19:24 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Implement ProcessEachStack (stub: asserts false for now) and MyFPState. 2009-09-27 19:22 hosking * m3-libs/m3core/src/thread/POSIX/ThreadPosix.m3: Implement ProcessEachStack. 2009-09-27 19:09 jkrell * scripts/sysinfo.sh: very minor merge from head - drop DEC SRC support (M3BUILD, M3SHIP), unused, probably incomplete, only two lines of code deleted here - very minor formating (roughly another two lines edited) 2009-09-27 19:08 jkrell * scripts/sysinfo.sh: significant merge from release "rewrite" platform sniffing - change if leaders to switches - drop support for FreeBSD 1-3 (just call them FreeBSD4) - sniff AMD64_DARWIN - consistently allow user to override - very much resembles sysinfo-new.sh, but a little more gradual change but above all, this is a merge from release and /very/ nearly matches it 2009-09-27 19:05 hosking * m3-libs/m3core/src/Csupport/m3makefile: dos2unix 2009-09-27 18:54 jkrell * scripts/regression/README: remove extra newline from end 2009-09-27 18:53 jkrell * scripts/regression/README: merge from release -- put ./ in front of paths as I found to be apparently needed (on Solaris?) 2009-09-27 18:41 jkrell * scripts/make-dist.sh: cleanup after previous failed runs of packaging 2009-09-27 13:11 jkrell * scripts/: find-packages.sh, find-src-dirs.sh, list-pkg-dirs.sh, make-script-dist.sh, sysinfo.sh: manual merge from release branch (find to $FIND, for cygwin support) (does CVS really facilitate this?) 2009-09-27 13:07 jkrell * scripts/: make-src-dist-all.sh, make-doc-dist.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, make-src-update.sh: manual merge from release branch (find to $FIND, for cygwin support) (does CVS really facilitate this?) 2009-09-27 13:03 jkrell * scripts/pkgmap.sh: manual partial merge from release branch (does CVS really facilitate this?) 2009-09-27 13:01 jkrell * scripts/upgrade.sh: manual merge from release branch (does CVS really facilitate this?) 2009-09-27 12:59 jkrell * scripts/make-dist.sh: highly manual and partial merge from release branch (I haven't see that cvs knows which changes are in which branch, so you can't just have it merge branches nicely; nothing seem to handle branching as well as Perforce..) 2009-09-27 12:53 jkrell * scripts/make-dist.sh: put in the retry logic for msi/deb too that tgz has 2009-09-27 12:47 jkrell * scripts/make-dist.sh: put back false; the point is to prime the loop condition (which might need more work now with my .msi/.deb upload) 2009-09-27 12:39 jkrell * m3-sys/m3tests/src/p0/p007/stderr.pgm: copy from head 2009-09-27 12:35 jkrell * m3-sys/m3tests/src/p0/p007/Main.m3: COPY from head (assuming no changes in this branch), picking up Tony's fix from Sep 1 2009. 2009-09-27 10:01 jkrell * scripts/python/pylib.py: enable lzma if possible 2009-09-27 10:00 jkrell * scripts/make-dist.sh: just go ahead and make .debs for all targets except NT386 2009-09-27 09:58 jkrell * scripts/make-dist.sh: remove do-nothing false command; what was tat for? 2009-09-27 09:57 jkrell * scripts/make-dist.sh: enable building .deb files, only for Linux targets but there is nothing really Linux specific about them 2009-09-27 09:32 jkrell * scripts/python/pylib.py: use correct (existing) Target variable 2009-09-27 08:04 jkrell * scripts/make-dist.sh: fix 2009-09-27 01:15 jkrell * m3-sys/cm3/src/Main.m3: fix warning 2009-09-27 00:43 jkrell * scripts/python/pylib.py: show control file in log 2009-09-27 00:38 jkrell * scripts/make-dist.sh: fix .deb extension 2009-09-27 00:37 jkrell * scripts/make-dist.sh: comment only 2009-09-27 00:37 jkrell * scripts/make-dist.sh: upload .deb and add TARGET to .msi name 2009-09-27 00:33 jkrell * scripts/python/: pylib.py, make-deb.py: .deb creation work in progress; commit it so I don't lose/misplace it again 2009-09-27 00:24 jkrell * scripts/: make-dist.sh: .deb creation work in progress; commit it so I don't lose/misplace it again 2009-09-25 02:42 hosking * m3-sys/m3front/src/: builtinOps/Adr.m3, builtinOps/Cas.m3, builtinOps/CasP.m3, builtinOps/Dec.m3, builtinOps/Dispose.m3, builtinOps/Inc.m3, builtinOps/Loophole.m3, builtinOps/Subarray.m3, exprs/CallExpr.i3, exprs/CallExpr.m3, exprs/CastExpr.m3, exprs/DerefExpr.m3, exprs/Expr.i3, exprs/Expr.m3, exprs/ExprRep.i3, exprs/KeywordExpr.m3, exprs/NamedExpr.m3, exprs/QualifyExpr.m3, exprs/RecordExpr.m3, exprs/SubscriptExpr.m3, exprs/VarExpr.m3, stmts/AssignStmt.m3, stmts/WithStmt.m3, values/Formal.m3, values/Value.i3, values/Value.m3, values/ValueRep.i3, values/Variable.m3: The generational collector is not concerned with stores of NIL (NULL is untraced) into the heap, so don't generate write barriers for those. 2009-09-24 16:36 wagner * scripts/regression/hudson_build_system.sh: first attempt at a generic hudson build script intended to replace the various lastok-build and release-build scripts within Hudson still untested! 2009-09-24 16:03 wagner * scripts/regression/defs.sh: Add support for Hudson CLEAN variable. Add new test function test_build_system, which first tries a straight forward build of the core system and installs the compiler, and if that fails, tries again using the upgrade.sh script. If I understood correctly, the last step should not be needed anymore with an up-to-date cm3. 2009-09-24 14:52 wagner * scripts/regression/hudson_pkg_tests.sh: fix cleaning 2009-09-24 14:25 wagner * scripts/pkginfo.txt: change order for two test compilations 2009-09-24 09:58 wagner * scripts/regression/hudson_pkg_tests.sh: generic script to perform package tests in Hudson 2009-09-23 12:08 jkrell * scripts/pkgmap.sh: manually merge from release, the date +%s/m3date fix 2009-09-23 12:06 jkrell * scripts/pkgmap.sh: fix multiple parts of the date +%s replacement putting [] here is wrong use M3DATE=`pwd`/m3date Maybe we can just remove all of this entirely? (Solaris date doesn't support +%s, so we'd remove the uses, not just the this replacement.) 2009-09-23 03:45 hosking * m3-libs/m3core/src/runtime/common/RTIO.i3: Fix comment for PutText. 2009-09-22 13:10 jkrell * m3-sys/m3cc/src/: gnucc.common, gnumake.common, m3makefile: manually merge most changes (in this directory) from head the main point here is to workaround strange bugs in older releases, such as seen in Hudson on PPC_DARWIN where the env variable is missing There was also the "rewrite" of equating SOLgnu and SOLsun. 2009-09-21 21:19 jkrell * scripts/pkgmap.sh: merge with release 2009-09-21 21:19 jkrell * scripts/pkgmap.sh: whitespace 2009-09-21 21:17 jkrell * scripts/pkgmap.sh: merge if blocks 2009-09-21 21:15 jkrell * scripts/pkgmap.sh: adjust for Cygwin, and only do this if reporting; maybe one line of awk can do? 2009-09-21 20:28 jkrell * scripts/: pkgmap.sh: fix sh for loop syntax 2009-09-21 20:03 jkrell * scripts/sysinfo.sh: fix line endings 2009-09-21 08:29 jkrell * m3-libs/m3core/src/time/POSIX/DatePosixC.c: initial rewrite of much of DatePosix.m3 and DateBsd.m3 in C this probably will be used it will contain all of our use of struct tm, and then struct tm can disappear from Utime.m3 (well, ok, mktime is ok, but gmtime and localtime are not so much) 2009-09-20 23:49 jkrell * m3-libs/m3core/src/unix/Common/Unix.i3: add a missing EXTERNAL pragma (but I don't think we use this function anyway) 2009-09-20 23:48 jkrell * m3-libs/m3core/src/unix/Common/: Uexec.i3, Unix.i3, Uprocess.i3, Upwd.i3, Usched.i3, Usignal.i3, Utime.i3, UtimeInternal.i3, Uugid.i3, Uuio.i3: remove EXTERNAL pragma from INTERFACE it didn't act consistently seemingly and we ended up marking all the functions/variables anyway 2009-09-20 23:46 jkrell * m3-libs/m3core/src/unix/Common/UtimeInternal.i3: work in progress: prune this way down 2009-09-20 23:45 jkrell * m3-libs/m3core/src/unix/Common/: Utime.i3, UtimeC.c, UtimeInternal.i3, m3unix.h: remove ctime_r, not used, sort of not portable 2009-09-20 22:32 jkrell * m3-libs/m3core/src/unix/Common/UtimeInternal.i3: initial copy from Utime.i3; the way struct tm varies makes a lot of this stuff only useful to code that does different things on different platforms, as in m3core/src/time/POSIX 2009-09-20 22:30 jkrell * m3-libs/m3core/src/time/POSIX/DatePosix.m3: reentrance here is far from clear, so serialize 2009-09-20 22:11 jkrell * m3-libs/m3core/src/time/POSIX/DateBsd.m3: missing a lock mu around use localtime, probably only affects user threads and just wastes time on pthreads, where presumably localtime is already using a thread local (just like it is waste elsewhere in this file for pthreads) 2009-09-20 21:56 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: For HP-UX, Interix, Cygwin, define altzone to be timezone - 3600, like Python does. 2009-09-20 21:27 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: better ANSI prototypes for functions that take no parameters 2009-09-20 21:25 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: fix small typo in comment 2009-09-20 21:25 jkrell * m3-libs/m3core/src/time/POSIX/TimePosixC.c: remove tabs, fix strange hang on Cygwin, avoid strange result of 0 on Cygwin, fix conversion warning; this code isn't currently used but might be at some time? 2009-09-20 21:17 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: fix comment slightly 2009-09-20 21:14 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: quash warning about mixing signed/unsigned 2009-09-20 21:10 jkrell * m3-libs/m3core/src/unix/Common/Uin.c: #include arpa/inet.h to get prototypes for hton etc. 2009-09-20 21:08 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: fix syntax error on Cygwin 2009-09-20 21:07 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: remove errant but ok character in comment 2009-09-20 20:54 jkrell * m3-libs/m3core/src/unix/: Common/UnixC.c, Common/Usocket.c, Common/Usocket.i3, Common/Utime.i3, Common/UtimeC.c, Common/Utypes.i3, Common/m3unix.h, cygwin/Usysdep.i3, darwin-common/Usysdep.i3, freebsd-common/Usysdep.i3, hpux-common/Usysdep.i3, linux-common/Usysdep.i3, netbsd-common/Usysdep.i3, openbsd-common/Usysdep.i3, solaris-common/Usysdep.i3: Usysdep reduction idealize time_t as INTEGER actually I'd like to make it LONGINT So far I haven't seen a 32bit Posix system with a 64bit time_t. I think I've seen even 64bit Posix with 32bit time_t! 32bit Cygwin is threatening to go that way. Windows already is this way by default. They really all should. LONGINT might be source incompatible so holding off on that. and then all the related structs -- timespec, timeval, itimerval This involves "copying wrappers". And since the conversion functions are static in UtimeC.c, move select and utimes wrappers to there. split up Unix__Assertions into Unix__Assertions, Usocket__Assertions, Utime__Assertions We assert that struct linger can be passed through, except on Cygwin and that timespec, timeval, itimerval are all as we expect We will probably soon be using much less of all this code but we can maybe leave it for some compatibility. 2009-09-20 07:46 jkrell * m3-libs/m3core/src/unix/Common/: Utime.i3, UtimeC.c: second parameter to gettimeofday always NULL 2009-09-20 07:42 jkrell * m3-libs/m3core/src/unix/Common/: Utime.i3, UtimeC.c: remove settimeofday we never use it and the wrappers are about to get a little thicker for portability 2009-09-20 04:41 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.i3: remove warning that I just introduced (comment out FloatMode, until MyFPState is used by anyone) 2009-09-20 04:40 jkrell * m3-libs/m3core/src/float/m3makefile: use TARGET_ENDIAN for the defaulting actually sort of fix the interaction with m3-sys/m3tests that wasn't really implemented correctly in the first place, but it was good enough given that every target uses the default (we should look into improving this before much longer) 2009-09-20 04:27 jkrell * scripts/: pkgmap.sh: cleanup 2009-09-20 04:26 jkrell * scripts/pkgmap.sh: better -- look around for a C compiler 2009-09-20 04:24 jkrell * scripts/: pkgmap.sh: cleanup 2009-09-20 04:21 jkrell * scripts/pkgmap.sh: better -- look around for a C compiler 2009-09-20 04:05 jkrell * scripts/pkgmap.sh: eliminate uses of date %+s which are not portable to Solaris and cause expr to issue an error ('C is more portable than sh.') 2009-09-20 04:02 jkrell * scripts/pkgmap.sh: eliminate more uses of date %+s which are not portable to Solaris and cause expr to issue an error 2009-09-20 03:06 jkrell * m3-libs/m3core/src/thread/Common/ThreadInternal.i3: Fix it to compile -- remove functions that nobody uses and Win32 doesn't currently implement. 2009-09-20 03:00 jkrell * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3: fix to compile 2009-09-20 02:56 jkrell * m3-libs/m3core/src/thread/WIN32/m3makefile: fix it to compile 2009-09-20 01:50 jkrell * m3-sys/m3gdb/gdb/gdb/m3-util.c: Very likely remove some porting work: enum m3_target_typ m3_target_pure ( char * name ) { if (strstr(name, "NT386")) { return TARGET_NT386; } /* This is crude but very likely to always be correct. There is a 32bit mode on HP-UX/IA64 and ALPHA_NT is 32bit, but these are hypothetical and unlikely to materialize and could have "32" put in their names, and ALPHA_NT would unlikely support m3gdb. */ if (strstr(name, "32")) { return TARGET_OTHER; } if (strstr(name, "ALPHA")) { return TARGET_64; } if (strstr(name, "64" )) { return TARGET_64; } /* FIXME: Positively check for all M3 compiler target names, or at least all those in m3middle/src/Target.m3 that cause a call on Init64. */ return TARGET_OTHER; } /* m3_target_pure */ where before it was checking for very specific 64bit targets with strcmp. 2009-09-20 00:41 jkrell * m3-libs/m3core/src/: platforms.quake, Csupport/m3makefile: closer to requiring TARGET_ENDIAN, but again, still compatible This probably breaks tests, will visit shortly. 2009-09-20 00:41 jkrell * m3-libs/m3core/src/platforms.quake: file platforms.quake was added on branch release_branch_cm3_5_8 on 2009-11-20 09:13:43 +0000 2009-09-20 00:27 jkrell * m3-libs/m3core/src/m3makefile: comment only 2009-09-20 00:26 jkrell * m3-libs/libm3/src/: m3makefile, platforms.quake, os/POSIX/m3makefile: a step toward using TARGET_OS and TARGET_ARCH which current config files define, but still compatible with older systems, I guess until the current release occurs 2009-09-19 23:53 jkrell * m3-libs/m3core/src/: time/POSIX/m3makefile, platforms.quake, m3makefile: a step toward using TARGET_OS which current config files define, but still compatible with older systems, I guess until the current release occurs 2009-09-19 23:39 jkrell * m3-libs/m3core/src/time/POSIX/: DateLinux.m3.old, DateLinux.m3: make it clearer that this is not used, Linux is now BSD 2009-09-19 23:36 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile: remove old targets 2009-09-19 23:35 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile.old: copy of m3makefile 2009-09-19 18:26 jkrell * m3-libs/m3core/src/unix/: Common/UnixC.c, Common/Usocket.c, Common/Usocket.i3, cygwin/Usysdep.i3, darwin-common/Usysdep.i3, freebsd-common/Usysdep.i3, hpux-common/Usysdep.i3, linux-common/Usysdep.i3, netbsd-common/Usysdep.i3, openbsd-common/Usysdep.i3, solaris-common/Usysdep.i3: sysdep reduction: struct linger is identical on all platforms except Cygwin (where it doesn't appear to be Posix-conforming) Posix says the fields are int, but Cygwin uses unsigned short. assert this (in UnixC.c) use a copying wrapper on Cygwin (Usocket.c) remove platform specific code, except for Cygwin (#ifdef a few lines instead of duplicating stuff for every platform) 2009-09-17 20:51 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: RuntimeError is now unused. 2009-09-17 08:17 mand * m3-libs/m3core/src/m3makefile: testing CVS triggers, no diff 2009-09-16 14:40 jkrell * m3-ui/ui/src/xvbt/m3makefile, m3-libs/m3core/src/m3makefile: testing CVS triggers, no diff 2009-09-16 14:37 jkrell * m3-ui/ui/src/xvbt/XSharedMem.m3: try again, cvs triggers failed and probably no mail sent: remove extra code that does seemingly unnecessary checks as to if shared memory can be used one instance of documentation, there are surely many more: http://www.xfree86.org/current/mit-shm.html CVS errors on last commit: cvs commit: warning: editor session failed /usr/cvs/cm3/m3-ui/ui/src/xvbt/XSharedMem.m3,v <-- xvbt/XSharedMem.m3 new revision: 1.5; previous revision: 1.4 Can't locate Carp.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/lib/perl/5.8/Data/Dumper.pm line 20. BEGIN failed--compilation aborted at /usr/lib/perl/5.8/Data/Dumper.pm line 20. Compilation failed in require at /usr/cvs/CVSROOT/log_accum line 331. BEGIN failed--compilation aborted at /usr/cvs/CVSROOT/log_accum line 331. Can't locate bytes.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/cvs/CVSROOT/dolog.pl line 41. BEGIN failed--compilation aborted at /usr/cvs/CVSROOT/dolog.pl line 41. Can't locate strict.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/local/tinderbox/bonsai/handleCheckinMail.pl line 24. BEGIN failed--compilation aborted at /usr/local/tinderbox/bonsai/handleCheckinMail.pl line 24. 2009-09-16 14:35 jkrell * m3-ui/ui/src/xvbt/XSharedMem.m3: remove all the code for the extra checking of IsSameHost which often doesn't work See: http://www.xfree86.org/current/mit-shm.html for example, or search the web. 2009-09-16 13:51 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: Resolve a longstanding issue with out of memory occuring while in the middle of GC. The approach is simply to promote the page containing the object we are trying to copy. This has a benign effect, and may permit the GC to finish safely. Mutators will still receive OOM exceptions if they cannot allocate, at which point they may choose to release some (presumably cached) references before trying the allocation again. 2009-09-16 13:32 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Oops. Forgot that the changes at that time were due to change in expectation that WaitHeap now must occur inside LockHeap/UnlockHeap. It must release the critical section. Jay, have a try with this. 2009-09-15 19:47 hosking * m3-libs/m3core/src/thread/WIN32/ThreadWin32.m3: Merge/revert back to last known good ThreadWin32. Jay, give this one a try. 2009-09-15 02:07 hosking * m3-libs/m3core/src/thread/WIN32/: ThreadWin32.i3, ThreadWin32.m3: Oops, put this in the wrong place. 2009-09-14 21:52 hosking * m3-libs/m3core/src/thread/: Common/ThreadInternal.i3, PTHREAD/ThreadPThread.i3, PTHREAD/ThreadPThread.m3, PTHREAD/ThreadPThreadC.c, WIN32/SchedulerPosix.m3, WIN32/ThreadWin32.m3: Slight reorg. Tidy up ThreadPosix implementation some. Put back ProcessEachStack (we'll be using it for non-STW GC). 2009-09-14 09:03 jkrell * scripts/python/pylib.py: copy from release 2009-09-14 08:51 jkrell * m3-sys/m3cc/src/gnucc.common: independent reimplementation of the SOLgnu/SOLsun equivalence, because I was out of date, no real change 2009-09-14 08:44 jkrell * scripts/python/pylib.py: further accounting for Cygwin python -- double up slashes on command line; and I think print the wierd printout by redirecting stderr to stdout (wierd because it isn't ordered as expected, ok) 2009-09-14 06:52 jkrell * scripts/python/pylib.py: paths written into .wxs file need to be Win3 paths (again, elego Python is Cygwin..mine is not) 2009-09-14 00:38 jkrell * scripts/python/pylib.py: for msi building, hack out executable code from global scope, maybe can structure better later 2009-09-13 20:48 jkrell * scripts/python/pylib.py: (more working around that elego uses cygwin Python but I use Win32 Python) 2009-09-13 20:47 jkrell * scripts/python/pylib.py: replace /dev/null with os.devnull; this should stop us from creating the file nul that causes the makedist task to fail in strange ways, unless I cleanup the workspace between runs 2009-09-13 19:57 jkrell * scripts/python/pylib.py: path adjustments for msi building, not quite right but might suffice; try to diagnose a strange printout 2009-09-13 18:52 jkrell * m3-libs/m3core/src/thread/Common/ThreadF.i3: file ThreadF.i3 was added on branch release_branch_cm3_5_8 on 2009-11-20 09:13:44 +0000 2009-09-13 18:51 hosking * m3-libs/m3core/src/: float/DS3100/FloatMode.m3, float/IRIX5/FloatMode.m3, float/VAX/FloatMode.m3, runtime/common/RTCollector.m3, thread/Common/ThreadF.i3, thread/Common/ThreadInternal.i3, thread/POSIX/ThreadPosix.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadPThread.m3: With ThreadInternal now unsafe restore old unsafe way of manipulating float state. Restore ProcessEachStack (we will be using it for non-STW GC at some point). 2009-09-13 18:29 jkrell * m3-libs/m3core/src/runtime/common/: RTCollector.m3, RTCollectorSRC.i3: add do nothing DisableVM for slightly better source compat with old cm3 2009-09-13 17:13 jkrell * m3-libs/m3core/src/: thread/PTHREAD/ThreadPThreadC.c, unix/Common/UtimeC.c, unix/Common/m3unix.h: Newer Sun headers also: typedef struct timespec timespec_t; leading to us getting: "../src/unix/Common/m3unix.h", line 83: warning: typedef redeclared: timespec_t so use timespec_T instead, lame, I know. 2009-09-13 16:57 jkrell * m3-sys/cminstall/src/config-no-install/: Solaris.common, Unix.common: newer Sun cc says: cc: Warning: -xarch=v8plus is deprecated, use -m32 -xarch=sparc instead cc: Warning: -xarch=v9 is deprecated, use -m64 to create 64-bit programs probe at first use of cc (or ld since it is cc) for the warning and use the new form if it is found In general introduce hooks: configure_assembler() configure_c_compiler() configure_linker() That are called before uses of SYSTEM_ASM, SYSTEM_CC, SYSTEM_LD. configure_assembler was already in use for I386_DARWIN. Even if folks really object to running this stuff as often as it is done, the configure code can probably be used asis (say, at install time) and the results recorded. Personally I don't observe this stuff to be slow and it leaves the system more flexible -- no need to reinstall/reconfigure Modula-3 if in fact this other stuff can be changed after it is installed. 2009-09-13 13:36 jkrell * m3-libs/m3core/src/: float/DS3100/FloatMode.m3, float/IRIX5/FloatMode.m3, float/VAX/FloatMode.m3, runtime/NT386/RTSignal.m3, runtime/WIN32/RTOS.m3, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/common/RTLinkerX.i3, runtime/ex_frame/RTExFrame.m3, runtime/ex_frame/RTException.m3, thread/Common/ThreadF.i3, thread/Common/ThreadInternal.i3, thread/Common/ThreadUnsafe.i3, thread/Common/m3makefile, thread/POSIX/ThreadPosix.i3, thread/POSIX/ThreadPosix.m3, thread/POSIX/m3makefile, thread/PTHREAD/ThreadPThread.m3, thread/PTHREAD/m3makefile, thread/WIN32/ThreadInternal.i3, thread/WIN32/m3makefile, thread/POSIX/ThreadF.i3, thread/PTHREAD/ThreadF.i3, thread/WIN32/ThreadF.i3: move ThreadUnsafe.i3 to ThreadInternal.i3 move most of ThreadF.i3 to ThreadInternal.i3 ThreadF is safe and public, and small. ThreadInternal is not safe nor public. As well between ThreadF.i3 and ThreadInternal.i3 we need only have one common copy. Three ThreadF.i3s replaced by one. A ThreadInternal.i3 and ThreadUnsafe.i3 replaced by one ThreadInternal.i3. ThreadF.i3 is entirely shared. ThreadInternal.i3 exposes a little extra that is present in all three but only needs to be exposed for Win32 (and then, only if Cygwin uses Win32 threads). (deletes deferred because of CVS wierdness) 2009-09-13 13:08 jkrell * m3-libs/m3core/src/thread/: POSIX/ThreadF.i3, POSIX/ThreadPosix.m3, PTHREAD/ThreadF.i3, PTHREAD/ThreadPThread.m3, WIN32/ThreadF.i3, WIN32/ThreadWin32.m3: remove SetSwitchingInterval It didn't do anything on NT and wasn't declared for pthread. For greater source compat we could put it in and have it do nothing for NT and pthread, but we are already getting on without it in pthread. remove ProcessEachStack It is only in pthread and never used. 2009-09-13 06:23 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTMachineASM.s, SOLsun/RTMachineASM.s: copy from head -- go back to old 1.1 and 2.2 versions 2009-09-13 06:21 jkrell * m3-libs/m3core/src/runtime/SOLgnu/RTMachineASM.s: go back to historical version 1.2, before I changed anything in a not terrible way but for the wrong reasons 2009-09-13 06:19 jkrell * m3-libs/m3core/src/runtime/SOLsun/RTMachineASM.s: go back to historical version 1.1, before I changed anything in a not terrible way but for the wrong reasons 2009-09-13 06:09 jkrell * m3-libs/m3core/src/unix/Common/: Unix.pl, Unix.txt: bring over two new files from head 2009-09-13 06:07 jkrell * m3-libs/m3core/src/runtime/common/RTThreadInit.i3: remove another unused file (the function is in ThreadF) 2009-09-13 06:05 jkrell * m3-libs/m3core/src/thread/: POSIX/ThreadEvent.i3, PTHREAD/ThreadEvent.i3, WIN32/ThreadEvent.i3: remove unused files 2009-09-13 06:01 jkrell * m3-libs/m3core/src/unix/Common/Upthread.c: just remove a few spaces at end of line 2009-09-13 05:58 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: just fix line endings 2009-09-13 05:55 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, ALPHA_OSF/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, DS3100/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, HP300/RTMachine.i3, HPPA/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, NEXT/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, SEQUENT/RTMachine.i3, SPARC/RTMachine.i3, SUN3/RTMachine.i3, SUN386/RTMachine.i3, UMAX/RTMachine.i3, VAX/RTMachine.i3: Just fix newlines. I thought I had tried this earlier and there was no diff. (No, I'm not confusing the branches; I know I already got the release branch; I thought I had also checked head.) 2009-09-13 04:57 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: Rename AllocTraced to AllocCopy (RTAllocator.AllocTraced remains). 2009-09-13 04:55 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Retain saner code from before recent reworking of alert mechanisms. 2009-09-13 01:28 jkrell * m3-libs/m3core/src/runtime/: AIX386/RTMachine.i3, ALPHA_OSF/RTMachine.i3, AP3000/RTMachine.i3, ARM/RTMachine.i3, DS3100/RTMachine.i3, FreeBSD/RTMachine.i3, FreeBSD2/RTMachine.i3, FreeBSD3/RTMachine.i3, HP300/RTMachine.i3, HPPA/RTMachine.i3, IBMR2/RTMachine.i3, IBMRT/RTMachine.i3, IRIX5/RTMachine.i3, LINUX/RTMachine.i3, LINUXELF/RTMachine.i3, NEXT/RTMachine.i3, NetBSD2_i386/RTMachine.i3, OKI/RTMachine.i3, OS2/RTMachine.i3, POSIX/RTSignalC.c, SEQUENT/RTMachine.i3, SPARC/RTMachine.i3, SUN3/RTMachine.i3, SUN386/RTMachine.i3, UMAX/RTMachine.i3, VAX/RTMachine.i3: only fix newlines 2009-09-13 01:26 jkrell * m3-libs/m3core/src/: convert/CConvert.m3, runtime/AMD64_DARWIN/RTMachineC.c, runtime/I386_DARWIN/RTMachineC.c, runtime/PPC_DARWIN/RTMachineC.c, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTCollectorSRC.i3, runtime/common/RTHeapInfo.m3, runtime/common/RTHeapRep.i3, runtime/common/RTHeapRep.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/common/RTOS.i3, runtime/ex_frame/RTExFrame.m3, runtime/ex_stack/RTExStack.m3, thread/Common/m3makefile, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.i3, thread/PTHREAD/ThreadPThread.m3, thread/PTHREAD/ThreadPThreadC.c, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadWin32.m3, unix/Common/Upthread.c, unix/Common/Usocket.c, unix/Common/Usocket.i3, unix/Common/m3unix.h, unix/uin-common/Uin.i3, unix/uin-len/Uin.i3: merge head to release, making them nearly identical for m3core - Tony's thread fixes - add struct_sockaddr_un - just one set of socklen_t wrappers 2009-09-13 01:21 jkrell * m3-libs/m3core/src/runtime/ex_stack/RTExStack.m3: remove unused import 2009-09-13 00:28 jkrell * m3-libs/m3core/src/unix/Common/Usocket.i3: add one space for consistent formating 2009-09-12 18:19 jkrell * m3-libs/m3core/src/thread/: PTHREAD/ThreadEvent.i3, POSIX/ThreadEvent.i3, WIN32/ThreadEvent.i3: remove unused files 2009-09-12 18:15 jkrell * m3-libs/m3core/src/thread/: Common/ThreadEvent.i3, POSIX/ThreadEvent.i3, PTHREAD/ThreadEvent.i3, WIN32/ThreadEvent.i3: manual merge from head -- remove unsafe marker (though they do import the borderline ThreadF, but they only declare types, no functions) 2009-09-12 18:06 jkrell * m3-libs/m3core/src/thread/Common/ThreadUnsafe.i3: new file from head 2009-09-12 17:55 jkrell * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3: just minor word wrap of exports as part of merge with release 2009-09-12 17:52 jkrell * m3-libs/m3core/src/runtime/: SOLsun/RTStackC.c, SOLgnu/RTStackC.c: merge from release -- declare function to avoid warning 2009-09-12 17:24 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: - wrap everything, it is a little safer - simplify and shrink rare error path instead of optimizing it for speed 2009-09-11 22:45 jkrell * scripts/python/pylib.py: merge from release 2009-09-11 22:43 jkrell * scripts/python/pylib.py: between os.path.pathsep and os.pathsep, alwayse use the shorter name os.pathsep, they are the same thing 2009-09-11 22:39 jkrell * scripts/python/pylib.py: remove hopefully out of date comment 2009-09-11 22:37 jkrell * scripts/python/pylib.py: deal more with path format issues, maybe all ok now? 2009-09-11 22:19 jkrell * scripts/python/pylib.py: use ; for portable path list separator when possible -- start fixing the bugs that occur when cygwin Python tries to auotconfigure LIB and INCLUDE, but not done, ok 2009-09-11 21:20 jkrell * scripts/python/pylib.py: some accomodation for Python being Cygwin; mine is Win32, elego's is Cygwin; there are bugs but not (known) in Hudson/msi code (there were) 2009-09-11 20:48 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: Mentor and Juno finally work on I386_DARWIN. ***Significant overhaul of thread alerting.*** Invariant now is that all waiting is done on the thread's own condition variable. This cleanly permits signals and alerts from any other thread. Need to set DISPLAY=:0.0 and xhost+ to get around problems with DISPLAY=/tmp/launch-XXXXXX/:0. 2009-09-11 20:38 jkrell * scripts/python/pylib.py: put comments more firmly with their code 2009-09-11 20:38 jkrell * scripts/python/pylib.py: general problem of too much stuff at global scope; workaround some of it (to address that make-msi.py is complaining about findstr against cm3.exe, cygwin path of cm3.exe being passed to win32 findstr) 2009-09-11 20:29 jkrell * scripts/make-dist.sh: fix .msi paths further; I think there's another problem though 2009-09-11 20:17 jkrell * scripts/make-dist.sh: fix path to .msi file 2009-09-11 16:39 jkrell * scripts/make-dist.sh: fix if [ type to be if type 2009-09-11 16:13 jkrell * scripts/make-dist.sh: fix path to make-msi.py 2009-09-11 15:43 jkrell * scripts/make-dist.sh: initial attempt at .msi creation 2009-09-11 15:40 jkrell * scripts/python/make-dist-cfg.py: merge from release 2009-09-11 15:37 jkrell * scripts/python/: pylib.py, do-cm3-caltech-parser.py, make-dist.py, make-msi.py: merge from head 2009-09-11 15:32 jkrell * scripts/python/make-msi.py: file make-msi.py was added on branch release_branch_cm3_5_8 on 2009-09-11 15:39:18 +0000 2009-09-11 15:32 jkrell * scripts/python/: make-msi.py, pylib.py: some small fixes to msi creation and license install (such as actually install the licenses before making the msi) 2009-09-11 15:10 jkrell * scripts/python/make-msi.py: initial real version: cut it way down, add command line parsing, usage 2009-09-11 15:09 jkrell * scripts/python/pylib.py: fix indent, it matters (copy/paste error) 2009-09-11 15:04 jkrell * scripts/python/make-msi.py: initial copy of make-msi.py from make-dist.py 2009-09-11 15:03 jkrell * scripts/python/: pylib.py, make-dist.py: move more of license directory creation to InstallLicense function and use a simple statement in the installer based on the toplevel README in the source tree 2009-09-11 14:51 jkrell * scripts/python/: pylib.py, make-dist.py: move license directory creation to InstallLicense function 2009-09-11 14:07 jkrell * scripts/make-dist.sh: delete setup.txt in the loop so it doesn't keep accumulating 2009-09-11 13:36 jkrell * scripts/make-dist.sh: don't print an error deleting nonexistant file 2009-09-11 12:34 jkrell * scripts/win/setup.cmd: bring over file from release branch 2009-09-11 12:23 jkrell * scripts/python/pylib.py: better autoconfiguration on Windows, some added comments, some changed style of comments 2009-09-11 05:58 hosking * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.i3: Added pthread_cond_timedwait and pthread_cond_broadcast. 2009-09-08 16:41 jkrell * m3-libs/m3core/src/: runtime/common/RTAllocator.m3, thread/Common/m3makefile, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadWin32.m3: back from ThreadF to ThreadUnsafe to we can remove some casts might be good to generally move ThreadF to Thread and ThreadUnsafe? or likely not worth the breaking of the existing ThreadF clients outside m3core 2009-09-08 15:16 hosking * m3-libs/m3core/src/: runtime/common/RTAllocator.m3, thread/Common/m3makefile, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadInternal.i3, thread/WIN32/ThreadWin32.m3: Forgot to propagate safety fix for MyHeapState to WIN32 and POSIX. Fixed now, which allows me to undo Jay's unfortunate bandaid. ThreadF is safe as god intended. 2009-09-08 15:01 hosking * m3-libs/debug/src/Debug.m3: Let's not log internally. 2009-09-08 12:12 jkrell * m3-libs/m3core/src/thread/Common/ThreadUnsafe.i3: file ThreadUnsafe.i3 was added on branch release_branch_cm3_5_8 on 2009-09-12 18:06:10 +0000 2009-09-08 12:12 jkrell * m3-libs/m3core/src/: runtime/common/RTAllocator.m3, thread/Common/ThreadEvent.i3, thread/Common/ThreadUnsafe.i3, thread/Common/m3makefile, thread/POSIX/ThreadEvent.i3, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadEvent.i3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadEvent.i3, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadInternal.i3, thread/WIN32/ThreadWin32.m3: restore ThreadF to being safe 2009-09-08 12:10 jkrell * m3-libs/debug/src/Debug.m3: go back a version, will restore ThreadF to being safe 2009-09-08 11:16 jkrell * m3-libs/debug/src/Debug.m3: add UNSAFE here so it compiles; maybe MyId should be moved to Thread or ThreadF split into ThreadF and ThreadUnsafeF? 2009-09-08 11:09 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadF.i3: fix it to compile 2009-09-08 11:08 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadF.i3: fix it to compile 2009-09-08 11:05 jkrell * m3-libs/m3core/src/: runtime/common/RTAllocator.m3, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadInternal.i3: fix it to compile; Juno on NT still crashes 2009-09-08 10:20 jkrell * m3-libs/m3core/src/runtime/common/RTThreadInit.i3: delete unused file 2009-09-08 08:39 jkrell * m3-libs/m3core/src/: unix/Common/Upthread.c, unix/Common/m3unix.h, runtime/AMD64_DARWIN/RTMachineC.c, runtime/I386_DARWIN/RTMachineC.c, runtime/PPC_DARWIN/RTMachineC.c: convert properly between the Modula-3 notion of pthread_t -- void* -- and the possibly different native pthread_t, which might be int or size_t or another pointer type Unfortunately this doesn't actually fix anything. Darwin pthread_t is in fact a pointer, so void* was definitely close enough. 2009-09-08 05:54 hosking * m3-libs/m3core/src/: convert/CConvert.m3, runtime/common/RTAllocator.m3, runtime/common/RTCollector.m3, runtime/common/RTCollectorSRC.i3, runtime/common/RTHeapInfo.m3, runtime/common/RTHeapRep.i3, runtime/common/RTHeapRep.m3, runtime/common/RTHeapStats.m3, runtime/common/RTLinker.m3, runtime/common/RTOS.i3, runtime/ex_frame/RTExFrame.m3, runtime/ex_stack/RTExStack.m3, thread/POSIX/ThreadF.i3, thread/POSIX/ThreadPosix.m3, thread/PTHREAD/ThreadF.i3, thread/PTHREAD/ThreadPThread.m3, thread/WIN32/ThreadF.i3, thread/WIN32/ThreadWin32.m3: Tidy up use of thread.inCritical to only occur in allocation sequences and in thread stoppage. This simplifies reasoning. Refactored use of heap lock in the process. This may be better implemented on PTHREAD targets using a recursive pthread mutex instead of one we roll ourselves from a non-recursive mutex. Still witnessing random hangs in Juno and mentor on I386_DARWIN. Strange, I thought this was working previously. I wonder if there is some sort of race in the GUI code somewhere? 2009-09-04 10:26 jkrell * m3-sys/cm3/src/Main.m3: change from head -- remove some predefines that are fairly new 2009-09-04 10:25 jkrell * m3-sys/cm3/src/: M3Build.m3, Makefile.m3: changes from release branch: tracing, root export, fix unresolve, remove debug output, restore printing target 2009-09-04 10:24 jkrell * m3-sys/m3quake/src/: MxConfig.i3, MxConfig.m3, QMachine.i3, QMachine.m3: changes from release branch -- tracing 2009-09-04 10:03 jkrell * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3, WIN32/ThreadWin32.m3: go back a version to keep assertions in RTCollector.m3 succeeding 2009-09-04 03:36 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: Keep the unused parameter to Move. We are going to use it soon for concurrent movers. 2009-09-04 03:32 hosking * m3-libs/m3core/src/thread/: POSIX/ThreadPosix.m3, PTHREAD/ThreadPThread.m3, WIN32/ThreadWin32.m3: Don't hack thread.inCritical unnecessarily. Just make sure this thread is not inCritical when acquiring/releasing the heap lock. 2009-09-04 02:43 jkrell * m3-libs/m3core/src/runtime/common/RTCollector.m3: remove unused parameter 2009-09-03 16:19 jkrell * m3-ui/: PEX/src/m3overrides, X11R4/src/m3overrides, images/src/m3overrides, juno-2/juno-app/pkl-fonts/src/m3overrides, juno-2/juno-compiler/tests/compiler/src/m3overrides, juno-2/juno-machine/src/m3overrides, jvideo/src/m3overrides, m3zume/src/m3overrides, mg/src/m3overrides, mgkit/src/m3overrides, motif/src/m3overrides, opengl/src/m3overrides, ui/src/m3overrides, ui/test/Argus/src/m3overrides, ui/test/BadBricks/src/m3overrides, ui/test/ButtonTest/src/m3overrides, ui/test/Cards/src/m3overrides, ui/test/ColorMonster/src/m3overrides, ui/test/Draw/src/m3overrides, ui/test/EyesVBT/src/m3overrides, ui/test/Hello/src/m3overrides, ui/test/Monster/src/m3overrides, ui/test/Sketch2/src/m3overrides, ui/test/StarAnim/src/m3overrides, ui/test/Track/src/m3overrides, ui/test/TypeInTest/src/m3overrides, vbtkit/src/m3overrides, videovbt/src/m3overrides, webvbt/src/m3overrides, zeus/src/m3overrides: use one central m3overrides file plus some unusual content in m3-ui/zeus/src/m3overrides 2009-09-03 16:14 jkrell * m3overrides: add EyesVBT -- perhaps there should be some intermediate m3overrides, since this is only used by a little test code 2009-09-03 16:05 jkrell * m3-ui/juno-2/: juno-compiler/src/m3overrides, juno-compiler/tests/lexer/src/m3overrides, juno-compiler/tests/parser/src/m3overrides, juno-compiler/tests/scope/src/m3overrides, juno-machine/linear/src/m3overrides, juno-machine/nonlinear/src/m3overrides, juno-machine/runtime/src/m3overrides, juno-machine/solve/src/m3overrides: use one central m3overrides file 2009-09-03 15:56 jkrell * m3-ui/juno-2/juno-app/src/m3overrides: remove build_standalone -- just use the one global m3overrides file 2009-09-03 15:55 jkrell * m3overrides: add pkl-fonts 2009-09-01 19:21 wagner * scripts/make-dist.sh: heed DS from environment, set VERSION and CM3VERSION for RCs 2009-09-01 16:14 hosking * m3-sys/m3tests/src/p0/p007/stderr.pgm: Output changed slightly. 2009-09-01 16:14 hosking * m3-sys/m3tests/src/p0/p007/Main.m3: Cleanup synchronization. There should be no races now. 2009-09-01 05:41 wagner * scripts/: make-dist.sh, version: move default version to pre-RC4 2009-08-31 20:31 wagner * m3-sys/m3tests/: PkgTags, src/m3makefile: add some .M3SHIP tests (issue #1062) added: m3tests/src/p2/p217/Main.m3 added: m3tests/src/p2/p217/m3makefile added: m3tests/src/p2/p217/stderr.build added: m3tests/src/p2/p217/stdout.build added: m3tests/src/p2/p218/Main.m3 added: m3tests/src/p2/p218/m3makefile added: m3tests/src/p2/p218/stderr.build added: m3tests/src/p2/p218/stdout.build added: m3tests/src/p2/p219/Main.m3 added: m3tests/src/p2/p219/m3makefile added: m3tests/src/p2/p219/stderr.build added: m3tests/src/p2/p219/stdout.build added: m3tests/src/p2/p220/Main.m3 added: m3tests/src/p2/p220/m3makefile added: m3tests/src/p2/p220/stderr.build added: m3tests/src/p2/p220/stdout.build added: m3tests/src/p2/p221/Main.m3 added: m3tests/src/p2/p221/m3makefile added: m3tests/src/p2/p221/stderr.build added: m3tests/src/p2/p221/stdout.build added: m3tests/src/p2/p222/Main.m3 added: m3tests/src/p2/p222/m3makefile added: m3tests/src/p2/p222/stderr.build added: m3tests/src/p2/p222/stdout.build added: m3tests/src/p2/p223/Main.m3 added: m3tests/src/p2/p223/m3makefile added: m3tests/src/p2/p223/stderr.build added: m3tests/src/p2/p223/stdout.build modified: m3tests/src/m3makefile 2009-08-31 12:09 jkrell * m3-sys/m3cc/src/: gnucc.common, m3makefile: workaround bugs in older cm3 (Linux/x86 5.4.0 tested) local variables at global scope disappear for some reason calling ConfigureGNUMake before get_overrides causes calling get_overrides to fail an assert 2009-08-31 10:33 jkrell * m3-sys/m3cc/src/gnumake.common: correct comment -- Mac OS X make is actually a symlink to gnumake (and tar and gnutar are hardlinks to each other) 2009-08-31 09:58 jkrell * m3-libs/libm3/src/rw/: AutoFlushWr.m3, UnsafeWr.i3, Wr.m3: A simpler implementation of AutoFlushWr that has less internal knowledge of Wr.m3, is slower, and actually works. 2009-08-31 09:11 jkrell * m3-libs/libm3/src/rw/AutoFlushWr.m3: Since Unlock is also documented as restoring invariants, restore the early Unlock, and then put in an extra Lock after that. In reality all the reader/writers implemented here don't do anything in Unlock except unlock, so it was ok. 2009-08-31 09:01 jkrell * m3-libs/libm3/src/rw/FileWr.m3: print details before raising fatal exception 2009-08-31 08:50 jkrell * m3-libs/libm3/src/rw/AutoFlushWr.m3: seems reasonable to extend this lock slightly, even if it doesn't fix the problem 2009-08-31 08:48 jkrell * m3-libs/libm3/src/rw/AutoFlushWr.m3: format one line better 2009-08-31 08:47 jkrell * m3-libs/libm3/src/rw/: Rd.m3, Wr.m3: call functions instead of copying their content 2009-08-31 08:01 jkrell * m3-libs/libm3/src/rw/Wr.m3: call function instead of duplicating its code 2009-08-31 07:31 jkrell * m3-libs/libm3/src/rw/AutoFlushWr.m3: format better (with newlines) 2009-08-31 01:51 jkrell * scripts/python/make-dist-cfg.py: a little code to write cm3.cfg based on cm3 -version 2009-08-30 10:45 jkrell * m3-libs/libm3/tests/random/src/m3makefile: build test standalone 2009-08-30 10:40 jkrell * m3-sys/m3tests/src/Test.common: commit mail missed because I submitted it as Hudson: make it all standalone (investigating I386_MACOSX hang) 2009-08-30 10:39 hudson * m3-sys/m3tests/src/Test.common: make it all standalone (investigating I386_MACOSX hang) 2009-08-30 10:05 jkrell * www/start.html: remove the absolutely terrible looking nested news frame; leaving the link would be reasonable but is also redundant with the list on the left (really this all needs to be rewritten..) 2009-08-30 08:42 wagner * scripts/make-dist.sh: Try to use rsync for shipping if available. I hope this doesn't break anything again. 2009-08-29 11:46 wagner * www/download.html: add missing RC2 link for downloads 2009-08-29 08:41 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTStackC.c, SOLsun/RTStackC.c: fix warning: RTMachine__SaveRegsInStack not declared 2009-08-29 08:27 jkrell * scripts/win/setup.cmd: fix 2009-08-29 08:27 jkrell * scripts/win/setup.cmd: remove one level of indentation in common case 2009-08-29 08:26 jkrell * scripts/win/setup.cmd: echo before action 2009-08-29 08:25 jkrell * scripts/win/setup.cmd: remove debug codep 2009-08-29 08:24 jkrell * scripts/win/setup.cmd: remove one line of boilerplace jscript-in-cmd wrapper 2009-08-29 08:21 jkrell * scripts/win/setup.cmd: cleanup 2009-08-29 08:21 jkrell * scripts/win/setup.cmd: remove debug code and cleanup 2009-08-29 08:15 jkrell * scripts/: make-dist.sh, win/setup.cmd: replace setup.cmd that probably doesn't quite work, with JScript (packaged in setup.cmd) that is constant and reads the setup.txt file next to it We can/should do the same with install.sh, but that is left alone. 2009-08-29 05:57 jkrell * scripts/: make-bin-dist-min.sh, make-dist.sh, make-src-dist-all.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, pkgmap.sh, ssh.sh, sysinfo.sh, regression/defs.sh: Huh, plain scp now just works, use it like before. 2009-08-29 04:22 jkrell * scripts/make-dist.sh: why didn't scp run -- add printing 2009-08-29 02:12 jkrell * scripts/make-bin-dist-min.sh: remove do-nothing line 2009-08-29 01:37 jkrell * scripts/: sysinfo.sh, regression/defs.sh: minor cleanup 2009-08-29 01:12 jkrell * scripts/ssh.sh: add comment here too 2009-08-29 01:11 jkrell * scripts/: sysinfo.sh, make-src-dist-all.sh, ssh.sh, make-bin-dist-min.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, pkgmap.sh, make-dist.sh, regression/defs.sh: try using putty scp in elego vm 2009-08-28 07:19 jkrell * m3-sys/cm3/src/M3Build.m3: finally fix the NT386 unresolve problem, it was mismatched slashes as I thought, but my RTIO was never hitting because it was too restrictive 2009-08-28 06:34 jkrell * scripts/: make-dist.sh, make-bin-dist-min.sh: some echo'ing to try to debug the NT386 resolve problem for me, just rerunning cm3 incrementally with or w/o the switch regenerates the .M3SHIP file correctly 2009-08-28 06:05 jkrell * m3-sys/m3gdb/src/m3makefile: make it match release branch -- change MAKEINFO from echo to colon, remove variable that is written once, read once 2009-08-28 05:47 jkrell * m3-sys/m3gdb/gdb/gdb/basement/: nested1, old-e8: remove tabs, and spaces at end of line 2009-08-28 05:44 jkrell * m3-sys/m3gdb/gdb/gdb/m3-typeprint.c: unify casing in comment with head (TRUE => true) 2009-08-28 05:43 jkrell * m3-sys/m3gdb/gdb/gdb/m3-util.h: remove tabs 2009-08-28 05:42 jkrell * m3-sys/m3gdb/gdb/gdb/buildsym.c: weed out small differences with release branch 2009-08-28 05:37 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-typeprint.c, save/m3-typeprint.c, save/m3-valprint.c: remove the few register variables 2009-08-28 05:34 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-valprint.c, save/m3-lang.c, save/m3-valprint.c: a little whitespace unification with release branch 2009-08-28 05:31 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-typeprint.c, save/m3-typeprint.c, save/m3-valprint.c: remove the very few occurences of "register" It is ignored by all modern compilers and we don't even optimize m3gdb. 2009-08-28 05:29 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.c, m3-exp.c, m3-lang.c, m3-threads.c, m3-util.c, m3-valprint.c, save/m3-lang.c, save/m3-lang.h, save/m3-valprint.c: remove a few spaces before semicolons 2009-08-28 05:25 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.c, m3-eval.h, m3-exp.c, m3-lang.c, m3-lang.h, m3-threads.c, m3-token.c, m3-typeprint.c, m3-util.c, m3-valprint.c, m3-valprint.h, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-token.c, save/m3-typeprint.c, save/m3-valprint.c: remove all tabs 2009-08-28 05:15 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-exp.c, m3-lang.c, m3-lang.h, m3-util.c, m3-util.h, m3-valprint.c, save/m3-valprint.c: fix functions that take nothing to not take anything (void) vs. () This is an ANSI-ism, but the code already contains a mix of ANSI and K&R. 2009-08-28 05:08 jkrell * m3-sys/m3gdb/gdb/gdb/: buildsym.c, infcall.c, m3-eval.c, m3-eval.h, m3-exp.c, m3-lang.c, m3-lang.h, m3-threads.c, m3-token.c, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h, basement/m3-subtypes.c, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-subtypes.c, save/m3-token.c, save/m3-valprint.c: stdbool.h #errors on Solaris, so: replace stdbool.h with m3-bool.h replace bool with BOOL replace true with TRUE replace false with FALSE 2009-08-28 04:50 jkrell * m3-sys/m3gdb/gdb/gdb/m3-bool.h: bring new file m3-bool.h over from release branch, to replace use of stdbool.h, which #errors on Solaris 2009-08-28 04:48 jkrell * m3-sys/m3gdb/gdb/gdb/m3-eval.c: remove double semicolon 2009-08-28 04:48 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-exp.c, m3-lang.c, m3-uid.c, m3-util.c, m3-valprint.c, basement/m3-temp-patch.c, save/m3-exp.c, save/m3-lang.c, save/m3-temp-patch.c, save/m3-uid.c, save/m3-valprint.c: remove semicolons after braces 2009-08-28 04:45 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.c, m3-eval.h, m3-exp.c, m3-exp.h, m3-lang.c, m3-lang.h, m3-threads.c, m3-threads.h, m3-token.c, m3-token.h, m3-typeprint.c, m3-typeprint.h, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h, basement/m3-subtypes.c, basement/m3-temp-patch.c, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-subtypes.c, save/m3-temp-patch.c, save/m3-token.c, save/m3-type-switch, save/m3-typeprint.c, save/m3-valprint.c: remove spaces from ends of lines 2009-08-28 04:26 jkrell * m3-sys/m3gdb/gdb/gdb/: infcall.c, m3-token.c: false => FALSE #include "m3-BOOL.h" => #include "m3-bool.h" 2009-08-28 04:21 jkrell * m3-sys/m3gdb/gdb/gdb/basement/: nested1, old-e8: remove spaces from ends of lines remove tabs 2009-08-28 04:13 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.h, m3-lang.h, m3-uid.h, m3-util.h, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-token.c, save/m3-valprint.c: change to "m3-bool.h" I must have had the wrong starting versions on this machine? 2009-08-28 04:09 jkrell * m3-sys/m3gdb/src/: platforms.quake, m3overrides: take ownership so I can clear executable bit 2009-08-28 03:54 jkrell * m3-sys/m3gdb/gdb/gdb/: buildsym.c, m3-bool.h, m3-eval.c, m3-exp.c, m3-lang.c, m3-lang.h, m3-threads.c, m3-token.c, m3-typeprint.c, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h, basement/m3-subtypes.c, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-subtypes.c, save/m3-token.c, save/m3-valprint.c: We can't use stdbool.h. It breaks on Solaris. We can't define bool/true/false ourselves. That breaks e.g. on Linux/AMD64. Maybe under #ifdef? Let's try BOOL/TRUE/FALSE. If that fails, probably m3bool/m3true/m3false. 2009-08-28 03:26 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.c, m3-eval.h, m3-exp.c, m3-lang.c, m3-lang.h, m3-threads.c, m3-token.c, m3-typeprint.c, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-token.c, save/m3-typeprint.c, save/m3-valprint.c: remove all tabs 2009-08-28 03:07 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-exp.c, m3-lang.c, m3-lang.h, m3-util.c, m3-util.h, m3-valprint.c, save/m3-valprint.c: functions that take no parameters should be (void), not () () means take anything, not take nothing 2009-08-28 03:01 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-exp.c, m3-lang.c, m3-uid.c, m3-util.c, m3-valprint.c, basement/m3-temp-patch.c, save/m3-exp.c, save/m3-lang.c, save/m3-temp-patch.c, save/m3-uid.c, save/m3-valprint.c: remove a few do-nothing semicolons after braces 2009-08-28 02:56 jkrell * m3-sys/m3gdb/gdb/gdb/m3-eval.c: remove double semicolon 2009-08-28 02:55 jkrell * m3-sys/m3gdb/gdb/gdb/: m3-eval.c, m3-exp.c, m3-lang.c, m3-threads.c, m3-util.c, m3-valprint.c, save/m3-lang.c, save/m3-lang.h, save/m3-valprint.c: fix more pointless and inconsistent formating -- spaces before semicolons 2009-08-28 01:31 jkrell * m3-sys/m3gdb/gdb/gdb/: buildsym.c, m3-eval.c, m3-eval.h, m3-exp.c, m3-exp.h, m3-lang.c, m3-lang.h, m3-threads.c, m3-threads.h, m3-token.c, m3-token.h, m3-typeprint.c, m3-typeprint.h, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h, basement/m3-subtypes.c, basement/m3-temp-patch.c, save/m3-exp.c, save/m3-lang.c, save/m3-lang.h, save/m3-subtypes.c, save/m3-temp-patch.c, save/m3-token.c, save/m3-type-switch, save/m3-typeprint.c, save/m3-valprint.c: remove pointless whitespace at ends of lines, for some reason it was rampant 2009-08-27 12:30 jkrell * m3-sys/cm3/src/M3Build.m3: debugprint a little more often 2009-08-27 06:28 jkrell * scripts/win/cvs.c: fix comment 2009-08-27 06:26 jkrell * scripts/win/cvs.c: /* This is a wrapper for \cygwin\bin\cvs.exe that doesn't requiring changing %PATH%. Put it in some directory already in %PATH%, such as %WinDir% or %WinDir%\system32. As well, on the Elego Windows VM, \Program Files\CVSNT has been renamed to CVSNT.1 to get it out of %PATH%. It ruins line endings. As well \SFU was mostly renamed to \SFU.1, to remove it as a possible factor, though it turns out it was probably completely innocent. As well, CVS_RSH changed to /bin/ssh. Plain "ssh" as all other Hudson jobs use would probably work if in this wrapper we prepended c:\cygwin\bin to %PATH%. Build it with: cl -Zl cvs.c -link -entry:Entry -subsystem:console kernel32.lib */ #include /* These are globals just to sleazily avoid -GS and memset dependencies. */ WCHAR Executable[] = L"C:\\cygwin\\bin\\cvs.exe"; WCHAR SystemDrive[3]; STARTUPINFOW StartInfo; PROCESS_INFORMATION ProcessInfo; void Entry(void) { DWORD ExitCode; StartInfo.cb = sizeof(StartInfo); GetEnvironmentVariableW(L"SystemDrive", SystemDrive, 3); if (SystemDrive[0]) Executable[0] = SystemDrive[0]; ExitCode = CreateProcessW(Executable, GetCommandLineW(), NULL, NULL, FALSE, 0, NULL, NULL, &StartInfo, &ProcessInfo); if (ExitCode == FALSE) { ExitCode = GetLastError(); } else { WaitForSingleObject(ProcessInfo.hProcess, INFINITE); GetExitCodeProcess(ProcessInfo.hProcess, &ExitCode); } ExitProcess(ExitCode); } 2009-08-27 01:59 jkrell * scripts/make-dist.sh: remove dos2unix stuff, let's try to figure out the right way 2009-08-27 01:33 jkrell * scripts/make-dist.sh: don't run dos2unix if it isn't there 2009-08-26 20:28 jkrell * scripts/make-dist.sh: dos2unix after cvs up -- notice though that these modified files are being moved away -- building more and more diskspace 2009-08-26 07:37 jkrell * m3-sys/cm3/src/M3Build.m3: fix debugprint, no matter 2009-08-26 05:40 jkrell * m3-sys/cm3/src/M3Build.m3: a bit more temporary debugprint 2009-08-26 05:34 jkrell * m3-sys/cm3/src/: M3Build.m3: extra special temporary debugprint for NT386 2009-08-26 05:14 jkrell * m3-sys/m3gdb/src/m3makefile: remove variable that is only written once and read once; use null command : instead of echo for MAKEINFO, like m3cc does 2009-08-26 05:11 jkrell * m3-sys/m3gdb/src/m3makefile: remove Solaris-specific -lintl 2009-08-26 05:06 jkrell * m3-sys/: cm3/test/src/t.m3, m3quake/src/M3Path.m3: update from head -- should fix the unresolve failure in NT386 2009-08-26 05:02 jkrell * m3-sys/m3gdb/gdb/gdb/: buildsym.c, m3-bool.h, m3-eval.c, m3-eval.h, m3-exp.c, m3-exp.h, m3-lang.c, m3-lang.h, m3-nat.c, m3-threads.c, m3-threads.h, m3-token.c, m3-token.h, m3-typeprint.c, m3-typeprint.h, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c, m3-valprint.h: commit mail with change that didn't trigger: fix m3gdb build on Solaris (SOLgnu) cat /usr/include/stdbool.h: #error "Use of is valid only in a c99 compilation environment." so don't use stdbool.h, use this new m3-bool.h instead: #ifndef M3_BOOL_H_INCLUDED #define M3_BOOL_H_INCLUDED #ifndef __cplusplus typedef int bool; #define true 1 #define false 0 #endif #endif 2009-08-26 04:59 hudson * m3-sys/m3gdb/gdb/gdb/: buildsym.c, m3-bool.h, m3-exp.c, m3-token.c, m3-util.c, m3-valprint.c: fix m3gdb build on Solaris (SOLgnu) cat /usr/include/stdbool.h: #error "Use of is valid only in a c99 compilation environment." so don't use stdbool.h, use this new m3-bool.h instead: #ifndef M3_BOOL_H_INCLUDED #define M3_BOOL_H_INCLUDED #ifndef __cplusplus typedef int bool; #define true 1 #define false 0 #endif #endif 2009-08-26 04:01 jkrell * m3-sys/: m3quake/src/M3Path.m3, cm3/test/src/t.m3: - do change runs of slashes to single slashes, except at start That way, LIB_INSTALL won't have installroot//lib and Unresolve should work, fixing NT386 build. - make sure a/ and ab/ canonicalize consistently, to a and ab; previously this wasn't true, the trailing slash would be left on a/, with the intent of avoiding altering leading slashes 2009-08-26 02:05 jkrell * m3-libs/m3core/src/Csupport/libgcc/libgcc.c: update from head for SOLsun 2009-08-26 02:01 jkrell * m3-libs/m3core/src/Csupport/libgcc/libgcc.c: cleanup -- remove unused typedefs 2009-08-26 01:55 jkrell * m3-libs/m3core/src/Csupport/libgcc/libgcc.c: add: /* INT64 to float (double int to single float) */ float __floatdisf (INT64 x) { return x; } /* INT64 to double (double int to double float) */ double __floatdidf (INT64 x) { return x; } needed by SOLsun (at least one of them) 2009-08-26 01:54 jkrell * m3-libs/m3core/src/Csupport/libgcc/libgcc.c: remove typedef int word_type and just use int 2009-08-26 00:39 jkrell * scripts/config/libgcc.c: code to reverse engineer libgcc, need another function for SOLsun 2009-08-26 00:38 jkrell * scripts/config/libgcc.c: fix newlines 2009-08-26 00:38 jkrell * scripts/config/libgcc.c: reverse engineering for libgcc, I don't think the documentation is correct, and SOLsun is failing for lack of some functions 2009-08-25 17:17 jkrell * m3-sys/cm3/src/M3Build.m3: temporary debugprint for NT386 2009-08-25 09:37 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh, regression/defs.sh: comment only 2009-08-25 09:36 jkrell * scripts/regression/defs.sh: provide FIND variable (not used in this branch yet) (NT has \windows\system32.find.exe) 2009-08-25 09:34 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh: provide FIND and EGREP variables (not used in this branch yet) 2009-08-25 09:31 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh: provide EGREP variable (not used in this branch yet) 2009-08-25 09:29 jkrell * scripts/: make-dist.sh, sysinfo.sh: use /usr/sfw/bin/gegrep if it exists, instead of egrep, to fix Solaris (another point for Python against sh!) 2009-08-25 09:21 jkrell * scripts/: sysinfo.sh, sysinfo-new.sh: fix strip change 2009-08-25 07:12 jkrell * scripts/: sysinfo.sh, sysinfo-new.sh: favor /usr/ccs/bin/strip over strip if it is executable 2009-08-25 04:00 jkrell * m3-libs/libm3/src/bundleintf/: bundle-ov.tmpl: allow for crossing between SOLsun and SOLgnu 2009-08-25 01:53 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh, regression/defs.sh: remove scope so export works 2009-08-24 12:18 jkrell * scripts/: sysinfo.sh, regression/defs.sh: bring over code for finding GNU make and GNU tar 2009-08-24 12:16 jkrell * scripts/regression/defs.sh: remove unused path functions: appendpath, appendpathelem 2009-08-24 12:12 jkrell * scripts/: sysinfo.sh, regression/defs.sh: determine GNU tar and GNU make by using the first in a list that "type" accepts todo: run it and grep for "GNU" The lists are: gmake gnumake /usr/pkg/bin/gmake /usr/sfw/bin/gmake /usr/local/gmake /usr/local/gnumake make gtar gnutar /usr/pkg/bin/gtar /usr/sfw/bin/gtar /usr/local/gtar /usr/local/gnutar tar 2009-08-24 12:11 jkrell * scripts/config/stack.c: code for determining information about stack sizes, didn't produce the desired results and to work as intended would need to run a separate process 2009-08-24 12:04 jkrell * scripts/sysinfo-new.sh: add comments 2009-08-24 11:59 jkrell * scripts/regression/defs.sh: remove unused path function: delpath 2009-08-24 11:58 jkrell * scripts/regression/defs.sh: remove unused path functions: delpathelem, makepath, pathelems 2009-08-24 05:02 hudson * m3-sys/cm3ide/src/m3overrides: add missing overrides 2009-08-24 03:35 jkrell * m3-win/import-libs/DESC: update description 2009-08-24 03:27 jkrell * m3-sys/m3cc/src/: gnucc.common: treat SOLgnu and SOLsun as equivalent for purposes of determining if a build is native 2009-08-24 03:18 jkrell * m3-sys/: m3cc/src/m3makefile, m3gdb/src/m3makefile: bring changes from head for finding GNU make on any system and gcc/Sun cc on Solaris 2009-08-24 03:16 jkrell * m3-sys/m3gdb/src/m3makefile: hand merge from release to head, cvs doesn't seem to do this for us? 2009-08-24 03:07 jkrell * m3-sys/m3cc/src/: gnucc.common, gnumake.common: bring over new files from head 2009-08-24 00:03 jkrell * m3-libs/m3core/src/unix/Common/Usocket.i3: add missing import 2009-08-23 10:59 wagner * m3-sys/cm3/src/M3Build.m3: fix DoRootdExport 2009-08-23 10:39 wagner * m3-win/import-libs/DESC: fix description 2009-08-23 09:24 wagner * scripts/pkginfo.txt: windowsResources needs to be in core now that cm3ide is 2009-08-23 08:29 jkrell * m3-sys/cminstall/src/config-no-install/cm3cfg.common: fix -- remove include of gnumake.common, which was deleted 2009-08-23 08:24 jkrell * m3-libs/m3core/src/unix/: uin-len/Uin.i3, uin-common/Uin.i3: fix 2009-08-23 08:22 jkrell * m3-libs/m3core/src/unix/: Common/Uconstants.c, Common/Usocket.c, Common/Usocket.i3, uin-common/Uin.i3, uin-len/Uin.i3: add more constants (lost the *.i3 change; later) restore struct_sockaddr_un (hopefully correct, hard to deal with safely) 2009-08-23 08:12 jkrell * m3-libs/m3core/src/unix/Common/Usocket.c: remove the duplicated wrpapers and just use one more portable less efficient set 2009-08-23 07:10 jkrell * m3-libs/m3core/src/runtime/common/RTHeapRep.m3: merge from release 5.8 -- add missing imports 2009-08-22 23:21 wagner * www/: download.html, news.html: changes for RC3 2009-08-22 13:16 wagner * m3-sys/m3gdb/gdb/gdb/: m3-lang.c, m3-threads.c, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c: merge fix for ticket #1058 from head 2009-08-22 12:43 wagner * scripts/: make-dist.sh, version: changes for RC3 production 2009-08-22 11:57 wagner * m3-sys/: cm3/src/Makefile.m3, m3quake/src/MxConfig.m3: fix wrong quake trace default (too late last night...) 2009-08-22 11:51 wagner * m3-sys/cminstall/src/Main.m3: workaround for undefined SL in cm3.cfg (use / instead) 2009-08-22 10:37 wagner * scripts/pkgmap.sh: create empty .M3SHIP files for unsupported packages, too 2009-08-21 23:07 wagner * m3-sys/m3quake/: PkgTags, src/MxConfig.m3: don't ignore quake runtime errors, but write them to stderr modified: m3quake/src/MxConfig.m3 2009-08-21 22:26 wagner * m3-libs/m3core/: PkgTags, src/runtime/common/RTCollector.m3, src/runtime/common/RTHeapRep.i3, src/runtime/common/RTHeapRep.m3, src/runtime/common/RTLinker.m3: Merge runtime fixes for heap initialization from head. This should fix ticket #1063. modified: m3core/src/runtime/common/RTCollector.m3 modified: m3core/src/runtime/common/RTHeapRep.i3 modified: m3core/src/runtime/common/RTHeapRep.m3 modified: m3core/src/runtime/common/RTLinker.m3 2009-08-21 22:23 wagner * m3-sys/m3tests/: PkgTags, src/Test.common, src/m3makefile: add and enable some simple tests for garbage collection runtime options added: m3tests/src/p2/p214/Main.m3 added: m3tests/src/p2/p214/m3makefile added: m3tests/src/p2/p214/stderr.build added: m3tests/src/p2/p214/stderr.pgm added: m3tests/src/p2/p214/stdout.build added: m3tests/src/p2/p214/stdout.pgm added: m3tests/src/p2/p215/Main.m3 added: m3tests/src/p2/p215/m3makefile added: m3tests/src/p2/p215/stderr.build added: m3tests/src/p2/p215/stderr.pgm added: m3tests/src/p2/p215/stdout.build added: m3tests/src/p2/p215/stdout.pgm added: m3tests/src/p2/p216/Main.m3 added: m3tests/src/p2/p216/m3makefile added: m3tests/src/p2/p216/stderr.build added: m3tests/src/p2/p216/stderr.pgm added: m3tests/src/p2/p216/stdout.build added: m3tests/src/p2/p216/stdout.pgm modified: m3tests/src/Test.common modified: m3tests/src/m3makefile 2009-08-21 21:49 wagner * m3-sys/cm3/: PkgTags, src/Makefile.m3: Evaluate trace option in time for PrintVersion. Thus the execution of the cm3.cfg file can be traced now. modified: cm3/src/Makefile.m3 2009-08-21 21:46 wagner * m3-sys/m3quake/: PkgTags, src/MxConfig.i3, src/MxConfig.m3, src/QMachine.i3, src/QMachine.m3: Add method to enable and disable tracing to a quake machine. Add interface to enable tracing to MxConfig. Until now, tracing could only be enabled by the quake instruction TRACE_INSTR. modified: m3quake/src/MxConfig.i3 modified: m3quake/src/MxConfig.m3 modified: m3quake/src/QMachine.i3 modified: m3quake/src/QMachine.m3 2009-08-21 19:44 wagner * m3-sys/m3tests/: PkgTags, src/Test.common, src/m3makefile: Add some infrastructure for testing runtime arguments and compiler arguments. Add test p213 for testing @M3paranoidgc. This test is not enabled yet as it doesn't terminate :-( Something seems to be seriously broken. added: m3tests/src/p2/p213/m3makefile added: m3tests/src/p2/p213/stderr.build added: m3tests/src/p2/p213/stderr.pgm added: m3tests/src/p2/p213/stdout.build added: m3tests/src/p2/p213/stdout.pgm modified: m3tests/src/Test.common modified: m3tests/src/m3makefile 2009-08-21 18:21 wagner * m3-sys/cm3ide/: PkgTags, src/mkm3makefile.sh: ignore backup files modified: cm3ide/src/mkm3makefile.sh modified: cm3ide/src/examples/m3makefile 2009-08-21 18:05 wagner * m3-comm/netobj/tests/: echorw/src/m3makefile, fd/src/m3makefile, fd1/src/m3makefile, longcall/src/m3makefile, perf/src/m3makefile, pkl/src/m3makefile: add missing quotes to m3makefiles for tests 2009-08-21 17:24 wagner * m3-sys/cm3ide/: PkgTags, src/m3makefile, src/mkm3makefile.sh: Add shipping of the examples by using the new installation directive RootExport. Also add a simple shell script to regenerate cm3ide/src/examples/m3makefile in case more examples are added. added: cm3ide/src/mkm3makefile.sh added: cm3ide/src/examples/m3makefile modified: cm3ide/src/m3makefile 2009-08-21 17:21 wagner * doc/help/cm3/m3build/exports.html: add info about new installation directives 2009-08-21 17:14 wagner * m3-sys/cm3/: PkgTags, src/M3Build.m3, src/Makefile.m3: add new builtin quake directives for export: RootExport( fn, destdir ) RootdExport( fn, destdir ) which export fn to destdir as a source or a derived file. destdir must be a relative pathname, which will be prepended by INSTALL_ROOT, in order to not allow cm3 to ship outside of its own hierarchy. Also enable target output again which has worked for me without problems. modified: cm3/src/M3Build.m3 modified: cm3/src/Makefile.m3 2009-08-21 14:17 jkrell * m3-libs/m3core/src/runtime/common/RTHeapRep.m3: add locking around RegisterMonitor and UnregisterMonitor 2009-08-20 20:33 rodney * m3-sys/m3gdb/gdb/gdb/: m3-lang.c, m3-threads.c, m3-uid.c, m3-uid.h, m3-util.c, m3-util.h, m3-valprint.c: Fix ticket number 1058, wherein m3gdb crashed with bus error when attempting to print the value of an object, on a 64-bit target. The problem was incomplete adaptation to 64-bits when accessing runtime data structures. Similar problems were fixed in several places that had equivalent bugs. 2009-08-20 13:06 jkrell * m3-sys/m3cc/src/gnucc.common: file gnucc.common was added on branch release_branch_cm3_5_8 on 2009-08-24 03:07:42 +0000 2009-08-20 13:06 jkrell * m3-sys/m3cc/src/gnucc.common: try something much smaller -- add /usr/ccs/bin and /usr/sfw/bin to PATH sometimes 2009-08-20 13:04 jkrell * m3-sys/m3cc/src/m3makefile: remove readonly on FileExists so it can be redundantly defined 2009-08-20 12:34 jkrell * m3-sys/cminstall/src/config-no-install/: gnucc.common, gnumake.common: and finally, delete the others 2009-08-20 12:33 jkrell * m3-sys/: m3cc/src/m3makefile, m3gdb/src/m3makefile: use moved gnucc.common, gnumake.common 2009-08-20 12:31 jkrell * m3-sys/m3cc/src/gnumake.common: file gnumake.common was added on branch release_branch_cm3_5_8 on 2009-08-24 03:07:42 +0000 2009-08-20 12:31 jkrell * m3-sys/m3cc/src/: gnucc.common, gnumake.common: moving these to non public place (in a particular order, mindful of CVS not being atomic..) 2009-08-20 12:27 jkrell * m3-sys/: cminstall/src/config-no-install/gnucc.common, m3cc/src/m3makefile, m3gdb/src/m3makefile: common code for m3cc and m3gdb probably should be in m3cc/src/m3makefile.common or common.quake 2009-08-20 11:47 jkrell * m3-sys/cminstall/src/config-no-install/gnucc.common: first cut out the irrelevant parts 2009-08-20 11:45 jkrell * m3-sys/cminstall/src/config-no-install/gnucc.common: not surprising; initial copy of m3cc/src/m3makefile to adapt part of it for sharing with m3gdb 2009-08-20 11:39 jkrell * m3-sys/m3gdb/src/m3makefile: code to find ar on Solaris even if PATH is minimal, should be shared somehow with m3cc 2009-08-20 11:31 jkrell * m3-sys/cminstall/src/config-no-install/gnumake.common: cleaner, albeit equivalent 2009-08-20 11:16 jkrell * m3-sys/cminstall/src/config-no-install/gnumake.common: make it work much more often -- set all the globals 2009-08-20 11:05 jkrell * m3-sys/: m3cc/src/m3makefile, m3gdb/src/m3makefile: share code for finding GNU make, such as to fix building m3gdb on my minimally configured Solaris machine, and reasonable code for anyone's machine a la autoconf, but in quake 2009-08-20 11:01 jkrell * m3-sys/cminstall/src/config-no-install/: cm3cfg.common, gnumake.common: move into separate file for sharing 2009-08-20 10:40 jkrell * m3-libs/m3core/src/runtime/common/: RTCollector.m3, RTHeapRep.i3, RTLinker.m3: split up initialization so that the later part can do a traced allocation 2009-08-20 08:01 jkrell * scripts/: sysinfo.sh, regression/defs.sh: add AMD64_FREEBSD gradual migration toward the rewrite in particular: convert if ladders to switches allow user to override CM3_TARGET (this is somewhat buggy, because there are multiple variables -- what if user overrides CM3_TARGET=NT386 for a cross build, but not CM3_OSTYPE?; the actual rewrite that isn't in use yet strives to handle this properly) 2009-08-20 05:46 jkrell * scripts/regression/defs.sh: let use specify SOLsun instead of SOLgnu; drop FreeBSD1-3 and for now FreeBSD/alpha 2009-08-19 20:05 jkrell * m3-sys/m3middle/src/Target.m3: oops -- fix i386_darwin syntax error 2009-08-19 18:14 wagner * m3-sys/m3middle/src/Target.m3: fix syntax error 2009-08-19 13:49 jkrell * m3-sys/m3middle/src/: Target.m3: use sigjmp_buf on I386_DARWIN 2009-08-19 13:42 jkrell * m3-sys/cm3/src/: cm3.1: fix typo decendant vs. descendant 2009-08-19 13:39 jkrell * m3-sys/cm3/src/Makefile.m3: target always prints as empty for me here; remove it 2009-08-19 13:35 jkrell * m3-sys/cm3/src/Makefile.m3: Target: always prints as empty for me here, even with a simple config file, so remove it. Or does it work for other people? 2009-08-19 13:22 jkrell * m3-sys/cminstall/src/config-no-install/: NT386.common: go back a version, library and Library are the same thing and cm3 doesn't ship .so/.dll files, the config files do; cm3 ships programs and static libraries but not shared libraries, this division of labor seems wierd.. 2009-08-19 13:06 jkrell * m3-sys/cminstall/src/config-no-install/: NT386.common, cm3cfg.common: manual merge from release_branch_cm3_5_8 to head: let cm3 decide where to ship stuff -- not everything goes to BinInstall 2009-08-19 13:02 jkrell * m3-sys/cminstall/src/config-no-install/: NT386.common, cm3cfg.common: let cm3 decide where to ship stuff -- not everything goes to BinInstall 2009-08-18 22:26 jkrell * m3-sys/m3tests/src/TestC.c: merge from head: allow jmpbuf or sig_jmpbuf on MacOSX 2009-08-18 22:23 jkrell * m3-sys/m3tests/src/TestC.c: allos jmpbuf or sig_jmpbuf on MacOSX 2009-08-18 22:04 wagner * scripts/make-dist.sh: #1047: grep for yet more errors 2009-08-18 14:08 jkrell * scripts/sysinfo.sh: sysinfo.sh can't find $root within Hudson's boot jobs 2009-08-17 20:26 wagner * scripts/pkgmap.sh: add some support for skipped reporting in xml 2009-08-17 15:17 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3, m3-obliq/synex/src/SynParse.m3, m3-obliq/synex/src/m3makefile: merge from head: restore stack to 4K, use much less stack typically in visobliq (but also potentially more) 2009-08-17 15:13 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: go back a few versions, just '4096' vs. '4 * 1024', no semantic difference but it undoes all the recent churn now that visobliq's stack usage significantly reduced 2009-08-17 15:07 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: go back to 4K stack now that visobliq uses much less; still a very flawed mechanism.. 2009-08-17 15:06 jkrell * m3-obliq/synex/src/: SynParse.m3, m3makefile: Slightly restructure so that it fits in the original 4K, without even enabling optimization. Each arm of the switch is changed to a function. The code is still recursive on the machine stack however and some scenarios might use more stack than before (due to the function call overhead). 2009-08-17 13:57 jkrell * m3-obliq/synex/src/m3makefile, m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: merge from HEAD: reduce default stack to 16K from 32K, was previously 4K; always optimize synex in order to roughly halve SynParse.Read0 stack usage, but I believe could still be much better 2009-08-17 13:55 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: reduce default stack from 32K to 16K; was 4K before 2009-08-17 13:54 jkrell * m3-obliq/synex/src/m3makefile: always optimize here it reduces SynParse.Read0 stack usage on Solaris/sparc32 by about half and lets 16K stack suffice where otherwise it did not; could still be better -- platforms with stack walkers don't need to pay for a jmpbuf, and this function is tail recursive, isn't it? 2009-08-17 13:28 jkrell * m3-obliq/synex/src/: SynScan.i3, SynScan.m3: convert mix of tabs and spaces to just spaces 2009-08-17 13:25 jkrell * m3-obliq/synex/src/: SynParse.m3, SynParse.i3: convert tabs to spaces; the file had quite a mix 2009-08-17 11:28 jkrell * m3-sys/m3gdb/src/platforms.quake: add some synonyms from m3cc -- I386_{FREEBSD,LINUX,NETBSD}, SPARC{32}_SOLARIS; these two files should be merged, and the result moved into somewhere common such as cm3cfg.common 2009-08-17 11:25 jkrell * m3-sys/m3gdb/src/platforms.quake: remove older platforms 2009-08-17 11:24 jkrell * m3-sys/m3gdb/src/platforms.quake-old: save away old 2009-08-17 11:22 jkrell * m3-sys/: cminstall/src/config-no-install/cm3cfg.common, m3cc/src/m3makefile: put code in common place, but don't yet depend on that 2009-08-17 11:19 jkrell * m3-sys/m3cc/src/m3makefile: also accept M3GDB_MAKE to prepare for sharing this code with m3-sys/m3gdb 2009-08-17 11:13 jkrell * m3-sys/m3cc/src/m3makefile: use findstr.exe instead of findstr for Interix compatibility 2009-08-17 11:10 jkrell * m3-sys/m3cc/src/m3makefile: comment only 2009-08-17 11:07 jkrell * m3-sys/m3cc/src/m3makefile: set MAKE in environment, that should save us from the special handling of am_cv_CC_dependencies_compiler_type on Solaris, to test that later and remove it if possible, which should then allow a more general/automatic autoconfiguration of CC 2009-08-17 10:58 jkrell * m3-sys/m3cc/src/m3makefile: find GNU make very automatically on any system 2009-08-17 10:31 jkrell * scripts/sysinfo-new.sh: add NetBSD locations of gmake and gtar (/usr/pkg) and comments that OpenBSD and FreeBSD are I believe covered (/usr/local) and that /usr/sfw is Solaris (Sun FreeWare) 2009-08-17 10:15 jkrell * m3-sys/cm3/src/Main.m3: for now remove the recently added predefines: LINKER C_COMPILER BACKEND_MODE THREAD_LIBRARY WINDOW_LIBRARY HOST_GNU_MAKE HOST_GNU_MAKE I'll probe for differently. I think they were propagating inappropriately in cross builds. They aren't a bad idea really, but need work. In particular we can't remove these things from config files until the m3quake users other than cm3 also define them as needed. 2009-08-17 06:24 wagner * scripts/make-dist.sh: fix bad substitution 2009-08-17 04:05 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: merge from head: raise default stack from 4K to 32K so that visobliq doesn't stack overflow in startup on Solaris; 16K didn't work 2009-08-17 03:58 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: raise default stack from 4K to 32K so that visobliq doesn't stack overflow in startup on Solaris; 16K didn't work 2009-08-17 03:36 jkrell * scripts/python/pylib.py: remove PM3/DEC-SRC support 2009-08-17 03:32 jkrell * scripts/: sysinfo-new.sh, sysinfo.sh, python/pylib.py: remove PM3/DEC-SRC support fix formating slightly in -new fix readability slightly in -new; slight restoration to old ordering 2009-08-17 03:13 jkrell * scripts/sysinfo-new.sh: rewrite sysinfo.sh with an eye toward: always let user set CM3_TARGET but not really OSTYPE, except for NT probing the same for gnutar, gtar, tar, gnumake, gmake, make across all platforms, even though that doesn't make complete sense ie: on Linux could always just use tar and make directly, but the extra probing should be cheap and the result seems simpler to me The only downside is that e.g. on Linux if you have gnutar or gtar but want to actually use tar, that won't happen. Where FOO and CM3_FOO default to each other, use mostly common code and common logic so that it is simpler. That is, if either FOO or CM3_FOO is set, default the other to it, or default them both the same; if FOO and CM3_FOO are both set, require them to be equal; minor semantic loss here is that 1 perhaps CM3_FOO trumped FOO, or the other way around, it was too confusing to tell 2 FOO can no longer be used to have a different meaning in the enclosing context with CM3_FOO to trump it; that is, if $INSTALLROOT is in fact set, it must be set to the Modula-3 value Best practise of course is just never set the more general ones. The particular pairs of variables are: TARGET CM3_TARGET M3GDB CM3_GDB M3OSTYPE CM3_OSTYPE CM3_INSTALL INSTALLROOT Try to rationalize the mess I made of NT386 being three platforms. Though the mess will later be removed. Specifically user might set TARGET=NT386GNU|NT386MINGNU which translate into NT386 + platform + backend, or use might set platform + backend. Still needs more proof reading and testing before being put into place. Also will want to share it with regression/defs.sh. 2009-08-17 01:48 jkrell * scripts/sysinfo.sh: move functions to top, otherwise the debug function hangs, wierd 2009-08-16 20:00 jkrell * m3-sys/cminstall/src/config-no-install/NT386: fix the rest 2009-08-16 11:18 jkrell * scripts/sysinfo.sh: move functions to the top; it seems to matter, as otherwise my own use of debug function hangs 2009-08-15 21:26 jkrell * m3-sys/m3cc/src/m3makefile: copy from head for Solaris autoconfiguration 2009-08-15 21:16 jkrell * m3-sys/m3cc/src/m3makefile: help configure with the dependency style for gcc also so that libcpp can build 2009-08-15 20:17 jkrell * m3-sys/m3cc/src/m3makefile: on native Solaris builds - if cc not working, try /usr/sfw/bin/gcc - if SYSTEM_AR == ar and not working (not in $PATH), try /usr/ccs/bin/ar 2009-08-15 11:56 wagner * scripts/: all-deps, get-all-deps.sh: update pacakge dependencies fix scripts/get-all-deps.sh 2009-08-15 11:17 wagner * scripts/pkginfo.txt: remove examples move cm3ide from m3devtool to core 2009-08-15 10:20 wagner * examples/: README, index.html, browsing/src/index.html, browsing/src/m3makefile, c-calling-m3/src/CcallsM3.m3, c-calling-m3/src/Cstuff.c, c-calling-m3/src/Cstuff.i3, c-calling-m3/src/index.html, c-calling-m3/src/m3makefile, calling-c-unix/src/CallingC.m3, calling-c-unix/src/Lib.i3, calling-c-unix/src/Lib.m3, calling-c-unix/src/Ulib.i3, calling-c-unix/src/index.html, calling-c-unix/src/m3makefile, calling-c-win32/src/OK.m3, calling-c-win32/src/WinLib.m3, calling-c-win32/src/index.html, calling-c-win32/src/m3makefile, copy/src/Copy.m3, copy/src/FakeOS.i3, copy/src/FakeOS.m3, copy/src/index.html, copy/src/m3makefile, enum/src/ExtensionLookup.m3, enum/src/index.html, enum/src/m3makefile, exceptions/src/Copy.m3, exceptions/src/Exceptions.m3, exceptions/src/FakeOS.i3, exceptions/src/FakeOS.m3, exceptions/src/index.html, exceptions/src/m3makefile, files/src/DirectoryListing.m3, files/src/index.html, files/src/m3makefile, finger/src/Finger.m3, finger/src/index.html, finger/src/m3makefile, fingerprint/src/M3Compare.m3, fingerprint/src/index.html, fingerprint/src/m3makefile, generics/src/Action.i3, generics/src/Action.m3, generics/src/Generics.m3, generics/src/index.html, generics/src/m3makefile, hello/src/Hello.m3, hello/src/index.html, hello/src/m3makefile, httpd/src/CM3_IDE.gif, httpd/src/HTTPD.m3, httpd/src/index.html, httpd/src/m3makefile, httpd/src/next.html, httpd/src/welcome.html, m3sh/src/M3sh.m3, m3sh/src/index.html, m3sh/src/m3makefile, netobj-client/src/Bank.i3, netobj-client/src/Client.m3, netobj-client/src/NetObjClient.m3, netobj-client/src/index.html, netobj-client/src/m3makefile, netobj-interface/src/Bank.i3, netobj-interface/src/index.html, netobj-interface/src/m3makefile, netobj-server/src/NetObjServer.m3, netobj-server/src/index.html, netobj-server/src/m3makefile, objects/src/Objects.m3, objects/src/index.html, opaque/src/OpaqueExample.m3, opaque/src/Person.i3, opaque/src/Person.m3, opaque/src/index.html, opaque/src/m3makefile, partially-opaque/src/Employee.i3, partially-opaque/src/Employee.m3, partially-opaque/src/PartiallyOpaque.m3, partially-opaque/src/Person.i3, partially-opaque/src/Person.m3, partially-opaque/src/Util.m3, partially-opaque/src/index.html, partially-opaque/src/m3makefile, pickles/src/Action.i3, pickles/src/Action.m3, pickles/src/PickleExample.m3, pickles/src/Pickles.m3, pickles/src/index.html, pickles/src/m3makefile, refman/src/index.html, refman/src/m3makefile, sieve-1/src/Sieve.m3, sieve-1/src/index.html, sieve-1/src/m3makefile, sieve-2/src/Sieve.m3, sieve-2/src/index.html, sieve-2/src/m3makefile, threads/src/ThreadExample.m3, threads/src/index.html, threads/src/m3makefile, unsafe/src/Clib.i3, unsafe/src/Unsafe.m3, unsafe/src/index.html, unsafe/src/m3makefile, web/src/MainWeb.m3, web/src/WebContact.m3, web/src/index.html, web/src/m3makefile, win32-dll/src/RTMain.i3, win32-dll/src/RTMain.m3, win32-dll/src/call_io.cpp, win32-dll/src/m3main.c, win32-dll/src/m3makefile, win32-dll/src/use_m3dll.mak: move examples from top-level to cm3ide 2009-08-15 10:11 wagner * m3-sys/cm3ide/PkgTags: add examples moved here from top-level added: cm3ide/src/examples/README added: cm3ide/src/examples/index.html added: cm3ide/src/examples/browsing/src/index.html added: cm3ide/src/examples/browsing/src/m3makefile added: cm3ide/src/examples/c-calling-m3/src/CcallsM3.m3 added: cm3ide/src/examples/c-calling-m3/src/Cstuff.c added: cm3ide/src/examples/c-calling-m3/src/Cstuff.i3 added: cm3ide/src/examples/c-calling-m3/src/index.html added: cm3ide/src/examples/c-calling-m3/src/m3makefile added: cm3ide/src/examples/calling-c-unix/src/CallingC.m3 added: cm3ide/src/examples/calling-c-unix/src/Lib.i3 added: cm3ide/src/examples/calling-c-unix/src/Lib.m3 added: cm3ide/src/examples/calling-c-unix/src/Ulib.i3 added: cm3ide/src/examples/calling-c-unix/src/index.html added: cm3ide/src/examples/calling-c-unix/src/m3makefile added: cm3ide/src/examples/calling-c-win32/src/OK.m3 added: cm3ide/src/examples/calling-c-win32/src/WinLib.m3 added: cm3ide/src/examples/calling-c-win32/src/index.html added: cm3ide/src/examples/calling-c-win32/src/m3makefile added: cm3ide/src/examples/copy/src/Copy.m3 added: cm3ide/src/examples/copy/src/FakeOS.i3 added: cm3ide/src/examples/copy/src/FakeOS.m3 added: cm3ide/src/examples/copy/src/index.html added: cm3ide/src/examples/copy/src/m3makefile added: cm3ide/src/examples/enum/src/ExtensionLookup.m3 added: cm3ide/src/examples/enum/src/index.html added: cm3ide/src/examples/enum/src/m3makefile added: cm3ide/src/examples/exceptions/src/Copy.m3 added: cm3ide/src/examples/exceptions/src/Exceptions.m3 added: cm3ide/src/examples/exceptions/src/FakeOS.i3 added: cm3ide/src/examples/exceptions/src/FakeOS.m3 added: cm3ide/src/examples/exceptions/src/index.html added: cm3ide/src/examples/exceptions/src/m3makefile added: cm3ide/src/examples/files/src/DirectoryListing.m3 added: cm3ide/src/examples/files/src/index.html added: cm3ide/src/examples/files/src/m3makefile added: cm3ide/src/examples/finger/src/Finger.m3 added: cm3ide/src/examples/finger/src/index.html added: cm3ide/src/examples/finger/src/m3makefile added: cm3ide/src/examples/fingerprint/src/M3Compare.m3 added: cm3ide/src/examples/fingerprint/src/index.html added: cm3ide/src/examples/fingerprint/src/m3makefile added: cm3ide/src/examples/generics/src/Action.i3 added: cm3ide/src/examples/generics/src/Action.m3 added: cm3ide/src/examples/generics/src/Generics.m3 added: cm3ide/src/examples/generics/src/index.html added: cm3ide/src/examples/generics/src/m3makefile added: cm3ide/src/examples/hello/src/Hello.m3 added: cm3ide/src/examples/hello/src/index.html added: cm3ide/src/examples/hello/src/m3makefile added: cm3ide/src/examples/httpd/src/CM3_IDE.gif added: cm3ide/src/examples/httpd/src/HTTPD.m3 added: cm3ide/src/examples/httpd/src/index.html added: cm3ide/src/examples/httpd/src/m3makefile added: cm3ide/src/examples/httpd/src/next.html added: cm3ide/src/examples/httpd/src/welcome.html added: cm3ide/src/examples/m3sh/src/M3sh.m3 added: cm3ide/src/examples/m3sh/src/index.html added: cm3ide/src/examples/m3sh/src/m3makefile added: cm3ide/src/examples/netobj-client/src/Bank.i3 added: cm3ide/src/examples/netobj-client/src/Client.m3 added: cm3ide/src/examples/netobj-client/src/NetObjClient.m3 added: cm3ide/src/examples/netobj-client/src/index.html added: cm3ide/src/examples/netobj-client/src/m3makefile added: cm3ide/src/examples/netobj-interface/src/Bank.i3 added: cm3ide/src/examples/netobj-interface/src/index.html added: cm3ide/src/examples/netobj-interface/src/m3makefile added: cm3ide/src/examples/netobj-server/src/NetObjServer.m3 added: cm3ide/src/examples/netobj-server/src/index.html added: cm3ide/src/examples/netobj-server/src/m3makefile added: cm3ide/src/examples/objects/src/Objects.m3 added: cm3ide/src/examples/objects/src/index.html added: cm3ide/src/examples/opaque/src/OpaqueExample.m3 added: cm3ide/src/examples/opaque/src/Person.i3 added: cm3ide/src/examples/opaque/src/Person.m3 added: cm3ide/src/examples/opaque/src/index.html added: cm3ide/src/examples/opaque/src/m3makefile added: cm3ide/src/examples/partially-opaque/src/Employee.i3 added: cm3ide/src/examples/partially-opaque/src/Employee.m3 added: cm3ide/src/examples/partially-opaque/src/PartiallyOpaque.m3 added: cm3ide/src/examples/partially-opaque/src/Person.i3 added: cm3ide/src/examples/partially-opaque/src/Person.m3 added: cm3ide/src/examples/partially-opaque/src/Util.m3 added: cm3ide/src/examples/partially-opaque/src/index.html added: cm3ide/src/examples/partially-opaque/src/m3makefile added: cm3ide/src/examples/pickles/src/Action.i3 added: cm3ide/src/examples/pickles/src/Action.m3 added: cm3ide/src/examples/pickles/src/PickleExample.m3 added: cm3ide/src/examples/pickles/src/Pickles.m3 added: cm3ide/src/examples/pickles/src/index.html added: cm3ide/src/examples/pickles/src/m3makefile added: cm3ide/src/examples/refman/src/index.html added: cm3ide/src/examples/refman/src/m3makefile added: cm3ide/src/examples/sieve-1/src/Sieve.m3 added: cm3ide/src/examples/sieve-1/src/index.html added: cm3ide/src/examples/sieve-1/src/m3makefile added: cm3ide/src/examples/sieve-2/src/Sieve.m3 added: cm3ide/src/examples/sieve-2/src/index.html added: cm3ide/src/examples/sieve-2/src/m3makefile added: cm3ide/src/examples/threads/src/ThreadExample.m3 added: cm3ide/src/examples/threads/src/index.html added: cm3ide/src/examples/threads/src/m3makefile added: cm3ide/src/examples/unsafe/src/Clib.i3 added: cm3ide/src/examples/unsafe/src/Unsafe.m3 added: cm3ide/src/examples/unsafe/src/index.html added: cm3ide/src/examples/unsafe/src/m3makefile added: cm3ide/src/examples/web/src/MainWeb.m3 added: cm3ide/src/examples/web/src/WebContact.m3 added: cm3ide/src/examples/web/src/index.html added: cm3ide/src/examples/web/src/m3makefile added: cm3ide/src/examples/win32-dll/src/RTMain.i3 added: cm3ide/src/examples/win32-dll/src/RTMain.m3 added: cm3ide/src/examples/win32-dll/src/call_io.cpp added: cm3ide/src/examples/win32-dll/src/m3main.c added: cm3ide/src/examples/win32-dll/src/m3makefile added: cm3ide/src/examples/win32-dll/src/use_m3dll.mak 2009-08-15 09:52 wagner * www/: about-cm3.html, nav-home.html, normal.css, start.html, top.html: some small improvements to structure and appearance 2009-08-14 23:13 jkrell * m3-sys/cminstall/src/config-no-install/NT386: fix simple typo 2009-08-14 20:53 wagner * scripts/make-dist.sh: include collection deps in HTML descriptions 2009-08-14 19:46 wagner * scripts/: all-deps, get-all-deps.sh, pkginfo.txt: Reduce the dependencies of the package collections to a reasonable number. Ignore min, and assume that core is installed. Add all current package dependencies in scripts/all-deps. Add all current collection dependencies in www/releng/collection-deps.txt. Add the script that has been used to compute and review this, though it will probably not be useful for anybody else. 2009-08-14 11:03 jkrell * m3-libs/m3core/src/unix/Common/: Uconstants.c, Unix.i3: copy additional constants from head to release 2009-08-13 17:48 wagner * scripts/pkginfo.txt: remove examples/istvan 2009-08-13 06:56 wagner * scripts/make-src-dist-all.sh: add missing example packages 2009-08-13 06:52 wagner * scripts/pkginfo.txt: add mtex to core; it's used in many other SRC packages for documentation 2009-08-13 06:41 wagner * scripts/pkginfo.txt: add missing example packages 2009-08-12 19:01 wagner * m3-sys/m3gdb/src/m3makefile: don't link files to be shipped; fix issue #1045 2009-08-11 13:29 jkrell * m3-libs/m3core/src/unix/Common/: Uconstants.c, Unix.i3, Unix.pl, Unix.txt: add back some constants, and prepare/consider adding back more add: TIOCCBRK TIOCCDTR TIOCEXCL TIOCFLUSH TIOCGETD TIOCGPGRP TIOCGWINSZ TIOCMBIC TIOCMBIS TIOCMGET TIOCMODG TIOCMODS TIOCMSET TIOCM_CAR TIOCM_CD TIOCM_CTS TIOCM_DSR TIOCM_DTR TIOCM_LE TIOCM_RI TIOCM_RNG TIOCM_RTS TIOCM_SR TIOCM_ST TIOCNOTTY TIOCNXCL TIOCOUTQ TIOCPKT TIOCPKT_DATA TIOCPKT_DOSTOP TIOCPKT_FLUSHREAD TIOCPKT_FLUSHWRITE TIOCPKT_IOCTL TIOCPKT_NOSTOP TIOCPKT_START TIOCPKT_STOP TIOCREMOTE TIOCSBRK TIOCSDTR TIOCSETD TIOCSPGRP TIOCSTART TIOCSTI TIOCSTOP TIOCSWINSZ TIOCUCNTL which is derived from looking for "=" in */Unix.i3, sort, uniq, and then at least for now limiting to names starting wit TIO (terminal i/o?) at behest of Dragiša D The thing is, we can do this stuff fairly portably now, so being minimal is less motivated -- doing things 1xN instead of MxN isn't so bad. Constants are easy. Structs are a bigger problem. 2009-08-11 13:29 jkrell * m3-libs/m3core/src/unix/Common/Unix.pl: file Unix.pl was added on branch release_branch_cm3_5_8 on 2009-09-13 06:09:46 +0000 2009-08-11 13:29 jkrell * m3-libs/m3core/src/unix/Common/Unix.txt: file Unix.txt was added on branch release_branch_cm3_5_8 on 2009-09-13 06:09:47 +0000 2009-08-11 05:14 jkrell * m3-sys/m3cc/src/platforms.quake: sort it again (perhaps with a different algorithm due to different OS, but churn is small) 2009-08-11 05:10 jkrell * m3-sys/m3cc/src/platforms.quake: add new names: I386_FREEBSD, I386_LINUX, I386_NETBSD, SPARC_SOLARIS, SPARC32_SOLARIS 2009-08-11 05:06 jkrell * m3-sys/m3cc/src/platforms.quake: remove old (and SPARC32_OPENBSD which isn't likely to ever exist, OPENBSD isn't biarch, SPARC64_OPENBSD is the only likely one) 2009-08-11 05:04 jkrell * m3-sys/m3cc/src/platforms.quake-old: save away old 2009-08-10 20:56 wagner * scripts/make-dist.sh: fix issue #1051 2009-08-10 19:02 wagner * scripts/: make-dist.sh, version: o add check for /home /var /tmp in .M3SHIP files o increase version to pre-RC3 o add OMIT_UPDATE switch for tests o use release branch if DS is no RC 2009-08-10 18:34 jkrell * scripts/: sysinfo.sh, regression/defs.sh: if CM3_TARGET is already defined, keep it, at least for I386_DARWIN, AMD64_DARWIN (in future for cross builds this should extend to all, as the Python already does) 2009-08-10 17:55 wagner * www/known-problems.html: fix title 2009-08-10 01:52 rodney * doc/reference/complete/m3-defn-complete.tex: Add description of WIDECHAR. Still to be done: Figure out how to regenerate m3-defn-complete.ps, m3-defn-complete.html, and all the small html pages of the language definition, from m3-defn-complete.tex. 2009-08-09 22:57 jkrell * caltech-parser/cit_util/src/m3makefile: remove bunch of whitespace from end 2009-08-09 19:56 rodney * doc/reference/complete/m3-defn-complete.tex: Slight clarification on extended signatures for defining operators and builtin functions. 2009-08-09 19:51 rodney * doc/reference/complete/m3-defn-complete.tex: Clarify case insensitivity in numeric literals, generalize to cover the new "L" in LONGINT literals. 2009-08-09 19:46 rodney * doc/reference/complete/m3-defn-complete.tex: 1) Fix a typo. 2) Change a dated 16-bit example to a 32-bit equivalent. 2009-08-09 14:13 jkrell * scripts/regression/defs.sh: try allow for spaces in $PATH for NT386, where this code is wrecking it; delete the many unused path functions 2009-08-09 07:10 jkrell * scripts/: sysinfo.sh, regression/defs.sh: move out common code: CM3_OSTYPE=POSIX 2009-08-08 21:36 jkrell * m3-sys/cm3/src/M3Build.m3: merge from HEAD -- handle BIN_INSTALL and worst case fallback INSTALL_ROOT (which really works fine and should suffice overall) 2009-08-08 21:24 jkrell * m3-sys/cm3/src/M3Build.m3: in -no-m3ship-resolution, handle BIN_INSTALL and worst case, INSTALL_ROOT 2009-08-08 21:04 jkrell * scripts/regression/defs.sh: AMD64_DARWIN support 2009-08-08 21:00 jkrell * scripts/sysinfo.sh: support for AMD64_DARWIN 2009-08-08 19:32 jkrell * scripts/make-bin-dist-min.sh: make m3cc first 2009-08-08 19:06 jkrell * scripts/python/pylib.py: Solaris tweaks 2009-08-08 18:51 jkrell * scripts/python/pylib.py: likely correct computation of as --32 or --64 for BSD and Linux platforms, not tested until/unless build more bootstrap archives (assembly for cm3 plus a few .c files) 2009-08-08 18:45 jkrell * scripts/python/pylib.py: fix previous 2009-08-08 18:44 jkrell * scripts/python/pylib.py: switch all Solaris platforms to /usr/ccs/bin/as; remove a few tabs 2009-08-08 18:37 jkrell * scripts/python/pylib.py: bootstrap support for AMD64_DARWIN (-arch x86_64 on assemble/compile/link); comment Interix gcc bug 2009-08-08 17:46 jkrell * scripts/make-bin-dist-min.sh: remove support for old config files 2009-08-08 17:42 jkrell * m3-sys/cminstall/src/config/: AMD64_DARWIN, FreeBSD4, I386_DARWIN, LINUXLIBC6, NT386, NT386GNU, NT386MINGNU, NetBSD2_i386, PPC_DARWIN, PPC_LINUX, SOLgnu, SOLsun: tombstones (or should we move everything back here?) 2009-08-08 17:36 jkrell * m3-sys/cm3/src/config/: FreeBSD4, I386_DARWIN, LINUXLIBC6, NT386.main, PPC_DARWIN, SOLgnu: tombstones 2009-08-08 17:23 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: merger from release_branch_cm3_5_8 to HEAD (cl/cl.exe/link/link.exe) 2009-08-08 17:21 jkrell * scripts/make-dist.sh: but don't call this branch RC2 2009-08-08 17:19 jkrell * scripts/make-dist.sh: merge changes from release branch to HEAD 2009-08-08 16:51 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: use cl.exe and link.exe instead of cl and link - maybe Interix is picky? - it reduces some file system probes - but it also removes the flexibility of inserting cl.com, cl.cmd, cl.bat, which nobody is likely using 2009-08-08 05:46 jkrell * m3-sys/cminstall/src/config-no-install/: OpenBSD.common, Solaris.common, Unix.common: merge from head changes for SOLgnu and OpenBSD 2009-08-08 05:40 jkrell * m3-sys/m3cc/src/m3makefile: better automatic configuration for SOLgnu/SOLsun even in the face of a cut down /usr/bin 2009-08-05 18:30 wagner * www/: download.html, nav-inst.html, nav-rsrc.html, nav-stat.html, news.html, start.html, top.html: changes/updates for RC2 and release engineering announcement 2009-08-05 17:11 wagner * scripts/make-dist.sh: fix issue #1047: make-dist.sh does not bail out on all errors 2009-08-04 22:47 wagner * scripts/pkgmap.sh: remove obsolete } 2009-08-04 22:40 wagner * scripts/pkgmap.sh: leave out the stdout test output for the time being 2009-08-03 22:12 jkrell * m3-sys/cminstall/src/config-no-install/NT386: work in progress to automatically find cl.exe, link.exe, windows.h, msvcrt.lib, kernel32.lib, if they aren't already in PATH, INCLUDE, LIB, we can search e.g. VS90COMNTOOLS or VSINSTALLDIR which are always set by the installer This really is a work in progress and doesn't yet have any side affects. It is based closely on the code from scripts/python/pylib.py. 2009-08-03 22:10 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: hack: use asssemble on SOLgnu/RTMachineASM.s so that gcc -g can work for C code 2009-08-03 22:08 jkrell * m3-sys/m3quake/src/MxConfig.m3: merge from HEAD so that running cm3ide with a current working directory of c:\cm3\bin uses '.' instead of '' as the path to cm3.cfg (which is of course still not great -- if you change the current working directory afterward it becomes wrong, converting to a full path would be good) 2009-08-03 21:49 jkrell * m3-sys/m3cc/src/m3makefile: make SOLgnu more automatically configured, even in a minimal environment where .profile doesn't add anything to $PATH be sure to use: /usr/sfw/bin/gmake / usr/ccs/bin/ar /u sr/bin/cc (-O instead of -O2, -O2 isn't legal, not clear if it was a warning or error) 2009-08-03 10:03 jkrell * m3-libs/m3core/src/float/m3makefile: add missing comma 2009-08-03 10:01 jkrell * m3-libs/m3core/src/Csupport/m3makefile: sort the target list (to go away once new release is the start) 2009-08-03 09:59 jkrell * m3-libs/m3core/src/Csupport/m3makefile: remove old targets 2009-08-03 09:59 jkrell * m3-libs/m3core/src/Csupport/m3makefile-old: old targets 2009-08-03 09:57 jkrell * m3-libs/m3core/src/float/m3makefile: add new target -- not sure how they will be bootstrapped yet 2009-08-03 09:57 jkrell * m3-libs/m3core/src/float/m3makefile: add the new targets -- not sure how they will be bootstrapped yet 2009-08-03 09:55 jkrell * m3-libs/m3core/src/float/m3makefile: sort the list of targets; this list will go away once the current release is the baseline (just switch on big/little endian, defined in the config files) 2009-08-03 09:54 jkrell * m3-libs/m3core/src/float/m3makefile: remove old targets 2009-08-03 09:54 jkrell * m3-libs/m3core/src/float/m3makefile-old: old targets 2009-08-03 09:52 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile: sort the 4 lists; 2 lists will go away once the current release is the baseline 2009-08-03 09:48 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile: fix indentation 2009-08-03 09:46 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile: remove old targets 2009-08-03 09:44 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile-old: old target support 2009-08-03 09:42 jkrell * m3-libs/m3core/src/unix/m3makefile: add I386_CYGWIN (others like I386_FREEBSD, I386_LINUX were already present) 2009-08-03 09:41 jkrell * m3-libs/m3core/src/unix/m3makefile: sort the list of targets 2009-08-03 09:40 jkrell * m3-libs/m3core/src/unix/m3makefile: remove old targets 2009-08-03 09:38 jkrell * m3-libs/m3core/src/unix/m3makefile-old: old target support 2009-08-03 09:31 jkrell * m3-sys/m3quake/src/MxConfig.m3: use "." instead of empty string for path() when current working directory is the actual directory of cm3; not sure what good running cm3 here is, and we probe way too many places.. 2009-08-03 08:44 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: change -g to -gstabs+ to fix the unaligned relocation problem when gcc is used as the assembler 2009-08-03 07:59 jkrell * scripts/: make-bin-dist-min.sh, upgrade.sh: go back to using explicit target instead of symbolic host for the sake of the other m3quake users such as cm3ide 2009-08-03 03:29 rcoleburn * scripts/win/: RCC_upgradeCM3.cmd, do-cm3.cmd: v1.08, 08/02/2009, R.Coleburn, rename CM3_Pkg to CM3_Package to prevent overloaded use of CM3_Pkg with cm3SetupCmdEnv.cmd 2009-08-03 02:55 rcoleburn * scripts/win/RCC_upgradeCM3.cmd: use "front" instead of "min" 2009-08-03 01:57 jkrell * m3-libs/m3core/src/runtime/: SOLsun/RTMachineASM.s, SOLgnu/RTMachineASM.s: align 4 is the right value here I think; the problem is fixed if we compile this file, I think it was, with Sun as 2009-08-02 23:12 jkrell * m3-sys/m3cc/gcc/gcc/tree.c: fix for compiling with Sun cc, code taken from gcc trunk 2009-08-02 22:40 jkrell * m3-sys/m3cc/gcc/gcc/tree-ssa-loop-ivopts.c: fix for compiling with Sun cc (also fixed in gcc trunk) 2009-08-02 18:23 jkrell * m3-sys/m3cc/gcc/gcc/fixed-value.c: fix for compiling with Sun cc; gcc trunk also fixes this for Sun cc but differently and with additional nearby churn 2009-08-02 18:05 jkrell * m3-sys/m3middle/src/Target.m3: fix PA32_HPUX jmpbuf alignment (8 bytes not 8 bits) 2009-08-02 18:02 jkrell * m3-sys/m3middle/src/: Target.m3, Target.i3: remove old targets 2009-08-02 17:56 jkrell * m3-sys/m3middle/src/: Target.i3-old, Target.m3-old: put dormant targets out of the way 2009-08-02 17:53 jkrell * m3-sys/m3middle/src/Target.i3: sort the two lists of targets 2009-08-02 17:50 jkrell * m3-sys/m3middle/src/Target.i3: add newlines in preparation for sorting (and commenting out of dormant targets) 2009-08-02 17:48 jkrell * m3-sys/m3middle/src/Target.i3: remove numbers in comments in preparation for sorting (and commenting out of dormant platforms) 2009-08-02 17:47 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: begin fixing target names, introduce: I386_NT, I386_CYGWIN, I386_MINGW, I386_LINUX, I386_FREEBSD, I386_NETBSD, I386_SOLARIS, AMD64_SOLARIS, Undefined leaving SOLgnu/SOLsun as the only active odd one obviously it should be SPARC_SOLARIS or SPARC32_SOLARIS, but how to capture the Sun cc vs. GNU gcc varable? Conceptually: NT386 => I386_NT, I386_CYGWIN, I386_MINGW LINUXLIBC6 => I386_LINUX FreeBSD4 => I386_FREEBSD NetBSD2_i386 => I386_NETBSD Though probably we'll just leave all the targets for now. We /might/ introduce a correspondence so that the old source directories and old config files can remain. Or we might just have new targets and stop building the old ones. One thing to watch out for is how much duplicity this causes in the tree, like whereever there is include(TARGET), we'd have to double up the code for now, and maybe later delete the old one. 2009-08-02 14:30 wagner * scripts/pkgmap.sh: filter out all characters in the range from 1 to 8 in XML reports 2009-08-02 14:24 jkrell * scripts/make-dist.sh: add set -x near the end and remove the lone tab 2009-08-02 13:31 jkrell * scripts/make-dist.sh: more support for CM3CVSUSER (so that I can upload packages while logged in as jay) 2009-08-02 13:27 jkrell * scripts/: make-src-dist-all.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, pkgmap.sh: more support for CM3CVSUSER 2009-08-02 12:18 wagner * scripts/pkgmap.sh: use ISO charset for XML reports 2009-08-02 12:17 jkrell * scripts/: find-packages.sh, find-src-dirs.sh, list-pkg-dirs.sh, make-dist.sh, make-doc-dist.sh, make-script-dist.sh, make-src-dist-all.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, make-src-update.sh, sysinfo.sh, regression/defs.sh: use Posix /usr/bin/find, even when c:\windows\system32\find.exe comes ahead of it 2009-08-02 11:28 hudson * m3-sys/m3cc/src/m3makefile: There is a discrepancy between that I have been using: bash-3.00$ /usr/local/bin/gcc -v Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/specs Configured with: ../configure --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/l d --enable-shared --enable-languages=c,c++,f77 Thread model: posix gcc version 3.4.6 and we are now trying to use: bash-3.00$ /usr/sfw/bin/gcc -v Reading specs from /usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/specs Configured with: /gates/sfw10/builds/sfw10-gate/usr/src/cmd/gcc/gcc-3.4.3/config ure --prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as --with-ld=/usr/cc s/bin/ld --without-gnu-ld --enable-languages=c,c++ --enable-shared Thread model: posix gcc version 3.4.3 (csl-sol210-3_4-branch+sol_rpath) Using my gcc as the linker addresses the alignment problem in RTMachineASM.s. With this in mind, try an experiment: configure SOLgnu and SOLsun cm3cg with -with-as=/usr/ccs/bin/as -without-gnu-as -with-ld=/usr/ccs/bin/ld -without-gnu-ld The assembler being the real difference. Not that this determines which assembler is actually run, since we don't use the gcc driver to call the assembler, but gcc often tailors its assembly output based on what assembler you tell it you are going to run. It seems often GNU as is more lenient than vendor as. Look at SPARC64_SOLARIS for an example -- the GNU as targeted assembly omits content that the Sun as always requires and that I think GNU as accepts with the same meaning. 2009-08-02 10:18 jkrell * m3-libs/m3core/src/runtime/: SOLsun/RTMachineASM.s, SOLgnu/RTMachineASM.s: merge from release 2009-08-02 09:49 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTMachineASM.s, SOLsun/RTMachineASM.s: more attempt to resembled the output of gcc/cc to fix error saying that a relocation is not aligned 2009-08-02 09:03 jkrell * m3-libs/m3core/src/runtime/: SOLgnu/RTMachineASM.s, SOLsun/RTMachineASM.s: throw in .align 4 to resemble gcc output as a guess to address: === package m3-libs/m3core === +++ cm3 -build -DROOT='/home/hudson/workspace/cm3-release-build-SOLgnu/cm3' -DCM3_VERSION_TEXT='d5.8.2' -DCM3_VERSION_NUMBER='050802' -DCM3_LAST_CHANGED='2009-07-15' $RARGS && cm3 -ship $RARGS -DROOT='/home/hudson/workspace/cm3-release-build-SOLgnu/cm3' -DCM3_VERSION_TEXT='d5.8.2' -DCM3_VERSION_NUMBER='050802' -DCM3_LAST_CHANGED='2009-07-15' +++ ld: fatal: relocation error: R_SPARC_32: file RTMachineASM.o: symbol : offset 0xfd951c16 is non-aligned ld: fatal: relocation error: R_SPARC_32: file RTMachineASM.o: symbol : offset 0xfd951c1a is non-aligned ld: fatal: relocation error: R_SPARC_32: file RTMachineASM.o: symbol : offset 0xfd951c1e is non-aligned ld: fatal: relocation error: R_SPARC_32: file RTMachineASM.o: symbol : offset 0xfd95d35f is non-aligned ld: fatal: relocation error: R_SPARC_32: file RTMachineASM.o: symbol : offset 0xfd966a6e is non-aligned collect2: ld returned 1 exit status make_lib => 1 without looking into why it was otherwise working. 2009-08-02 07:57 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: consider maybe full paths to gcc, ar, as; I'm on the fence here 2009-08-01 19:54 wagner * scripts/sysinfo.sh: use gnu tar on OpenBSD if possible 2009-08-01 11:43 wagner * scripts/make-dist.sh: remove junk 2009-07-31 21:57 wagner * scripts/make-dist.sh: force update to RC2 before build 2009-07-31 16:06 wagner * scripts/pkgmap.sh: replace BS characters in XML, too 2009-07-31 06:16 wagner * scripts/: pkginfo.txt, win/do-cm3.cmd: merge changes from Randy 2009-07-30 10:17 jkrell * m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3: remove my guess 2009-07-29 23:44 wagner * scripts/make-dist.sh: remove broken sed (broken sind $() removal) and call install script setup.cmd on windows 2009-07-29 23:39 rcoleburn * scripts/win/do-cm3.cmd: v1.07, 07/29/2009, R.Coleburn, repair bug introduced with prior round of edits; sorry about that. 2009-07-29 19:53 jkrell * scripts/: make-bin-dist-min.sh, make-dist.sh: instrumentation -- which sed? 2009-07-29 19:30 jkrell * m3-libs/binIO/test/src/Test.m3: fix whitespace 2009-07-29 19:30 jkrell * m3-libs/binIO/test/src/Test.m3: fix warnings 2009-07-29 19:25 jkrell * m3-libs/binIO/test/src/m3overrides: add missing override 2009-07-29 19:11 jkrell * m3-sys/m3cc/src/m3makefile: merge from HEAD -- remove platform filtering 2009-07-29 19:10 jkrell * m3-sys/m3cc/src/m3makefile: nevermind, just remove platform filtering 2009-07-29 19:07 jkrell * m3-sys/m3cc/src/m3makefile: adjust platform filtering so as not to break everything 2009-07-29 17:56 jkrell * caltech-parser/cit_common/src/m3makefile: merge from HEAD, fix warnings, cleanup 2009-07-29 17:55 jkrell * caltech-parser/cit_common/src/m3makefile: further cleanup 2009-07-29 17:54 jkrell * caltech-parser/cit_common/src/m3makefile: quash long standing warnings that Randy mentioned 2009-07-29 17:51 jkrell * m3-sys/m3cc/src/m3makefile: filter out package for Randy (merge from head) 2009-07-29 17:50 jkrell * m3-sys/m3cc/src/m3makefile: filter out package for Randy 2009-07-29 17:45 jkrell * m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3: and then do remove the whitespace from end of line 2009-07-29 17:45 jkrell * m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3: merge from head, but with out removing the whitespace at end of line 2009-07-29 17:41 jkrell * m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3: use UNUSED instead of broader NOWARN; add BITS FOR, does that suffice and don't need the other check? 2009-07-29 17:38 jkrell * m3-libs/libm3/src/pickle/ver2/ConvertPacking.m3: quash long standing warning that Randy mentioned 2009-07-29 17:30 jkrell * m3-libs/sysutils/src/System.i3: merge from HEAD 2009-07-29 17:28 jkrell * m3-libs/sysutils/src/System.i3: sleazy fix for NT386 problem reported by Randy duplicate pid_t here instead of getting from Utypes since NT386 doesn't have Utypes (also consider giving it a minimal Utypes, but, while it'd be reasonable to populate that with uint32_t etc., putting pid_t in might be less good, though it could be used along with GetCurrentProcessId() and _getpid(), but not so much with waitpid)) 2009-07-29 17:22 jkrell * m3-sys/cm3/test/src/m3overrides: new file from HEAD 2009-07-29 17:19 jkrell * m3-sys/cm3/test/src/m3overrides: add missing m3overrides that test run showed orange for 2009-07-29 17:19 jkrell * m3-sys/cm3/test/src/m3overrides: file m3overrides was added on branch release_branch_cm3_5_8 on 2009-07-29 17:22:01 +0000 2009-07-29 17:12 jkrell * m3-sys/: m3cc/src/m3makefile, m3gdb/src/m3makefile: merge HEAD to release_branch_cm3_5_8 (use platforms.quake) 2009-07-29 17:11 jkrell * m3-sys/: m3cc/src/platforms.quake, m3gdb/src/platforms.quake: new files from HEAD 2009-07-29 17:05 jkrell * m3-sys/m3gdb/src/platforms.quake: file platforms.quake was added on branch release_branch_cm3_5_8 on 2009-07-29 17:11:09 +0000 2009-07-29 17:05 jkrell * m3-sys/m3cc/src/platforms.quake: file platforms.quake was added on branch release_branch_cm3_5_8 on 2009-07-29 17:11:08 +0000 2009-07-29 17:05 jkrell * m3-sys/: m3cc/src/platforms.quake, m3gdb/src/platforms.quake: puny amount of unification in lesser platforms (SPARC*_LINUX remove -gnu, FBSD_ALPHA add major version it is generally required for FreeBSD) 2009-07-29 17:00 jkrell * m3-sys/: m3cc/src/platforms.quake, m3gdb/src/platforms.quake: comment out older/dormant platforms not aggressively -- anything with a hope of coming back or for the first time, left alone a very small amount of unification, only on inactive platforms (either dead or not yet born) 2009-07-29 16:49 jkrell * m3-sys/m3gdb/src/platforms.quake: remove duplicate ARM_DARWIN 2009-07-29 16:33 jkrell * m3-sys/m3cc/src/m3makefile: use platforms.quake 2009-07-29 16:30 jkrell * m3-sys/m3gdb/src/platforms.quake: add missing comma 2009-07-29 16:28 jkrell * m3-sys/m3gdb/src/m3makefile: include(platforms.quake) 2009-07-29 16:27 jkrell * m3-sys/: m3gdb/src/platforms.quake, m3cc/src/platforms.quake: sort it 2009-07-29 16:26 jkrell * m3-sys/: m3gdb/src/platforms.quake, m3cc/src/platforms.quake: trim it down 2009-07-29 16:25 jkrell * m3-sys/: m3gdb/src/platforms.quake, m3cc/src/platforms.quake: initial copy from m3makefile 2009-07-29 16:24 jkrell * m3-sys/m3gdb/src/m3makefile: bring over platforms from m3cc: "/home/hudson/workspace/cm3-test-all-pkgs-I386_OPENBSD/cm3/m3-sys/m3gdb/src/m3makefile", line 64: quake runtime error: GNU platform is not known for "I386_OPENBSD" 2009-07-29 11:00 jkrell * m3-libs/libm3/tests/random/src/m3makefile: disable test that hangs on OpenBSD/x86 pending further investigation.. 2009-07-29 09:47 rcoleburn * scripts/win/RCC_upgradeCM3.cmd: Put this in the repository so I don't lose it. This may not helpful to anyone else but me. It is my attempt to replicate on Windows 2000/XP the functionality of the "upgrade.sh" script whilest dealing with the config stuff according to the recipe given to me by Jay Krell. This script makes use of my "do-cm3.cmd" script. After fixing up the config and copying some of my scripts to cm3\bin, the effective result is that "do-cm3.cmd min realclean clean buildship nopause" is called twice to rebuild the minimal compiler installation. --Randy Coleburn 2009-07-29 09:43 jkrell * scripts/: make-bin-dist-min.sh, upgrade.sh: merge changes from head: more CM3CVSUSER support cm3.cfg always: INSTALL_ROOT = path() & "/.." include(path() & "/config/" & HOST) 2009-07-29 09:40 jkrell * m3-libs/sysutils/src/POSIX/SystemPosixC.c: and the added file 2009-07-29 09:39 rcoleburn * scripts/win/do-cm3.cmd: v1.06, 07/29/2009, R.Coleburn, optimizations 2009-07-29 09:34 jkrell * m3-libs/sysutils/src/: System.i3, POSIX/SystemPosix.m3, POSIX/m3makefile: bring changes to branch release_branch_cm3_5_8 that make sysutils not dependent on m3core/Uexec/waitpid 2009-07-29 09:33 jkrell * m3-libs/sysutils/src/POSIX/SystemPosix.m3: actually use the sysutils version 2009-07-29 09:13 jkrell * m3-libs/sysutils/src/: System.i3, POSIX/SystemPosixC.c, POSIX/m3makefile: Remove dependency on m3core waitpid so that I386_OPENBSD might be able to build from "last release", defined here to be whatever snapshot there was, like 5.7.0. 2009-07-29 09:13 jkrell * m3-libs/sysutils/src/POSIX/SystemPosixC.c: file SystemPosixC.c was added on branch release_branch_cm3_5_8 on 2009-07-29 09:40:19 +0000 2009-07-29 09:03 rcoleburn * scripts/win/do-cm3.cmd: v1.05, 07/29/2009, R.Coleburn, minor fixups 2009-07-29 09:02 jkrell * scripts/: make-bin-dist-min.sh, upgrade.sh: always use cm3.cfg: INSTALL_ROOT = path() & "/.." include(path() & "/config/" & HOST) 2009-07-29 06:33 rcoleburn * scripts/win/do-cm3.cmd: v1.04, 07/29/2009, R.Coleburn, fix minor problems and force missing packages to show up in the error log when noPause option specified 2009-07-29 06:30 rcoleburn * scripts/pkginfo.txt: repair path for pkl-fonts to be "juno-2/juno-app/pkl-fonts" --R.Coleburn 2009-07-29 05:43 rcoleburn * scripts/win/do-cm3.cmd: v1.03, 07/28/2009, R.Coleburn, add showTags and verbose options 2009-07-28 18:49 wagner * m3-libs/m3core/src/unix/: m3makefile, Common/Uconstants.c: Merge from main trunk: o fix for setup context for OpenBSD o some support for new target platforms I386_SOLARIS and AMD64_SOLARIS 2009-07-28 13:14 jkrell * scripts/: sysinfo.sh, regression/defs.sh: I386_OPENBSD support from trunk/mainline 2009-07-28 12:40 jkrell * scripts/regression/hudson-java-stub: no longer a work in progress and remove debug output 2009-07-28 10:31 jkrell * m3-libs/m3core/src/unix/m3makefile: add I386_SOLARIS and AMD64_SOLARIS 2009-07-28 10:19 jkrell * scripts/regression/hudson-java-stub: work in progress to get Hudson slave working on OpenBSD/x86 4.5. Hudson doesn't like the output of java -version from the JDK OpenBSD package. Put this file at /usr/local/bin/java or such. +1 for Python 2009-07-28 09:27 jkrell * scripts/python/: do-cm3-caltech-parser.py, pylib.py: adjust package lists slightly 2009-07-28 09:18 jkrell * scripts/python/pylib.py: add more caltech-parser packages 2009-07-27 20:23 wagner * scripts/win/do-cm3.cmd, examples/web/src/WebContact.m3, examples/web/src/m3makefile: merge fixes from Randy to the release branch 2009-07-27 20:20 wagner * scripts/pkgmap.sh: only buffer compiler output in case of possible retries 2009-07-27 20:04 wagner * scripts/pkgmap.sh: only buffer compiler output in case of possible retries 2009-07-27 16:15 jkrell * m3-libs/libm3/tests/random/src/m3makefile: This test also hangs on I386_OPENBSD. 2009-07-27 15:50 jkrell * scripts/: make-bin-dist-min.sh, make-dist.sh, make-src-dist-all.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, pkgmap.sh: more support for CM3CVSUSER, granted it isn't all CVS related http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1248708410.24769#err47 HTML package report in /var/tmp/cm3-pkg-report-SPARC32_LINUX-2009-07-27-14-57-10.html 33381 XML package status report in /var/tmp/cm3-pkg-report-SPARC32_LINUX-2009-07-27-14-57-10.xml 33382 XML package test report in /var/tmp/cm3-pkg-test-report-SPARC32_LINUX-2009-07-27-14-57-10.xml 33383 Permission denied, please try again. 33384 Permission denied, please try again. 33385 Permission denied (publickey,password). 33386 lost connection 2009-07-27 15:38 jkrell * scripts/regression/README.jay: also need flex and possibly bison, to build m3pp, which aren't in the default Debian minimal install (error in SPARC32_LINUX Tinderbox and maybe others) 2009-07-27 15:28 jkrell * scripts/regression/defs.sh: ---------------------------------------------------------------------- change "return rc" to "return $rc" 2009-07-27 15:12 jkrell * m3-sys/m3gdb/src/m3makefile: missed comment on previous: fix oops: "/home/jay/work/cm3-ws/localhost-2009-07/cm3/m3-sys/m3gdb/LINUXLIBC6/m3make.args", line 6: quake runtime error: /home/jay/work/cm3-ws/localhost-2009-07/cm3/m3-sys/m3gdb/src/m3makefile, line 59: syntax error: missing: } (found: ) from: http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1248706825.17343 2009-07-27 15:11 jkrell * m3-sys/m3gdb/src/m3makefile: m3makefile 2009-07-27 14:51 jkrell * m3-sys/m3tests/src/m3makefile: This test hangs on OpenBSD/x86 and Cygwin/x86. Skip it pending further investigation. p_test ("p0", "p007", "a whole bunch of threads - does the memory grow ?") 2009-07-27 12:15 jkrell * scripts/regression/README.jay: some notes about getting Tinderbox working from my past few days, just from memory here, not tested from scratch 2009-07-27 10:57 jkrell * scripts/regression/cm3.build: checkout more verbosely 2009-07-27 10:56 jkrell * scripts/regression/defs.sh: fix CVS return value, again seems I can't fix it because the script gets the current version from CVS and runs that 2009-07-27 07:29 jkrell * m3-sys/m3tests/src/TestC.c: I386_DARWIN uses sigjmp_buf too, fix error in Tony's I386_DARWIN Tinderbox 2009-07-27 06:46 jkrell * scripts/regression/user-defs.sh-example: put hostname back in monthly workspace 2009-07-27 06:43 wagner * scripts/: pkgmap.sh, regression/defs.sh: merge fixes from the release branch 2009-07-27 06:42 jkrell * scripts/ssh-all.cmd-example: another example 2009-07-27 06:41 wagner * scripts/regression/defs.sh: fix cvs exit code evaluation fix copying of last-ok again 2009-07-27 06:36 jkrell * scripts/regression/scp-all.sh-example: example how to copy files around 2009-07-27 06:22 jkrell * scripts/regression/user-defs.sh-example: since checkout very unreliable, let's try just doing it once a month, and edit out the cleanup in defs.sh like Olaf said 2009-07-27 06:19 wagner * scripts/pkgmap.sh: Finally solved a long-known problem of pkg reports: it seems that the Solaris shell doesn't like output redirections for whole if statements. I think this shell must be bug-compatible to one from around 1980 :-/ We should really use ksh on Solaris. But that would require more complex setup for all scripts. Jay will say +1 for Python ;-) 2009-07-27 06:04 rcoleburn * scripts/win/do-cm3.cmd: v1.02, 07/27/2009, R.Coleburn, add noPause option; optimize a bit, including removing FN_Normalize_CM3_Pkg in favor of optimization suggested by Jay Krell 2009-07-27 05:36 jkrell * scripts/regression/loop.py: try looping, very common error is incomplete checkout 2009-07-27 04:55 jkrell * scripts/regression/defs.sh: more informative, seems like it exited around here 2009-07-27 04:48 jkrell * scripts/regression/: defs.sh: more informative, seems like it exited around here 2009-07-27 04:29 jkrell * m3-sys/m3tests/src/TestC.c: sigjmp_buf on PPC_DARWIN to fix test error; expect this to cover more platforms soon 2009-07-27 04:23 jkrell * m3-sys/m3tests/src/Test.common: add build_standlone, needed at least esp. on Darwin because the origin stuff is different and running tests individually doesn't work, even if within Tinderbox they did 2009-07-27 02:21 rcoleburn * examples/web/src/m3makefile: Remove the filter Jay added. This package should build on all platforms now that I've fixed the main module. Seems some of the underlying interfaces changed and that caused compilation errors. I've tested on Windows XP and it works.--R.Coleburn 2009-07-27 02:10 rcoleburn * examples/web/src/WebContact.m3: Fix this example so that it builds. I've tested it on Windows XP and it runs. Pretty simple application.--R.Coleburn 2009-07-26 19:53 jkrell * m3-libs/m3core/src/unix/Common/Uconstants.c: fix OpenBSD, probably only non-x86 (until we implement setcontext/getcontext/makecontext/swapcontext for other processors) 2009-07-26 19:17 jkrell * www/uploaded-archives/targets.txt: add AMD64_NETBSD, AMD64_OPENBSD 2009-07-26 18:37 jkrell * scripts/: sysinfo.sh, regression/defs.sh: add support for I386_OPENBSD This can't be tested before commit because the script fetches the current version of itself from cvs and runs that, at least for some purposes (this makes me wonder about local edits, but that's probably cm3.build and user-defs.sh, not tinderbox-build.sh?) 2009-07-26 17:54 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: making link warnings fatal is not viable on OpenBSD e.g. warnings about wcscpy, strcpy, strcat, sprintf, in libXaw when linking formsview 2009-07-26 17:23 jkrell * scripts/regression/defs.sh: limit the perhaps non portable sh to birch? (try to address the Tinderbox error on Solaris) 2009-07-26 17:12 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: correct postgres paths for OpenBSD 2009-07-26 16:22 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: update OpenBSD to use $ORIGIN and other command link flags (almost identical code being copied around here, alas) 2009-07-26 16:17 jkrell * m3-sys/cminstall/src/config-no-install/OpenBSD.common: I can only find libiodbc not libodbc on OpenBSD, and it seems to work -- using a port/package, which installs by default to /usr/local/lib 2009-07-26 15:06 jkrell * scripts/regression/defs.sh: try to fix this error: regression-scripts/defs.sh: line 768: [: too many arguments seen in http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1248455984.10575 and others 2009-07-26 14:52 jkrell * scripts/regression/: tinderbox-build.sh, user-defs.sh-example: allow for a file that is completely user editable tinderbox-build.sh will run user-defs.sh if it exists (none will be checked in under that name) this way I don't keep adding to my .profile or .bashrc and worry about anything else on the system using these names in random environment variable checks 2009-07-26 14:47 jkrell * scripts/regression/defs.sh: support CM3CVSUSER in another place -- I caught a tinderbox run hung in scp without a leading jkrell@ and my local user is jay which doesn't agree with my account on birch, this could be the problem with my test runs maybe (but why did SOLgnu work?) 2009-07-26 13:12 jkrell * scripts/regression/README: slight corrections for Solaris that are portable, you need ./ in front of cm3.build 2009-07-26 12:37 jkrell * scripts/regression/tinderbox-build.sh: Fix date comment for Solaris. Notice the green run! http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1248610295.22738 Note that the usage statements still have the old date +%s, to minimize this diff. 2009-07-26 10:57 jkrell * m3-sys/m3gdb/src/m3makefile: add a few platforms, to fix one of the errors at: http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1248604850.21111 I'd like to move this to the config files before much longer. 2009-07-26 09:50 wagner * scripts/regression/defs.sh: use release_branch_cm3_5_8 by default forever on this branch 2009-07-26 09:39 wagner * scripts/regression/defs.sh: use release_branch_cm3_5_8 by default for some time for checkouts 2009-07-26 07:38 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: fix for I386_OPENBSD: avoid their ucontext_t 2009-07-26 07:34 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/m3makefile: fix newlines (dos2unix) 2009-07-26 07:33 jkrell * m3-libs/m3core/src/unix/Common/context/setjmp/: config.c, context.c: repair error (I386_OPENBSD specific) and change style slightly 2009-07-26 03:46 jkrell * m3-sys/cminstall/src/config-no-install/: Solaris.common, cm3cfg.common: cross built SOLgnu cm3 crashes a few instructions into RTLinker__InitRuntime Therefore drastically simplify m3_backflags for bootstrap builds, which for now are assumed to only be building cm3, static cm3 (bootstrap builds could cross build the entire system, including shared libraries) My favorite suspect is -fPIC. While at it, until we have to debug anything, remove -gstabs, and until we actually use libgcc, remove -funwind-tables. Again, only for bootstrap. Removing all three does the trick. Removing each one not tried, but fPIC is the suspect since all the first few instructions do is calculate an address in a PIC way. Anyway, the larger change here, though not large, is to enable computing m3back_flags later, by pushing it into a function. Otherwise the SOLgnu configuration file doesn't have the information it needs before it makes the decision. All other platforms given a default function that uses the existing global (well, all Solaris platforms affected, even though only SOLgnu is relevant here/now) 2009-07-26 03:41 jkrell * scripts/python/pylib.py: fix cross bootstrapping SOLgnu (user GNU as and add the same libraries as SOLsun) 2009-07-26 03:39 jkrell * m3-sys/m3cc/src/m3makefile: work on configuring cross compilers for SPARC64_SOLARIS, I386_SOLARIS, AMD64_SOLARIS; ultimately I think I want this in the config files too 2009-07-25 20:03 wagner * scripts/pkgmap.sh: Try to make the continuous incremental builds on Hudson a little bit more robust by retrying failing builds after cleaning up. This has been tested, so I hope it won't disturb anything again. 2009-07-25 19:56 hosking * scripts/regression/tinderbox-build.sh: Revert to what used to work. 2009-07-25 19:29 jkrell * scripts/regression/: tinderbox-build.sh, tinderbox-status.sh: let's just try plain date, based on the choices in the error message 2009-07-25 19:09 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, AMD64_FREEBSD, AMD64_LINUX, AMD64_NETBSD, AMD64_OPENBSD, AMD64_SOLARIS, ARM_DARWIN, FreeBSD4, I386_DARWIN, I386_INTERIX, I386_OPENBSD, I386_SOLARIS, LINUXLIBC6, MIPS64_OPENBSD, NT386GNU, NT386MINGNU, NetBSD2_i386, PA32_HPUX, PA64_HPUX, PPC32_OPENBSD, PPC_DARWIN, PPC_LINUX, SOLgnu, SOLsun, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD, SPARC64_SOLARIS: restore GNU_PLATFORM These aren't used, but it does seem like a good place for it. m3-sys/m3cc/m3makefile should grep or findstr the values out ideally. Each of these values will need some testing. But for now, not used. 2009-07-25 18:18 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: undo -- probably nobody will do that, and if so this can be done without the indentation change by adding an entire other if 2009-07-25 18:16 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: add a warning for the problem I just encountered -- using current config with old cm3 doesn't dynamically link anything but it does leave the old stale .so files 2009-07-25 17:44 jkrell * m3-sys/m3back/src/m3makefile: wrong file 2009-07-25 17:27 jkrell * m3-sys/m3back/src/m3makefile: add sysutils, I thought I already fixed this, anyway, it isn't important 2009-07-25 13:41 wagner * scripts/regression/defs.sh: still trying to fix INSTROOT copies for Hudson... 2009-07-25 12:25 wagner * m3-libs/libm3/tests/: os/src/filesystem-tests-output, os/src/m3makefile, rw/autotest/src/m3makefile: still more test adaptions 2009-07-25 10:26 wagner * m3-libs/libm3/tests/: os/src/m3makefile, rw/copy/src/m3makefile: still got it wrong... another attempt 2009-07-25 10:08 wagner * m3-libs/libm3/tests/: os/src/filesystem-tests-input, os/src/filesystem-tests-output, os/src/m3makefile, rw/copy/src/Pump.m3, src/m3makefile: adapt some of the few libm3 tests to recent changes 2009-07-25 09:29 wagner * m3-sys/cm3/test/src/t.m3: Fix the test program for M3Path to use IO instead of RTIO. The latter writes all output to stderr, which is considered an error by the generic test scripts. Anyway, there's no need to use runtime-level interfaces in this test. Also fix all line endings. It would probably be good to have some more unit tests for cm3. 2009-07-24 21:44 wagner * scripts/pkgmap.sh: minor fix, time reporting was still wrong 2009-07-24 19:22 wagner * scripts/pkgmap.sh: report times in milliseconds (of course granularity is still in seconds) 2009-07-24 17:19 wagner * scripts/regression/defs.sh: I got it completely wrong. Perhaps this works better for lastok update. 2009-07-24 16:26 wagner * scripts/regression/defs.sh: we need to combine current and lastok packages... 2009-07-24 16:01 jkrell * m3overrides: add missing cmvbt, motif, remove unneeded program pkl-fonts 2009-07-24 15:53 wagner * scripts/regression/defs.sh: Try to make update of the lastok cm3 installation almost (but not really) atomic. Hope this helps in case of concurrent jobs. 2009-07-24 15:49 jkrell * m3overrides: ensure everything from m3-libs is present, adding: binIO commandrw digraph dosunixrw fftw lapack libsio patternmatching plplot realgeometry sgml slisp synthesizer table-list tcl 2009-07-24 15:47 jkrell * m3overrides: sort, uniq 2009-07-24 15:39 jkrell * m3-libs/: arithmetic/src/m3overrides, arithmetic/test/src/m3overrides, binIO/src/m3overrides, bitvector/src/m3overrides, bitvector/test/src/m3overrides, commandrw/src/m3overrides, debug/src/m3overrides, deepcopy/src/m3overrides, digraph/src/m3overrides, dosunixrw/src/m3overrides, dps/src/m3overrides, embutils/src/m3overrides, fftw/src/m3overrides, lapack/src/m3overrides, lapack/test/src/m3overrides, libbuf/src/m3overrides, libm3/src/m3overrides, libm3/tests/arith/src/m3overrides, libm3/tests/os/src/m3overrides, libm3/tests/pqueue/fromtty/src/m3overrides, libm3/tests/pqueue/heapsort1/src/m3overrides, libm3/tests/pqueue/heapsort2/src/m3overrides, libm3/tests/random/src/m3overrides, libm3/tests/rw/autotest/src/m3overrides, libm3/tests/rw/copy/src/m3overrides, libm3/tests/rw/pump/src/m3overrides, libm3/tests/rw/pumprd/src/m3overrides, libm3/tests/sequence/src/m3overrides, libm3/tests/sortedtable/src/m3overrides, libm3/tests/sqrt/src/m3overrides, libm3/tests/src/m3overrides, libsio/src/m3overrides, listfuncs/src/m3overrides, m3core/src/m3overrides, m3tk-misc/src/m3overrides, parseparams/src/m3overrides, patternmatching/src/m3overrides, patternmatching/tests/src/m3overrides, plplot/src/m3overrides, realgeometry/src/m3overrides, set/src/m3overrides, sgml/src/m3overrides, slisp/src/m3overrides, sortedtableextras/src/m3overrides, sortedtableextras/tests/intperf/src/m3overrides, sortedtableextras/tests/rbtest/src/m3overrides, sortedtableextras/tests/sltest/src/m3overrides, synthesizer/example/chirp/src/m3overrides, synthesizer/example/echo/src/m3overrides, synthesizer/example/entchen/src/m3overrides, synthesizer/example/filter/src/m3overrides, synthesizer/example/inout/src/m3overrides, synthesizer/example/oscillator/src/m3overrides, synthesizer/example/plot/src/m3overrides, synthesizer/example/rueckwaerts/src/m3overrides, synthesizer/example/sirene/src/m3overrides, synthesizer/example/stereo/src/m3overrides, synthesizer/example/stream/src/m3overrides, synthesizer/test/src/m3overrides, sysutils/src/m3overrides, table-list/src/m3overrides, tcl/src/m3overrides, tempfiles/src/m3overrides, unittest/src/m3overrides, unittest-numeric/src/m3overrides, wellfett/example/src/m3overrides, wellfett/src/m3overrides, wellfett/test/src/m3overrides: gradually migrate m3overrides files 2009-07-24 15:33 jkrell * m3overrides: add m3-libs/wellfett 2009-07-24 15:22 jkrell * doc/help/cm3/quake.html: fix small typo 2009-07-24 15:17 jkrell * m3-sys/cm3/src/Makefile.m3: Don't have unhandled exceptions for the command lines: cm3 "" cm3 - 2009-07-24 15:07 jkrell * m3-sys/cm3/src/m3makefile: fix incrementality 2009-07-24 15:05 wagner * m3-sys/m3cc/src/m3makefile: Don't use any new quake features, so that avoiding to build cm3cg works with older releases, too. 2009-07-24 13:40 wagner * scripts/make-dist.sh: one more $() replaced by `` 2009-07-24 13:38 wagner * scripts/pkgmap.sh: use backquotes instead of $() again 2009-07-24 13:24 wagner * m3-sys/m3cc/src/m3makefile: fix building with older releases again 2009-07-24 12:55 wagner * scripts/regression/defs.sh: tix typo in default definition for INSTROOT_LOK and INSTROOT_POK 2009-07-24 12:19 wagner * m3-sys/m3cc/src/m3makefile: add support for omitting unnecessary m3cc builds during regression tests: If WORKSPACE is set in the environment and PREBUILT_CM3CG is set, this file is just used as the build result. No further checks are performed. This is of course a hack, but our current resources of build servers are heavily loaded by continually compiling the cm3cg backend, which is not necessary in most cases. We can detect via CVS when it _is_. 2009-07-24 11:56 jkrell * m3-db/odbc/src/m3makefile: Rename the library of odbc (libodbc.a, libodbc.so, etc.) to m3odbc (libm3odbc.a, libm3odbc.so, etc.) to avoid a slash with other libodbc.*; To my pleasant surprise, this doesn't break clients, because the *package* name is the directory name. The library name is abstracted out by the build system. (Not clear this ideal -- what if I want to rename a package, in the same source directory?) Note that we don't delete any old shipped libodbc.*, though perhaps we should. 2009-07-24 11:48 jkrell * scripts/pkginfo.sh: m3gdb does its own platform filtering (Darwin and Win32), so remove it from here 2009-07-24 11:40 jkrell * m3-sys/cm3/src/M3Build.m3: make -clean also delete the .M3IMPTAB file (have I mentioned that -clean doesn't work well?) 2009-07-24 11:39 jkrell * m3-comm/sharedobj/src/sharedobj.tmpl: better: fix clean in obliqrt -- don't try to build stuff 2009-07-24 11:38 jkrell * m3-comm/sharedobj/src/sharedobj.tmpl: fix clean in obliqrt -- don't try to build stuff 2009-07-24 11:29 jkrell * m3-sys/cm3/src/M3Build.m3: optimized as demonstrated nearby 2009-07-24 11:26 jkrell * m3-sys/cm3/src/M3Build.m3: likewise for programs: make -clean work much better for programs on NT -- skip_link isn't called so feeding the builder file names there doesn't work; this is closely tied to the config file, but it doesn't really matter how correct it is -- -realclean is the way 2009-07-24 11:24 jkrell * m3-sys/cm3/src/M3Build.m3: make -clean work much better for libraries on NT -- skip_lib isn't called so feeding the builder file names there doesn't work; this is closely tied to the config file, but it doesn't really matter how correct it is -- -realclean is the way 2009-07-24 10:58 jkrell * m3-sys/cm3/test/src/m3makefile: fix my own test case 2009-07-24 10:51 jkrell * m3-libs/m3core/src/float/m3makefile: fix big endian systems! 2009-07-24 10:51 jkrell * m3-libs/m3core/src/Csupport/m3makefile: let the code run 2009-07-24 10:47 jkrell * m3-libs/m3core/src/Csupport/m3makefile: fix big endian systems! 2009-07-24 10:18 wagner * scripts/pkgmap.sh: remove line folding for XML reports add execution time in seconds 2009-07-24 10:02 jkrell * m3-libs/libm3/src/os/POSIX/m3makefile: comment out dormant targets and use TARGET_OS and TARGET_ARCH if they are defined, so that in the next release (once the config files are updated) these target lists can be drastically reduced 2009-07-24 09:57 wagner * scripts/pkgmap.sh: fix sed expressions for quoting: & has a special meaning An ampersand (``&'') appearing in the replacement is replaced by the string matching the RE. The special meaning of ``&'' in this context can be suppressed by preceding it by a backslash. The string ``\#'', where ``#'' is a digit, is replaced by the text matched by the corresponding backreference expression (see re_format(7)). 2009-07-24 09:17 jkrell * m3-sys/cminstall/src/config-no-install/: NT386, NT386.common, NT386GNU, NT386MINGNU: NT386 repair and cleanup 2009-07-24 08:43 jkrell * m3-sys/cminstall/src/config-no-install/Linux.common: put -Wl on the -z switches, it seems gcc varies as to its understanding of them; might want this in FreeBSD.common too 2009-07-24 08:34 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64.common, AMD64_DARWIN, AMD64_FREEBSD, AMD64_LINUX, AMD64_NETBSD, AMD64_OPENBSD, AMD64_SOLARIS, ARM_DARWIN, FreeBSD.common, FreeBSD4, HPPA.common, HPPA64.common, I386.common, I386_DARWIN, I386_INTERIX, I386_OPENBSD, I386_SOLARIS, LINUXLIBC6, Linux.common, MIPS64_OPENBSD, NT386, NT386.common, NT386GNU, NT386MINGNU, NetBSD.common, NetBSD2_i386, OpenBSD.common, PA32_HPUX, PA64_HPUX, PPC.common, PPC32_OPENBSD, PPC_DARWIN, PPC_LINUX, SOLgnu, SOLsun, SPARC.common, SPARC32_LINUX, SPARC64.common, SPARC64_LINUX, SPARC64_OPENBSD, SPARC64_SOLARIS: provide TARGET_ARCH so another list of platforms can go away and generally just factor things much better 2009-07-24 07:44 jkrell * m3-libs/m3core/src/runtime/: m3makefile, common/m3makefile: mostly replace two (identical) lists of targets with file existance check 2009-07-24 07:30 jkrell * m3-libs/m3core/src/runtime/common/m3makefile: whitespace only in order to be formated more conventially 2009-07-24 07:28 jkrell * m3-libs/m3core/src/runtime/common/m3makefile: whitespace only, this makes this list identical to another list in another nearby m3makefile 2009-07-24 07:26 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile: comment out dormant targets as a guide to maintainers and readers (This directory probably should be #ifdef'ed C in the next release 2009-07-24 07:22 jkrell * m3-libs/m3core/src/: float/m3makefile, Csupport/m3makefile: comment out dormant targets as a guide to maintainers and readers 2009-07-24 07:19 jkrell * m3-libs/m3core/src/float/m3makefile: Prepare to remove another list of platforms once config files are updated (next release), in a way compatible with m3tests. 2009-07-24 07:13 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile: VAX was actually Ultrix apparently, not VMS, so remove VMS entry until we have an actual VMS port 2009-07-24 06:56 jkrell * m3-libs/m3core/src/time/POSIX/m3makefile: key off of TARGET_OS if it is defined, this will make for a much smaller list to maintain 2009-07-24 06:49 wagner * scripts/pkgmap.sh: add more missing xml entity quoting 2009-07-24 06:46 jkrell * m3-libs/m3core/src/Csupport/m3makefile: once TARGET_ENDIAN is defined, stop using the list of platforms here 2009-07-24 06:40 jkrell * m3-libs/libm3/src/random/m3makefile: This list of targets was already not needed, except for VAX, every platform just uses the endian-indepenent IEEE directory, nobody uses the dead IEEE-le or IEEE-be. 2009-07-24 06:33 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, AMD64_FREEBSD, AMD64_LINUX, AMD64_NETBSD, AMD64_OPENBSD, AMD64_SOLARIS, ARM_DARWIN, Darwin.common, FreeBSD4, HPUX.common, I386_DARWIN, I386_INTERIX, I386_OPENBSD, I386_SOLARIS, LINUXLIBC6, Linux.common, MIPS64_OPENBSD, NT386, NT386.common, NT386GNU, NT386MINGNU, NetBSD2_i386, PA32_HPUX, PA64_HPUX, PPC32_OPENBSD, PPC_DARWIN, PPC_LINUX, SOLgnu, SOLsun, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD, SPARC64_SOLARIS, Solaris.common: add TARGET_OS and TARGET_ENDIAN This will reduce lists of platforms elsewhere. 2009-07-24 06:26 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: Target.Init happens too late to compute OS, it'll have to go in the config files 2009-07-24 06:07 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3, m3makefile: expose OS and compute both it and 64-bitness in a much easier to maintain way. If TARGET contains one underscore, OS is the part after it. Plus handle active legacy targets. Inactive targets can leave OS as empty or NIL. If TARGET contains "64_" or starts "ALPHA", then it is a 64 bit target. Maintain fewer lists of targets this way. 2009-07-24 05:45 jkrell * m3-libs/sysutils/src/: TextUtils.i3, cm3/TextUtils.m3, pm3/TextUtils.m3: add: (*---------------------------------------------------------------------------*) PROCEDURE StartsWith(s, t : TEXT; caseSensitive := TRUE) : BOOLEAN = VAR tlen := Text.Length(t); slen := Text.Length(s); sub: TEXT; BEGIN IF tlen > slen THEN RETURN FALSE; END; sub := Text.Sub(s, 0, tlen); IF caseSensitive THEN RETURN Text.Equal(sub, t); END; RETURN TextEx.CIEqual(sub, t); END StartsWith; (*---------------------------------------------------------------------------*) PROCEDURE EndsWith(s, t : TEXT; caseSensitive := TRUE) : BOOLEAN = VAR tlen := Text.Length(t); slen := Text.Length(s); sub: TEXT; BEGIN IF tlen > slen THEN RETURN FALSE; END; sub := Text.Sub(s, slen - tlen, tlen); IF caseSensitive THEN RETURN Text.Equal(sub, t); END; RETURN TextEx.CIEqual(sub, t); END EndsWith; 2009-07-24 05:21 jkrell * m3-libs/sysutils/src/: TextUtils.i3, cm3/TextUtils.m3, pm3/TextUtils.m3: add: PROCEDURE CountChar(s: TEXT; ch: CHAR; caseSensitive := TRUE) : INTEGER; 2009-07-24 04:26 jkrell * examples/web/src/m3makefile: filter out this sample from building on NT386 maybe it is broken on all platforms? The errors are on NT386: C:\dev2\cm3.2\examples\web>cm3 --- building in NT386 --- new source -> compiling WebContact.m3 "..\src\WebContact.m3", line 22: default is incompatible with method type (set) "..\src\WebContact.m3", line 22: default is incompatible with method type (get) "..\src\WebContact.m3", line 22: default is incompatible with method type (setDe fault) "..\src\WebContact.m3", line 22: procedure is not compatible with method (set) "..\src\WebContact.m3", line 22: procedure is not compatible with method (get) "..\src\WebContact.m3", line 22: procedure is not compatible with method (setDef ault) "..\src\WebContact.m3", line 44: default is incompatible with method type (set) "..\src\WebContact.m3", line 44: default is incompatible with method type (get) "..\src\WebContact.m3", line 44: default is incompatible with method type (setDe fault) "..\src\WebContact.m3", line 44: procedure is not compatible with method (set) "..\src\WebContact.m3", line 44: procedure is not compatible with method (get) "..\src\WebContact.m3", line 44: procedure is not compatible with method (setDef ault) "..\src\WebContact.m3", line 26: warning: not used (self) "..\src\WebContact.m3", line 26: warning: not used (log) "..\src\WebContact.m3", line 34: warning: not used (self) "..\src\WebContact.m3", line 48: warning: not used (self) "..\src\WebContact.m3", line 53: warning: not used (self) "..\src\WebContact.m3", line 54: warning: not used (log) "..\src\WebContact.m3", line 103: parameter not specified (serviceValue) 13 errors and 6 warnings encountered compilation failed => not building program "webcontact.exe" Fatal Error: package build failed 2009-07-24 04:22 jkrell * scripts/make-src-dist-all.sh, scripts/make-src-dist-std.sh, scripts/make-src-dist-sys.sh, compat.quake: no need for compat.quake, it was for booting from old releases e.g. of DEC-SRC m3 and PM3 2009-07-24 04:19 jkrell * www/booting.html: relegate compat.quake to out-dated documentation instead of carrying it along all the time 2009-07-23 22:27 wagner * scripts/pkgmap.sh: add some missing xml encoding 2009-07-23 21:19 wagner * scripts/pkgmap.sh: first attempt to add XML reporting to packages status 2009-07-23 19:22 wagner * scripts/make-dist.sh: add generation of install.cmd (script from Randy Coleburn) 2009-07-23 15:01 jkrell * m3-libs/m3core/src/unix/m3makefile: comment out all the dormant platforms 2009-07-22 21:31 wagner * m3-sys/m3tests/: PkgTags, src/m3makefile: fix XML syntax: quote <, &, > modified: m3tests/src/m3makefile 2009-07-22 20:14 jkrell * scripts/: make-script-dist.sh, make-src-dist-all.sh, make-src-dist-gnu.sh, make-src-dist-std.sh, make-src-dist-sys.sh, make-src-files-update.sh, make-src-update.sh: add root m3overrides file in various archives 2009-07-22 20:01 wagner * m3-sys/m3tests/: PkgTags, src/m3makefile: fix XML syntax modified: m3tests/src/m3makefile 2009-07-22 19:21 wagner * m3-sys/m3tests/: PkgTags, src/m3makefile: add JUnit XML report if HTML is defined may need some adaptions on Windows modified: m3tests/src/m3makefile 2009-07-22 15:48 rcoleburn * scripts/pkginfo.txt: Prepend the relative path "juno-2" to the 3 juno packages so that they can be found. 2009-07-22 15:32 jkrell * www/porting-old.html: save the old version away 2009-07-22 15:31 jkrell * www/cvsup-cm3.html: fix link to CVSup FAQ and the wording around it slightly 2009-07-22 15:27 jkrell * www/nav-inst.html: add link to 'Known Problems in old releases' 2009-07-22 15:26 jkrell * www/known-problems.html: remove all the release specific notes, leaving only the general problems: missing static libs (remove the mention of LINUXELF) paths with spaces configuring NetBSD ld.so.conf 2009-07-22 15:16 jkrell * www/known-problems-old.html: archive version that details releases 5.1 through 5.4 so we can keep the list very short or even empty for current 2009-07-22 15:14 jkrell * www/nav-inst.html: "Booting CM3 using M3" no longer viable, removed the link 2009-07-22 15:00 jkrell * scripts/upgrade.sh: Solaris doesn't like the -v for verbose on the cp command 2009-07-21 23:06 jkrell * scripts/upgrade.sh: also delete config files in the bin directory 2009-07-21 23:05 jkrell * scripts/upgrade.sh: always update config files -- need to ensure the backup always occurs, and that backups are deleted every so often, like all but the youngest 10 2009-07-21 23:01 jkrell * scripts/pkgcmds.sh: remove support for PM3 and DEC SRC M3 (the DEC SRC support was incomplete) 2009-07-21 22:52 jkrell * caltech-parser/term/src/TermC.c: go back a version -- the caller is right there, and inited is not yet true 2009-07-21 22:50 jkrell * caltech-parser/term/src/TermC.c: safer 2009-07-21 22:47 jkrell * caltech-parser/term/src/: TermC.c, TermC.h, Termios.c, m3makefile: make it much safer 2009-07-21 13:35 jkrell * m3-sys/m3tests/src/p1/p137/Main.m3: 64bit adaption 2009-07-21 13:30 jkrell * m3-sys/m3tests/src/p0/p040/stdout.pgm64: declare the results to be correct, though should look at them more 2009-07-21 13:27 jkrell * m3-sys/m3tests/src/p0/p009/stderr.pgm64: finish adaption to 64bit 2009-07-21 13:26 jkrell * m3-sys/m3tests/src/p0/p009/Main.m3: more adaption to 64bit 2009-07-21 13:20 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: fix for Cygwin, and possibly Interix and iPhone (platforms with perhaps no signal context) 2009-07-21 13:15 jkrell * m3-sys/m3tests/src/p0/p009/Main.m3: partial adaption to 64bits 2009-07-21 13:12 jkrell * m3-sys/m3tests/src/TestC.c: restore the testing of floats/doubles and sizeof jmpbuf for win32 2009-07-21 13:03 jkrell * m3-sys/m3tests/src/: TestC.c, Usysdep.i3, m3makefile: restore Win32 to working here 2009-07-21 12:54 jkrell * m3-sys/m3tests/src/m3makefile: generalize the allowance for 64bit specific output it is confusing to have cmp_file and compare_file that appear to do very similar work.. 2009-07-21 12:29 jkrell * scripts/regression/defs.sh: instrumentation so I can see more about m3html 2009-07-21 12:04 jkrell * caltech-parser/term/src/TermC.c: probably need for Solaris too 2009-07-21 11:56 jkrell * scripts/regression/defs.sh: -z3 to -z1 2009-07-21 11:28 jkrell * scripts/win/do-cm3.cmd: use terser more portable use that is, the whole usebackquo thing is useless, you can just use single quotes, that works on older OS versions and does the exact same thing -- except it just looks a little more different than Unix 2009-07-21 11:25 jkrell * m3-libs/tcl/src/m3makefile: make require Posix This is the wrong fix. The right fix is probably to put TCL in SYS_LIBS or such. Furthermore, the cloning of C headers is dubious. It is less dubious here than for "libc" since the headers are fairly portable. But they are also churning. (ie: We seem to clone the X headers just once across all platforms and get away with it...) 2009-07-21 11:18 jkrell * caltech-parser/term/src/: TermC.c, Termios.c, Termios.i3: after the initial more faithful repair, prune down all the unused stuff 2009-07-21 11:08 jkrell * caltech-parser/: paneman/kemacs/src/m3makefile, paneman/src/m3makefile, parserlib/klex/src/m3makefile: go back to letting this all build 2009-07-21 11:07 jkrell * caltech-parser/parserlib/klexlib/src/m3makefile: forgot to check this in (note that cross builds, with old compilers, between Win32 and Posix, won't work due to confusion about target ostype vs. host ostype..) 2009-07-21 10:59 jkrell * caltech-parser/term/src/TermC.i3: forgot to add file 2009-07-21 10:58 jkrell * caltech-parser/term/src/: Term.m3, TermC.c, Termios.c, Termios.i3, cfmakeraw.c, m3makefile, termios.h: make it safe and more portable -- does nothing on Win32, doesn't assume the size of structs, doesn't heap allocate globals unnecessarily, etc. 2009-07-21 10:30 jkrell * caltech-parser/term/src/: TermC.c, Termios.c: initial versions, not yet active 2009-07-21 10:06 jkrell * caltech-parser/term/src/Termios.c: copy of Termios.i3 2009-07-21 09:55 jkrell * caltech-parser/term/src/TermC.c: initial copy of dangerous non portable Term.m3 to rewrite portably and have it do nothing silently on Win32 which should suffice, or if not, can probably be done better, specifically the MakeRaw function 2009-07-21 09:43 jkrell * m3-sys/cminstall/src/config-no-install/NT386.common: add flex/bison for cygwin 2009-07-21 09:43 jkrell * caltech-parser/parserlib/klex/src/m3makefile: depends on term, so only build on Posix 2009-07-21 09:39 jkrell * caltech-parser/parserlib/klexlib/src/: m3makefile, boot/installcmd.cmd: crudely adapt to Win32 host -- or should we just edit the checked in files? 2009-07-21 09:31 jkrell * caltech-parser/parserlib/klexlib/src/boot/installcmd.cmd: initial copy from install; why all this stuff in the first place though? Anyway, I can port it to Win32.. 2009-07-21 09:23 jkrell * caltech-parser/paneman/: kemacs/src/m3makefile, src/m3makefile: paneman depends on term kemacs depends on paneman term depends on Posix therefore only build these on Posix 2009-07-21 09:18 jkrell * caltech-parser/term/src/m3makefile: only build on Posix, uses: tcgetattr cfmakeraw tcsetattr 2009-07-21 09:15 jkrell * m3-tools/pp/src/m3makefile: Don't barf when there is no Yacc/Bison/Lex/Flex, just swallow it silently.. (Don't error, just do nothing.) 2009-07-21 08:51 jkrell * scripts/regression/defs.sh: copy OpenBSD support from sysinfo.sh -- these files really ought to share this code 2009-07-21 08:48 jkrell * scripts/: README, make-bin-dist-min.sh, sysinfo.sh: remove various Windows cruft: SYSLIBS SYSLIBDIR DEV_LIB DEV_BIN XDEV_LIB XDEV_BIN find_file TAR CM3BINSEARCHPATH use of Cygwin tar/gzip to make installation archives that very much resembles the others; there is more recent automation elsewhere for this I really don't see this code returning to use. 2009-07-21 08:33 jkrell * scripts/: boot-cm3-build-on-target.sh, sysinfo.sh, regression/defs.sh: remove GCWRAPFLAGS, I don't believe it has been relevant for a long time, plus it is a Linux-only thing and the only Linux target in Tinderbox is AMD64_LINUX (that is, nobody is using this code with old relevant cm3) Granted, it might be useful with something as recent as 5.4. ? 2009-07-21 08:30 jkrell * scripts/win/: clearenv.cmd, sysinfo.cmd: remove more cruft inherited from the *.sh code: GCWRAPFLAGS GREP SCRIPTS SL SYSLIBDIR SYSLIBS TMPDIR TAR CM3LIBSEARCHPATH CM3BINSEARCHPATH 2009-07-21 08:17 jkrell * scripts/win/pkgcmds.cmd: remove support for using PM3 or DEC SRC M3; it probably never worked 2009-07-21 07:55 jkrell * scripts/python/pylib.py: remove workarounds for old releases: GCWRAPFLAGS (not used anyway) @M3nogc @M3novm 2009-07-21 07:47 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: remove more support for older releases 2009-07-21 07:41 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, AMD64_FREEBSD, AMD64_LINUX, AMD64_NETBSD, AMD64_OPENBSD, ARM_DARWIN, Darwin.common, FreeBSD4, I386_DARWIN, I386_INTERIX, I386_OPENBSD, LINUXLIBC6, MIPS64_OPENBSD, NT386.common, NetBSD2_i386, PA32_HPUX, PA64_HPUX, PPC32_OPENBSD, PPC_LINUX, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD, SPARC64_SOLARIS, Solaris.common, Unix.common: remove workarounds for older releases" remove GetGcWrapFlags remove FixM3GcDefs remove GetM3BackFlag, just use m3back_flags This could be abstracted better, since there is still much commonality. Most platforms use exactly -gstabs+ -fPIC -funwind-tables -m32 or -gstabs+ -fPIC -funwind-tables -m64 excpet some don't use -m32 or -m64 some don't use -fPIC some don't use -gstabs+ and, you guessed it, some don't use -funwind-tables -fPIC doesn't work on Interix and some Sparc platforms, and doesn't seem to be needed; -m32 and -m64 are often not supported -funwind-tables crashes the MIPS64_OPENBSD compiler -gstabs+ is not supported on PA64_HPUX etc. remove GetM3CoreStaticObjs, never yet came to fruition remove ShipM3CoreStaticObjs, never yet came to fruition 2009-07-21 06:21 rcoleburn * scripts/win/do-cm3.cmd: v1.01, 07/21/2009, R.Coleburn, minor formatting changes for readability, add error log summary 2009-07-21 04:21 rcoleburn * scripts/win/do-cm3.cmd: Add newly developed script, do-cm3.CMD. See help below. --- HELP for do-cm3.CMD --- do-cm3.CMD is intended to replicate on Windows 2000/XP the functionality of the various "do-cm3-*.sh" scripts. As such, it invokes cm3 on a group of packages. Packages and their group associations are defined in the PkgInfo.txt file. The PkgInfo.txt file can be specified via the -P argument, or it is searched for in the current directory, then the parent directory. The package source tree is located relative to the PkgInfo.txt file (parent folder), or in the current directory, or in the parent directory. Usage: do-cm3 {help} [min core std all] {-p path} {cm3args} help = display help, then exit. -p path = specify location of PkgInfo.txt (if not specified, looks in ".\PkgInfo.txt" then "..\PkgInfo.txt") cm3args = zero or more arguments to the cm3 builder, e.g., clean, build, ship Multiple arguments are possible. They will be performed in the order given. "buildship" is shorthand for "build" followed by "ship". ===END do-cm3=== Enjoy! --Randy Coleburn 2009-07-20 20:56 wagner * scripts/pkgmap.sh: mv report to WORKSPACE if set 2009-07-20 19:34 jkrell * m3-sys/m3middle/src/Target.m3: bump up NT386 jmpbuf by 2 ints to interoperate with Interix 2009-07-20 19:30 jkrell * m3-sys/m3gdb/src/m3makefile: filter out Darwin and Win32 here, instead if in three sets of scripts (though environment variable filtering isn't here..do we need that?) 2009-07-20 12:29 jkrell * scripts/regression/defs.sh: attempt to pay attention to cvs exit code, but my sh skills are weak 2009-07-19 22:37 jkrell * m3-libs/m3core/src/C/Common/CerrnoC.c: extern C wrapping 2009-07-19 22:34 jkrell * m3-libs/m3core/src/C/Common/CstdioC.c: failed to add new file 2009-07-19 22:33 jkrell * m3-libs/m3core/src/C/Common/: Cstdio.i3, m3makefile: provide some portable wrappers some platforms had provided such functions, though nothing in the system uses them, at least since the work is no longer platform specific, it is much less onerous to provide 2009-07-19 22:21 jkrell * m3-libs/m3core/src/C/: Common/m3makefile, FreeBSD4/Cstdio.i3, FreeBSD4/Cstdio.m3, FreeBSD4/CstdioC.c, FreeBSD4/Cstring.i3, FreeBSD4/m3makefile, I386_DARWIN/Cstdio.i3, I386_DARWIN/Cstdio.m3, I386_DARWIN/Cstring.i3, I386_DARWIN/m3makefile, NetBSD2_i386/Cstdio.i3, NetBSD2_i386/Cstdio.m3, NetBSD2_i386/CstdioC.c, NetBSD2_i386/Cstring.i3, NetBSD2_i386/m3makefile, PPC_DARWIN/Cstdio.i3, PPC_DARWIN/Cstdio.m3, PPC_DARWIN/Cstring.i3, PPC_DARWIN/m3makefile, SOLgnu/Cstdio.i3, SOLgnu/Cstring.i3, SOLgnu/m3makefile, SOLsun/Cstdio.i3, SOLsun/Cstring.i3, SOLsun/m3makefile: move all active platforms to one portable Cstring.i3, Cstdio.i3 2009-07-19 22:19 jkrell * m3-libs/m3core/src/C/Common/Cstddef.i3: fix newlines (dos2unix) 2009-07-19 22:02 jkrell * m3-libs/m3core/src/C/AMD64_DARWIN/: Cstdio.i3, Cstdio.m3, Cstring.i3: delete unused files, that also have no archeological value 2009-07-19 21:58 jkrell * m3-libs/m3core/src/C/AMD64_DARWIN/m3makefile: remove incorrect comment 2009-07-19 21:43 wagner * scripts/upgrade.sh: yet another try to fix config file upgrade :-/ 2009-07-19 15:43 jkrell * scripts/regression/defs.sh: use -z3 compression on checkout 2009-07-19 15:30 jkrell * scripts/regression/defs.sh: try some instrumentation 2009-07-19 14:01 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: repair for Linux/sparc 2009-07-19 11:26 wagner * scripts/upgrade.sh: trying to adapt upgrade to new config dir 2009-07-19 02:04 jkrell * scripts/regression/defs.sh: add SPARC32_LINUX 2009-07-19 00:28 jkrell * m3-libs/m3core/src/unix/Common/m3makefile: also LINUXLIBC6 2009-07-19 00:10 jkrell * m3overrides: add more missing overrides 2009-07-19 00:05 jkrell * m3overrides: add missing override to master m3overrides 2009-07-19 00:03 jkrell * m3-libs/m3core/src/unix/Common/m3makefile: unconfuse c_source and Interface from previous 2009-07-18 23:54 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, Unix.common: don't build any shared libraries with older releases this should only affect sysutils share skip_lib better in Unix.common as Darwin.common does it 2009-07-18 23:28 jkrell * m3-libs/m3core/src/unix/Common/m3makefile: accomodate platform specific Usignal.i3 for a small number of targets: SOLsun, SOLgnu FreeBSD4 NetBSD2_i386 only until I get around to testing them with the portable form (for which a cross built boot should suffice). 2009-07-18 21:46 wagner * scripts/regression/defs.sh: fix default for BINDISTMIN_NAME 2009-07-18 18:51 jkrell * scripts/pkginfo.sh: sort the Darwin lines 2009-07-18 18:50 jkrell * scripts/pkginfo.sh: no m3gdb on Darwin, code that checked here for DARWIN occuring in TARGET would be nice 2009-07-18 12:22 jkrell * m3-libs/m3core/src/unix/: m3makefile, Common/m3makefile, darwin-generic/m3makefile: eliminate platform specific Usignal on Darwin (all platforms now use one portable form) 2009-07-18 11:45 jkrell * m3-libs/m3core/src/unix/m3makefile: whitespace only -- line up some of the columns that were off by one 2009-07-18 11:00 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: second parameter to readlink is char* not void* - fix C++ warning 2009-07-18 10:59 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: #include signal.h to fix warning about missing kill prototype on AMD64_DARWIN 2009-07-18 10:49 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: whitespace only 2009-07-18 10:42 jkrell * m3-libs/m3core/src/unix/: m3makefile, linux-32/Upthreadtypes.i3, linux-32/m3makefile, linux-64/Upthreadtypes.i3, linux-64/m3makefile: remove unused platform specific interfaces 2009-07-18 10:22 jkrell * m3-libs/m3core/src/unix/Common/: Uexec.c, Uprocess.c, Upwd.c, Usignal.c, Uugid.c: use "m3_" types to match the declarations This has a potential to warn/error on some platforms due to integer truncation, in which case throw in casts, but compiles without any casts or warnings or errors on AMD64_LINUX. 2009-07-18 10:13 jkrell * m3-libs/m3core/src/unix/Common/: Udir.i3, UdirC.c, Uugid.c, Uugid.i3: to reduce errors in m3-pkgtools, add: readdir setreuid getuid This has potential to fail, esp. on platforms that don't have these functions. In which case we can #if them. 2009-07-18 09:58 jkrell * m3-pkgtools/pkgobj/src/POSIX/: FileSysPosix.m3, OpSysPosix.m3: some small adaptations to revised m3core/unix interfaces though this area does not build 2009-07-18 09:25 jkrell * m3-libs/m3core/src/unix/Common/: Uprocess.c, Upthread.c: try clear executable bit 2009-07-18 09:07 jkrell * m3-sys/: cm3/src/m3overrides, m3back/src/m3overrides, m3front/src/m3overrides, m3middle/src/m3overrides, m3objfile/src/m3overrides, m3quake/src/m3overrides: gradually replace m3overrides files with just include(ROOT & "/m3overrides") 2009-07-18 09:03 jkrell * m3overrides: add one master m3overrides file that the 270 or so m3overrides files can mostly just include and be done, or maybe cm3 can even look for ROOT & "/m3overrides" and include it and then the bulk of the m3overrides files can be deleted and nobody need remember to add one again, just add the occasional new package to the master file at least until such time as we replace this mechanism anyway, with one depending on an alternate overall output root instead of the outputs all sprinkled around the source tree (and then we can dispense with all the .cvsignore droppings too) 2009-07-18 08:57 jkrell * m3-libs/unittest-numeric/src/m3overrides: add missing overrides to possibly fix errors in Tinderbox that unfortunately only turn the overall status to yellow, lulling me into thinking all is ok since yellow I thought was common 2009-07-18 07:54 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: shorten symlink chain lengths from 2 to 1 2009-07-18 07:32 jkrell * m3-libs/sgml/src/m3overrides, m3-obliq/obliqrt/src/m3overrides, m3-tools/m3browser/src/m3overrides: add m3quake to m3overrides files 2009-07-17 23:18 jkrell * m3-sys/cm3/src/Makefile.m3: restore printing of target and not just host, the preceding change to the config files should fix it, and even if not, it wasn't severe like the other problems, just a useless line in cm3 -version output 2009-07-17 23:15 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, NT386, NT386GNU, NT386MINGNU, Solaris.common, cm3.cfg, cm3cfg.common: address the problem with additional users of MxConfig cm3 defines M3_PROFILING, SL, CR, and some other things Other users of MxConfig do not As a result, MxConfig kind of just gives up once execution tries to use those variables, returning NULL for the .Get() in progress Reduction of this diff and other preexisting code of mine may now be possible now that this problem is understand. In particular, the setting of TARGET and BUILD_DIR in NT386, NT386GNU, NT386MINGNU instead of just NT386.common, and then this change to NT386, NT386GNU, NT386MINGNU But this is ok asis. It is tempting to put these defines in Quake but that would violate the model perhaps. 2009-07-17 19:44 hosking * m3-libs/m3core/src/text/String16.i3: Missing bracket. 2009-07-17 19:34 hosking * m3-libs/m3core/src/text/Text.m3: Reformat for readability. 2009-07-17 18:41 hosking * m3-libs/m3core/src/text/String16.m3: Rewrite HasWideChars for clarity similarly to FindCharR. Add check for NIL to HasWideChars. DO WE NEED THIS? 2009-07-17 18:24 hosking * m3-libs/m3core/src/text/String8.m3: Small rewrite to FindCharR for clarity. 2009-07-17 18:21 hosking * m3-libs/m3core/src/text/String16.m3: Small rewrite to FindCharR for clarity. 2009-07-17 17:51 hosking * m3-sys/cminstall/src/config-no-install/Darwin.common: Fix for OpenGL link error: cycle in dylib re-exports with /usr/X11R6/lib/libGL.dylib 2009-07-17 11:40 jkrell * caltech-parser/cit_common/.cvsignore, caltech-parser/cit_util/.cvsignore, caltech-parser/drawcontext/.cvsignore, caltech-parser/drawcontext/dcpane/.cvsignore, caltech-parser/drawcontext/kgv/.cvsignore, caltech-parser/drawcontext/test/.cvsignore, caltech-parser/hack/.cvsignore, caltech-parser/m3browserhack/.cvsignore, caltech-parser/m3tmplhack/.cvsignore, caltech-parser/paneman/.cvsignore, caltech-parser/paneman/kemacs/.cvsignore, caltech-parser/parserlib/kext/.cvsignore, caltech-parser/parserlib/klex/.cvsignore, caltech-parser/parserlib/klexlib/.cvsignore, caltech-parser/parserlib/ktok/.cvsignore, caltech-parser/parserlib/ktoklib/.cvsignore, caltech-parser/parserlib/kyacc/.cvsignore, caltech-parser/parserlib/kyacclib/.cvsignore, caltech-parser/parserlib/parserlib/.cvsignore, caltech-parser/parserlib/parserlib/test/.cvsignore, caltech-parser/parserlib/parserlib/test_stdin/.cvsignore, caltech-parser/term/.cvsignore, m3-comm/events/.cvsignore, m3-comm/events/tests/msg/.cvsignore, m3-comm/events/tests/test/.cvsignore, m3-comm/events/tests/work/.cvsignore, m3-comm/netobj/.cvsignore, m3-comm/netobj/tests/echorw/.cvsignore, m3-comm/netobj/tests/fd/.cvsignore, m3-comm/netobj/tests/fd1/.cvsignore, m3-comm/netobj/tests/longcall/.cvsignore, m3-comm/netobj/tests/luca/.cvsignore, m3-comm/netobj/tests/perf/.cvsignore, m3-comm/netobj/tests/pkl/.cvsignore, m3-comm/netobjd/.cvsignore, m3-comm/rdwr/.cvsignore, m3-comm/rdwr/test/echo/.cvsignore, m3-comm/rdwr/test/john/.cvsignore, m3-comm/serial/.cvsignore, m3-comm/sharedobj/.cvsignore, m3-comm/sharedobj/tests/netobjtest/.cvsignore, m3-comm/sharedobj/tests/obsequence/.cvsignore, m3-comm/sharedobj/tests/tracker/.cvsignore, m3-comm/sharedobjgen/.cvsignore, m3-comm/sharedobjgen/test/trackerpos/.cvsignore, m3-comm/stubgen/.cvsignore, m3-comm/tapi/.cvsignore, m3-comm/tcp/.cvsignore, m3-comm/udp/.cvsignore, m3-db/db/.cvsignore, m3-db/db/test/.cvsignore, m3-db/odbc/.cvsignore, m3-db/odbc/test/.cvsignore, m3-db/pgodbc/.cvsignore, m3-db/postgres95/.cvsignore, m3-db/postgres95/test/.cvsignore, m3-db/smalldb/.cvsignore, m3-db/stable/.cvsignore, m3-db/stable/example/.cvsignore, m3-db/stable/test/.cvsignore, m3-db/stablegen/.cvsignore, m3-demo/calculator/.cvsignore, m3-demo/cube/.cvsignore, m3-demo/dpsslides/.cvsignore, m3-demo/fisheye/.cvsignore, m3-demo/mentor/.cvsignore, m3-demo/sharedboard/board/.cvsignore, m3-demo/sharedboard/boardclient/.cvsignore, m3-demo/sharedboard/boardserver/.cvsignore, m3-demo/sharedboard/calendar/.cvsignore, m3-demo/sil/.cvsignore, m3-games/badbricks/.cvsignore, m3-games/columns/.cvsignore, m3-games/fours/.cvsignore, m3-games/maze/.cvsignore, m3-games/solitaire/.cvsignore, m3-games/tetris/.cvsignore, m3-lectern/buildlectern/.cvsignore, m3-lectern/editlectern/.cvsignore, m3-lectern/lectern/.cvsignore, m3-lectern/lecternclient/.cvsignore, m3-lectern/lecterndoc/.cvsignore, m3-lectern/lecterntohtml/.cvsignore, m3-lectern/ocr/.cvsignore, m3-libs/arithmetic/.cvsignore, m3-libs/arithmetic/doc/.cvsignore, m3-libs/arithmetic/test/.cvsignore, m3-libs/binIO/.cvsignore, m3-libs/bitvector/.cvsignore, m3-libs/bitvector/test/.cvsignore, m3-libs/commandrw/.cvsignore, m3-libs/debug/.cvsignore, m3-libs/deepcopy/.cvsignore, m3-libs/digraph/.cvsignore, m3-libs/dps/.cvsignore, m3-libs/embutils/.cvsignore, m3-libs/fftw/.cvsignore, m3-libs/fftw/swig/.cvsignore, m3-libs/fftw/test/.cvsignore, m3-libs/libbuf/.cvsignore, m3-libs/libm3/.cvsignore, m3-libs/libm3/tests/arith/.cvsignore, m3-libs/libm3/tests/fmtlex/fmt/.cvsignore, m3-libs/libm3/tests/fmtlex/lex/.cvsignore, m3-libs/libm3/tests/fmtlex/scan/.cvsignore, m3-libs/libm3/tests/os/.cvsignore, m3-libs/libm3/tests/pqueue/fromtty/.cvsignore, m3-libs/libm3/tests/pqueue/heapsort1/.cvsignore, m3-libs/libm3/tests/pqueue/heapsort2/.cvsignore, m3-libs/libm3/tests/random/.cvsignore, m3-libs/libm3/tests/rw/autotest/.cvsignore, m3-libs/libm3/tests/rw/copy/.cvsignore, m3-libs/libm3/tests/rw/pump/.cvsignore, m3-libs/libm3/tests/rw/pumprd/.cvsignore, m3-libs/libm3/tests/sequence/.cvsignore, m3-libs/libm3/tests/sortedtable/.cvsignore, m3-libs/libm3/tests/sqrt/.cvsignore, m3-libs/libsio/.cvsignore, m3-libs/listfuncs/.cvsignore, m3-libs/m3core/.cvsignore, m3-libs/m3core/tests/float/.cvsignore, m3-libs/m3core/tests/text/.cvsignore, m3-libs/m3tk-misc/.cvsignore, m3-libs/parseparams/.cvsignore, m3-libs/patternmatching/.cvsignore, m3-libs/patternmatching/tests/.cvsignore, m3-libs/plplot/.cvsignore, m3-libs/plplot/swig/.cvsignore, m3-libs/realgeometry/.cvsignore, m3-libs/set/.cvsignore, m3-libs/sgml/.cvsignore, m3-libs/slisp/.cvsignore, m3-libs/slisp/tests/.cvsignore, m3-libs/sortedtableextras/.cvsignore, m3-libs/sortedtableextras/tests/intperf/.cvsignore, m3-libs/sortedtableextras/tests/leveltest/.cvsignore, m3-libs/sortedtableextras/tests/randtest/.cvsignore, m3-libs/sortedtableextras/tests/rbtest/.cvsignore, m3-libs/sortedtableextras/tests/sltest/.cvsignore, m3-libs/sysutils/.cvsignore, m3-libs/table-list/.cvsignore, m3-libs/tcl/.cvsignore, m3-libs/tcl/test/src/.cvsignore, m3-libs/tempfiles/.cvsignore, m3-libs/wellfett/example/.cvsignore, m3-mail/llscan/.cvsignore, m3-mail/postcard/.cvsignore, m3-mail/webcard/.cvsignore, m3-obliq/metasyn/.cvsignore, m3-obliq/obliq/.cvsignore, m3-obliq/obliqbin3D/.cvsignore, m3-obliq/obliqbinanim/.cvsignore, m3-obliq/obliqbinmin/.cvsignore, m3-obliq/obliqbinstd/.cvsignore, m3-obliq/obliqbinui/.cvsignore, m3-obliq/obliqlib3D/.cvsignore, m3-obliq/obliqlibanim/.cvsignore, m3-obliq/obliqlibemb/.cvsignore, m3-obliq/obliqlibm3/.cvsignore, m3-obliq/obliqlibui/.cvsignore, m3-obliq/obliqparse/.cvsignore, m3-obliq/obliqprint/.cvsignore, m3-obliq/obliqrt/.cvsignore, m3-obliq/obliqsrvstd/.cvsignore, m3-obliq/obliqsrvui/.cvsignore, m3-obliq/synex/.cvsignore, m3-obliq/synloc/.cvsignore, m3-obliq/visualobliq/.cvsignore, m3-obliq/vocgi/.cvsignore, m3-obliq/voquery/.cvsignore, m3-obliq/vorun/.cvsignore, m3-pkgtools/pkgfprint/.cvsignore, m3-pkgtools/pkgobj/.cvsignore, m3-pkgtools/pkgq/.cvsignore, m3-pkgtools/pkgsrv/.cvsignore, m3-pkgtools/pkgtool/.cvsignore, m3-sys/cminstall/.cvsignore, m3-sys/dll2lib/.cvsignore, m3-sys/fix_nl/.cvsignore, m3-sys/libdump/.cvsignore, m3-sys/m3back/.cvsignore, m3-sys/m3cc/.cvsignore, m3-sys/m3cc/gcc/gcc/.cvsignore, m3-sys/m3cgcat/.cvsignore, m3-sys/m3cggen/.cvsignore, m3-sys/m3front/.cvsignore, m3-sys/m3gdb/.cvsignore, m3-sys/m3linker/.cvsignore, m3-sys/m3loader/.cvsignore, m3-sys/m3middle/.cvsignore, m3-sys/m3objfile/.cvsignore, m3-sys/m3quake/.cvsignore, m3-sys/m3scanner/.cvsignore, m3-sys/m3staloneback/.cvsignore, m3-sys/m3tools/.cvsignore, m3-sys/mklib/.cvsignore, m3-sys/windowsResources/.cvsignore, m3-tools/cmpdir/.cvsignore, m3-tools/cmpfp/.cvsignore, m3-tools/coverage/.cvsignore, m3-tools/dirfp/.cvsignore, m3-tools/gnuemacs/.cvsignore, m3-tools/hexdump/.cvsignore, m3-tools/m3browser/.cvsignore, m3-tools/m3bundle/.cvsignore, m3-tools/m3markup/.cvsignore, m3-tools/m3scan/.cvsignore, m3-tools/m3tk/.cvsignore, m3-tools/m3tohtml/.cvsignore, m3-tools/m3totex/.cvsignore, m3-tools/mtex/.cvsignore, m3-tools/pp/.cvsignore, m3-tools/recordheap/.cvsignore, m3-tools/rehearsecode/.cvsignore, m3-tools/replayheap/.cvsignore, m3-tools/showheap/.cvsignore, m3-tools/shownew/.cvsignore, m3-tools/showthread/.cvsignore, m3-tools/uniq/.cvsignore, m3-ui/anim3D/.cvsignore, m3-ui/bicycle/.cvsignore, m3-ui/cmvbt/.cvsignore, m3-ui/codeview/.cvsignore, m3-ui/formsedit/.cvsignore, m3-ui/formsvbt/.cvsignore, m3-ui/formsvbtpixmaps/.cvsignore, m3-ui/formsview/.cvsignore, m3-ui/images/.cvsignore, m3-ui/juno-2/juno-app/.cvsignore, m3-ui/juno-2/juno-app/pkl-fonts/.cvsignore, m3-ui/juno-2/juno-compiler/.cvsignore, m3-ui/juno-2/juno-compiler/tests/compiler/.cvsignore, m3-ui/juno-2/juno-compiler/tests/lexer/.cvsignore, m3-ui/juno-2/juno-compiler/tests/parser/.cvsignore, m3-ui/juno-2/juno-compiler/tests/scope/.cvsignore, m3-ui/juno-2/juno-machine/.cvsignore, m3-ui/juno-2/juno-machine/linear/.cvsignore, m3-ui/juno-2/juno-machine/nonlinear/.cvsignore, m3-ui/juno-2/juno-machine/runtime/.cvsignore, m3-ui/juno-2/juno-machine/solve/.cvsignore, m3-ui/jvideo/.cvsignore, m3-ui/m3zume/.cvsignore, m3-ui/mg/.cvsignore, m3-ui/PEX/.cvsignore, m3-ui/mgkit/.cvsignore, m3-ui/motif/.cvsignore, m3-ui/motif/tests/.cvsignore, m3-ui/opengl/.cvsignore, m3-ui/ui/.cvsignore, m3-ui/ui/test/Argus/.cvsignore, m3-ui/ui/test/BadBricks/.cvsignore, m3-ui/ui/test/ButtonTest/.cvsignore, m3-ui/ui/test/Cards/.cvsignore, m3-ui/ui/test/ColorMonster/.cvsignore, m3-ui/ui/test/Draw/.cvsignore, m3-ui/ui/test/EyesVBT/.cvsignore, m3-ui/ui/test/Hello/.cvsignore, m3-ui/ui/test/Monster/.cvsignore, m3-ui/ui/test/Sketch2/.cvsignore, m3-ui/ui/test/StarAnim/.cvsignore, m3-ui/ui/test/Track/.cvsignore, m3-ui/ui/test/TypeInTest/.cvsignore, m3-ui/ui-tests/pixmapcomtest/.cvsignore, m3-ui/ui-tests/pixtest/.cvsignore, m3-ui/ui-tests/test18/.cvsignore, m3-ui/ui-tests/test19/.cvsignore, m3-ui/ui-tests/test25/.cvsignore, m3-ui/ui-tests/test26/.cvsignore, m3-ui/ui-tests/test27/.cvsignore, m3-ui/ui-tests/test28/.cvsignore, m3-ui/ui-tests/test29/.cvsignore, m3-ui/ui-tests/test30/.cvsignore, m3-ui/ui-tests/test31/.cvsignore, m3-ui/ui-tests/test32/.cvsignore, m3-ui/ui-tests/test33/.cvsignore, m3-ui/ui-tests/test35/.cvsignore, m3-ui/ui-tests/texturecomtest/.cvsignore, m3-ui/ui-tests/tiles/.cvsignore, m3-ui/ui-tests/track/.cvsignore, m3-ui/vbtkit/.cvsignore, m3-ui/videovbt/.cvsignore, m3-ui/webvbt/.cvsignore, m3-ui/webvbt/src/hyperpage/.cvsignore, m3-ui/X11R4/.cvsignore, m3-ui/zeus/.cvsignore, m3-win/import-libs/.cvsignore, m3-www/deckscape/.cvsignore, m3-www/http/.cvsignore, m3-www/proxy/.cvsignore, m3-www/web/.cvsignore, m3-www/webcat/.cvsignore, m3-www/webscape/.cvsignore, scripts/.cvsignore: update all .cvsignore files and add some missing ones previously nearly all .cvsignore files were of the same size, good, weakly implying they had identical contents, good at least one was different but I don't know which one 2009-07-17 11:26 jkrell * m3-sys/cm3/.cvsignore: add names without 32 2009-07-17 11:25 jkrell * m3-sys/cm3/.cvsignore: add more platforms, from list in cminstall/src/config-no-install, plus some fixed names for future (I386_LINUX, I386_NT, I386_FREEBSD, SPARC_SOLARIS); this will become all moot if/when we move the outputs really out of the source tree 2009-07-17 11:21 jkrell * m3-sys/cm3/.cvsignore: first sort it 2009-07-17 11:19 jkrell * m3-libs/m3core/src/unix/Common/: Uerror.i3, UerrorX.h: wrap more values, under #ifdef the point being to allow porting of C code to Modula-3, even if it isn't portable The old Unix *.i3 files varied by platform, so the #ifdefs that cause same here are ok. 2009-07-17 10:51 jkrell * m3-libs/m3core/src/unix/Common/Uerror.i3: sort this too 2009-07-17 10:50 jkrell * m3-libs/m3core/src/unix/Common/UerrorX.h: sort the two lists, before adding more entries 2009-07-17 10:31 jkrell * m3-sys/: cm3/src/M3Build.m3, cminstall/src/config-no-install/Darwin.common: shorten symlink chain length from 2 to 1 2009-07-17 10:16 jkrell * m3-sys/cm3/src/Makefile.m3: disable printing target until/unless I figure out why it prints empty 2009-07-16 20:59 jkrell * m3-ui/motif/src/Xmacro.i3: remove unnecessary extern names 2009-07-16 20:27 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, Unix.common: symlink the .a files into the lib directory also from pkg; otherwise makes me nervous that static linking is broken when not building with overrides 2009-07-16 19:59 jkrell * m3-sys/m3quake/src/m3makefile: missed another important file in MxConfig/M3Config repair 2009-07-16 19:58 jkrell * m3-libs/libm3/src/m3makefile: missed a file in MxConfig/M3Config repair 2009-07-16 19:56 jkrell * examples/win32-dll/src/RTMain.m3, m3-libs/libm3/src/config/m3makefile, m3-libs/sgml/src/SGML.m3, m3-libs/sgml/src/m3makefile, m3-obliq/obliqrt/src/Obliq.m3, m3-obliq/obliqrt/src/m3makefile, m3-sys/cm3/src/Builder.m3, m3-sys/cm3/src/M3Build.m3, m3-sys/cm3/src/Main.m3, m3-sys/cm3/src/Makefile.m3, m3-sys/cm3ide/src/misc/Default.m3, m3-sys/m3quake/src/MxConfig.i3, m3-tools/m3browser/src/Main.m3, m3-tools/m3browser/src/m3makefile, m3-tools/m3scan/src/M3Scanner.m3, m3-tools/m3scan/src/m3makefile, m3-tools/m3scan/src/m3scan_M3ID.i3, m3-tools/m3scan/src/m3scan_M3ID.m3, m3-tools/m3scan/src/M3ID.i3, m3-tools/m3scan/src/M3ID.m3, m3-tools/m3tk/src/toolframe/M3PathTool.m3, m3-tools/m3tohtml/src/FilePath.m3, m3-tools/m3tohtml/src/Main.m3, m3-tools/m3tohtml/src/Msg.m3: eliminate libm3/M3Config use m3quake/MxCOnfig instead Where a value is computed at runtime from the live config file, use MxConfig.Get() That way there are no bogus paths computed/recorded at build time. rename m3scan/M3ID to m3scan_M3ID to avoid the duplicate unit that would have otherwise resulted (from bringing together m3scan and m3quake where before it was m3scan and libm3; m3quake imports m3middle, which has an M3ID also) use foo.tmp instead of .foo.i3 I don't like hidden files. One confusing point is that there would have been both MxConfig.TARGET (static) and MxConfig.Get("TARGET") (dynamic) MxConfig.TARGET is the host, Get("TARGET") is the host..so change it to MxConfig.HOST for that matter, put HOST_ on all the static values maybe that is overkill, because most code doesn't think about or care about "host" vs. "target" But that code shouldn't be using MxConfig maybe? Maybe OSConfig? This should address Peter Eiserloh's concerns. 2009-07-16 19:33 jkrell * m3-sys/m3cc/src/m3makefile: change both I386_SOLARIS and AMD64_SOLARIS to i686-sun-solaris2.10 yes that seems wierd but I think it is correct, amd64-solaris2.10 doesn't seem to work, and solaris2 I think isn't specific enough 2009-07-16 19:26 jkrell * scripts/python/do-cm3-std.py: don't build m3bundle out of dependency order 2009-07-16 19:25 jkrell * scripts/python/pylib.py: add to std (my unfortunate copy of the data) -- import-libs, m3core, libm3, cm3ide, windowsResources, cm3ide, deepcopy, sgml -- M3Config users and stuff I should be building anyway, and don't make building std dependent on first building min/core/whatever -- std == all 2009-07-16 09:26 jkrell * scripts/python/pylib.py: quiet down 2009-07-15 17:24 wagner * caltech-parser/parserlib/: kext/src/m3makefile, klex/src/m3makefile, ktok/src/m3makefile, kyacc/src/m3makefile, parserlib/src/parser.tmpl: consistently rename programs lex, yacc, tok, ext to klex, kyacc, ktok, kext 2009-07-15 06:14 wagner * scripts/: version, make-dist.sh: upgrade version for RC2 (first public RC) 2009-07-14 20:23 wagner * scripts/make-dist.sh: ignore m3tk manpage fragments 2009-07-14 16:28 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: adapt for and I think tested on: FreeBSD/x86 FreeBSD/amd64 NetBSD/x86 NetBSD/amd64 OpenBSD/amd64 Solaris/x86 Solaris/amd64 given apparent underlying portability, also adapt for: Solaris/sparc64 NetBSD/* also tested on: Linux/x86 Linux/amd64 MacosX/x86 MacosX/amd64 MacosX/ppc (compile only) MacosX/ppc64 (compile only) possibly broken for, not tested: OpenBSD/x86 OpenBSD/ppc probably not broken for but not tested: Interix/x86 (just returns 0) Cygwin/x86 (just returns 0) MacosX/arm (just returns 0) Linux/ppc Solaris/sparc Solaris/sparc64 Linux/sparc Hpux/hppa etc. 2009-07-14 16:15 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_SOLARIS, I386_SOLARIS, SOLgnu, SOLsun, SPARC64_SOLARIS, Solaris.common: initial config files for I386_SOLARIS and AMD64_SOLARIS, not yet in use 2009-07-14 16:02 jkrell * m3-libs/m3core/src/runtime/POSIX/test_signal.c: don't use __FUNCTION__, for compatibility with Sun compiler 2009-07-13 11:20 jkrell * m3-sys/cminstall/src/config-no-install/Solaris.common: work toward making it usable for I386/AMD64 (perhaps not correctly factored) and untested change to make it like Unix.common to fix dynamic linking 2009-07-13 11:13 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: fix like Darwin 2009-07-13 11:12 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: fix newlines (dos2unix) 2009-07-13 11:04 jkrell * m3-sys/cminstall/src/config-no-install/: Darwin.common, Unix.common: share code between make_lib and skip_lib 2009-07-13 10:08 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: Fix dynamic linking on Darwin. There doesn't seem to be an existing way to install symlinks that point both from and to LIB_INSTALL so we are forced to use something a bit roundabout. As well, you can't symlink path1/foo to path2/bar, only path1/foo to path2/foo and path1/bar to path1/foo. So we have: jaypro:m3core jay$ otool -L /cm3/lib/libm3core.dylib /cm3/lib/libm3core.dylib: @executable_path/../lib/libm3core.5.dylib (compatibility version 5.0.0, current version 5.2.0) /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4) jaypro:m3core jay$ ls -l /cm3/lib/ total 3152 -rwxr-xr-x 1 jay admin 1602336 Jul 13 02:41 libm3core.5.2.dylib lrwxr-xr-x 1 jay admin 44 Jul 13 02:50 libm3core.5.dylib -> ../pkg/m3core/AMD64_DARWIN/libm3core.5.dylib lrwxr-xr-x 1 jay admin 42 Jul 13 02:50 libm3core.dylib -> ../pkg/m3core/AMD64_DARWIN/libm3core.dylib jaypro:m3core jay$ ls -l /cm3/pkg/m3core/AMD64_DARWIN/ total 4352 -rw-r--r-- 1 jay admin 1832 Jul 13 00:21 Compiler.i3 lrwxr-xr-x 1 jay admin 32 Jul 13 02:50 libm3core.5.2.dylib -> ../../../lib/libm3core.5.2.dylib lrwxr-xr-x 1 jay admin 32 Jul 13 02:50 libm3core.5.dylib -> ../../../lib/libm3core.5.2.dylib -rw-r--r-- 1 jay admin 1991136 Jul 13 02:41 libm3core.a lrwxr-xr-x 1 jay admin 32 Jul 13 02:50 libm3core.dylib -> ../../../lib/libm3core.5.2.dylib -rw-r--r-- 1 jay admin 213624 Jul 13 00:21 libm3core.m3x In future we will probably try to do better. In particular we will probably just use -L/cm3/lib in the link command and not pass all the -Lpkg options. Note however that the static .libs are in the pkg directories and not in the lib directory, so actually we need to chose -Lpkg vs. -Llib based on standalone or not. Perhaps we will move the static libs also. (standalone isn't a single bit, libraries that a non-standalone executable uses might be standalone; it might also work to pass both -Llib and -Lpkg, for each -l) We should also probably use a runpath of @executable/../lib/libfoo.5.2.dylib, instead of libfoo.5.dylib, to avoid several levels of indirection at load time (yes, I realize it was somewhat deliberate, but I don't believe we strive for the high level of binary compatibility that this system has in mind.) Then we could dispense entirely with several of the links. This also fixes build not to ship, and the code duplication between make_lib and skip_lib. 2009-07-13 09:27 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_LINUX, I386_DARWIN, I386_INTERIX, I386_OPENBSD, LINUXLIBC6, MIPS64_OPENBSD, NT386, NT386GNU, NT386MINGNU, PA32_HPUX, PA64_HPUX, PPC32_OPENBSD, PPC_DARWIN, PPC_LINUX, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD: These instances of GNU_PLATFORM have never been used, so remove them. Maybe in time they will return here, maybe. The main such list that does get some use is in m3-sys/m3cc/src/m3makefile, for building cross compilers. m3-sys/m3gdb/src/m3makefile also has a list, for building cross debuggers. 2009-07-13 09:17 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_NETBSD, AMD64_OPENBSD: add config files for AMD64_NETBSD, AMD64_OPENBSD, based trivially on their I386 counterparts 2009-07-13 09:09 jkrell * m3-libs/m3core/src/thread.quake, m3-libs/libm3/src/os/POSIX/m3makefile, m3-libs/libm3/src/random/m3makefile, m3-libs/m3core/src/C/Common/m3makefile, m3-libs/m3core/src/Csupport/m3makefile, m3-libs/m3core/src/float/m3makefile, m3-libs/m3core/src/runtime/m3makefile, m3-libs/m3core/src/runtime/POSIX/m3makefile, m3-libs/m3core/src/runtime/common/Compiler.tmpl, m3-libs/m3core/src/runtime/common/m3makefile, m3-libs/m3core/src/time/POSIX/m3makefile, m3-libs/m3core/src/unix/Common/m3makefile, m3-sys/m3middle/src/Target.i3, m3-sys/m3middle/src/Target.m3: add support for AMD64_NETBSD and AMD64_OPENBSD, except config files 2009-07-13 08:56 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: go back a version 2009-07-13 08:49 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: safekeeping: roundabout fix for dynamic linking and only do 'ship' stuff when shipping 2009-07-13 08:42 jkrell * m3-libs/m3core/src/unix/Common/: Uconstants.c, Usignal.i3: wrap every #define in one signal.h that I looked at all new ones under #ifdef 2009-07-13 08:32 jkrell * m3-libs/m3core/src/C/AMD64_FREEBSD/Csetjmp.i3: fix AMD64_FREEBSD jmpbuf size here too 2009-07-13 08:24 jkrell * m3-sys/m3middle/src/Target.m3: lower AMD64_FREEBSD jmpbuf size from 16_80 to correct 16_60 2009-07-13 08:21 jkrell * m3-sys/m3middle/src/Target.m3: just fix newlines (dos2unix) 2009-07-13 08:02 jkrell * scripts/config/config.c: use unambiguous hex usually instead of decimal 2009-07-13 07:39 jkrell * scripts/config/config.c: add #include sys/socket.h for OpenBSD/amd64 2009-07-13 07:37 jkrell * scripts/config/config.c: some platforms apparently require calling va_start against before reusing a va_list else they crash (NetBSD/amd64) 2009-07-13 02:49 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, Darwin.common: switch AMD64_DARWIN to more factored config files use -arch_only on I386_DARWIN like on AMD64_DARWIN (this might break older I386_DARWIN and might also be entirely unneeded; will investigate further) 2009-07-13 02:43 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: remove tabs, and spaces at ends of lines 2009-07-13 01:48 jkrell * m3-libs/m3core/src/: C/AMD64_DARWIN/m3makefile, C/Common/m3makefile, unix/Common/m3makefile, unix/darwin-generic/m3makefile: switch AMD64_DARWIN to reduced portable Unix/*.i3 files now all platforms use these files (Usignal.i3 still needs work, for systems with user threads) switch AMD64_DARWIN to reduced portable Cstdio.i3 and common (actually larger by one function) Cstring.i3 the AMD64_DARWIN specific Cstdio.i3 conflicted somehow with the portable Unix/*.i3 files all platforms should use these files but they don't yet (as well, maybe they should be expanded to include more functions and wrapped in C?) 2009-07-13 00:45 jkrell * m3-sys/m3cc/src/m3makefile: tweaks for PPC_DARWIN on AMD64_DARWIN host, though ultimately I hit problems that for now I'm not going to debug 2009-07-12 23:38 jkrell * scripts/python/pylib.py: detect AMD64_DARWIN using sysctl, uname doesn't cut it 2009-07-12 11:13 jkrell * m3-sys/cminstall/src/config-no-install/Darwin.common: use gcc -arch if it supports it -- so that C compilation and linking of PPC_DARWIN works on AMD64_DARWIN host 2009-07-12 10:28 jkrell * m3-sys/cminstall/src/config-no-install/PPC_DARWIN: use explicit ppc assembler if it exists, else regular as This lets PPC_DARWIN build ok on AMD64_DARWIN host. 2009-07-12 02:27 jkrell * m3-sys/m3cc/src/m3makefile: use regular source for Interix 2009-07-12 02:27 jkrell * m3-sys/m3cc/gcc/gcc/system.h: apply my own small diff for Interix -- autoconf of strsignal is a recurring problem, also was a problem on Cygwin, related here to -D_ALL_SOURCE 2009-07-12 02:26 jkrell * m3-sys/m3cc/gcc/gcc/: config.gcc, config/i386/t-interix: bring over diffs for Interix 2009-07-11 17:11 hosking * m3-libs/m3core/src/runtime/common/RTCollector.m3: FlushThreadState is called by the GC thread, which has thread.inCritical > 0. 2009-07-11 16:23 hosking * m3-libs/m3core/src/runtime/common/RTHeapRep.i3: Why was collection disabled? 2009-07-11 01:54 rodney * m3-sys/m3gdb/gdb/: bfd/elf64-x86-64.c, gdb/m3-exp.c: Fix a configuration bug that caused m3gdb to get incorrect addresses for locals and formals. This shows up an unfortunate problem on 64-bit targets that is probably not fixable without going to Dwarf2 debug format. The stabs format has a field named "value" than holds, in some cases, displacements. This field is apparently always 32 bits in the object file, regardless of the target word size. This bug fix sets a configuration parameter that causes this value to be sign-extended when reading in. This will no doubt work fine for displacements, which are signed and not so large in absolute value. But this field can also be used in other ways, including holding constant values. Constant values that don't fit in 32 bits will get garbled. 'as' on AMD64_LINUX (at least Ubuntu 8.04) assembles .stabs lines with only 32 bits for this field. 'objdump -G' prints 64 bits worth in its output, but apparently does not read 64, rather reads 32 and pads to 64. Probably the world at large is not interested in updating stabs and the tools that use it for 64 bits. Nor has the newer bfd code in gdb 6.8 made the sign-extension fix. Other files parallel to m3gdb/gdb/bfd/elf64-x86-64.c, for other 64-bit targets probably need this change too. 2009-07-09 15:18 mika * m3-libs/m3core/src/unix/Common/: Uconstants.c, Usignal.i3: Added SIGSTOP to the list of signals wrapped on Unix. Hope this is OK. 2009-07-08 06:27 wagner * scripts/make-src-dist-all.sh: add missing caltech packages to src-all 2009-07-07 13:57 jkrell * scripts/make-dist.sh: move up the lines that set M3_PORTABLE_RUN_PATH 2009-07-07 13:54 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_LINUX, FreeBSD4, I386_INTERIX, LINUXLIBC6, PPC_LINUX, Solaris.common: add $ORIGIN along with $ORIGIN/../lib so that files might be colocated in the same directory Here it appears that Darwin might not offer the same option. Also these files need further factoring. Also this shows which platforms use $ORIGIN, and which do not -- e.g. AMD64_FREEBSD does not yet, HPUX does not, NetBSD does not (known -- it requires 5.0) 2009-07-06 21:12 jkrell * m3-libs/m3core/src/unix/Common/Upthread.c: fix 2009-07-06 21:09 jkrell * m3-libs/m3core/src/unix/Common/Upthread.c: guard against macros multiple evaluating where I intended to 2009-07-06 21:08 jkrell * m3-libs/m3core/src/unix/Common/Upthread.c: mind that m3_pthread_t is void* and thread_t might be different 2009-07-06 20:58 jkrell * m3-libs/m3core/src/unix/Common/: Upthread.c, Upthread.i3, m3makefile: wrap everything 2009-07-06 20:56 jkrell * m3-libs/m3core/src/unix/Common/Upthread.i3: pthread_yield does not exist 2009-07-06 09:05 jkrell * m3-libs/m3core/src/unix/Common/Uexec.c: fix 2009-07-06 09:03 jkrell * m3-libs/m3core/src/unix/Common/: Uexec.c, Uexec.i3: wrap everything 2009-07-06 08:50 jkrell * m3-libs/m3core/src/unix/Common/Uugid.c: remove a newline and fix the return type 2009-07-06 08:24 jkrell * m3-libs/m3core/src/unix/Common/: Uuio.c, m3unix.h: let it compile for Win32 2009-07-06 08:20 jkrell * m3-libs/m3core/src/unix/Common/: Uprocess.c, m3makefile, m3unix.h: forgotten parts of 'wrap everything' 2009-07-05 21:57 jkrell * m3-libs/m3core/src/unix/Common/: Udir.i3, Uprocess.i3, Upwd.i3: wrap everything 2009-07-05 21:07 jkrell * m3-libs/m3core/src/unix/Common/: Upwd.c, Usignal.c, Uugid.c, Uuio.c, Uutmp.c: wrap everything (adds) 2009-07-05 21:06 jkrell * m3-libs/m3core/src/unix/Common/: UdirC.c, Unix.i3, UnixC.c, Usignal.i3, Utime.i3, UtimeC.c, Uugid.i3, Uuio.i3, Uutmp.i3, m3makefile, m3unix.h: wrap everything 2009-07-03 19:40 wagner * scripts/pkginfo.txt: remove PEX from devlib 2009-07-03 18:56 wagner * scripts/make-dist.sh: improve manpage pattern 2009-07-03 18:49 wagner * scripts/pkginfo.txt: remove tcl from base and core, mtex from tool 2009-07-03 18:36 wagner * scripts/make-dist.sh: remove empty bullet lists 2009-07-03 18:27 wagner * m3-sys/cm3/src/m3makefile: add missing man page for m3makefile 2009-07-03 18:18 wagner * scripts/make-dist.sh: add min collection, but do not archive it as workspace collection 2009-07-03 17:53 wagner * scripts/make-dist.sh: add man pages of section 7, too 2009-07-03 14:02 jkrell * m3-libs/m3core/src/unix/Common/Unix.i3: add comment directing not to wrap vfork in C 2009-07-03 13:37 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, Darwin.common, Solaris.common, Unix.common, cm3cfg.common: Put .so/.dylib files only in root/lib and not in root/pkg. Delete any that are leftover in root/pkg. Despite the multiple platform-specific implementations, tested only on AMD64_LINUX. Solaris, Darwin, subject to breakage due to typos, etc., but it should be at least close to correct. 2009-07-03 11:30 jkrell * m3-sys/m3gdb/src/m3overrides: add empty m3overrides to fix an ignored error in Tinderbox 2009-07-03 11:28 jkrell * m3-libs/unittest-numeric/src/m3overrides: add missing m3overrides to fix an ignored error in Tinderbox 2009-07-03 10:51 jkrell * m3-sys/cm3/src/version.quake: one more character so it works 2009-07-03 10:48 jkrell * m3-sys/cm3/src/: m3makefile, version.quake: use relative paths using .. instead of using ROOT; more changes later 2009-07-03 05:53 jkrell * m3-sys/cm3/src/: Builder.m3, M3Build.m3, Utils.i3, Utils.m3, UtilsPosix.m3, UtilsWin32.m3, m3makefile, version.quake: go back a version 2009-07-02 16:45 hosking * m3-sys/cm3/src/: Builder.m3, M3Build.m3, Utils.i3, Utils.m3, UtilsPosix.m3, UtilsWin32.m3, m3makefile, version.quake: Revert the ROOT and hard/symbolic link hackage introduced recently so that I can at least bootstrap in the normal way. Jay, you are going to need to convince me that these hacks are worth it. For now they just seem to have complicated things unnecessarily (and made things much messier too). 2009-07-02 06:13 wagner * m3-sys/: cm3/src/m3makefile, cm3/src/m3makefile.7, m3quake/src/m3makefile, m3quake/src/quake.7: add man pages from Peter Eiserloh 2009-07-01 17:05 jkrell * m3-libs/: m3core/src/runtime/POSIX/RTPerfTool.m3, libm3/src/os/POSIX/ProcessPosixCommon.m3, libm3/src/perftool/POSIX/LowPerfTool.m3: switch from vfork to fork On no system is vfork actually believed faster. In particular, vfork on Cygwin is just as slow as fork, and on most/all other systems, fork is fast. vfork cannot be portably wrapped in C, whereas fork can be. In particular: search the web for "opengroup vfork": http://www.opengroup.org/onlinepubs/009695399/functions/vfork.html The vfork() function shall be equivalent to fork(), except that the behavior is undefined if the process created by vfork() either modifies any data other than a variable of type pid_t used to store the return value from vfork(), or returns from the function in which vfork() was called, or calls any other function before successfully calling _exit() or one of the exec family of functions. That is: The caller of vfork cannot return before calling _exit or exec. A C wrapper would violate that. 2009-07-01 11:10 jkrell * m3-sys/mklib/src/Main.m3: copy types/constants from WinNT.i3 in order to work with older non-Win32 m3core 2009-06-29 22:36 jkrell * m3-sys/m3cc/gcc/: intl/ChangeLog, intl/Makefile.in, intl/README, intl/VERSION, intl/aclocal.m4, intl/bindtextdom.c, intl/config.h.in, intl/config.intl.in, intl/configure, intl/configure.ac, intl/dcgettext.c, intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c, intl/dngettext.c, intl/eval-plural.h, intl/explodename.c, intl/finddomain.c, intl/gettext.c, intl/gettextP.h, intl/gmo.h, intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c, intl/libgnuintl.h, intl/loadinfo.h, intl/loadmsgcat.c, intl/localcharset.c, intl/localcharset.h, intl/locale.alias, intl/localealias.c, intl/localename.c, intl/log.c, intl/ngettext.c, intl/osdep.c, intl/plural-exp.c, intl/plural-exp.h, intl/plural.c, intl/plural.y, intl/relocatable.c, intl/relocatable.h, intl/textdomain.c, libgomp/ChangeLog, libgomp/Makefile.am, libgomp/Makefile.in, libgomp/acinclude.m4, libgomp/aclocal.m4, libgomp/alloc.c, libgomp/barrier.c, libgomp/config.h.in, libgomp/configure, libgomp/configure.ac, libgomp/configure.tgt, libgomp/critical.c, libgomp/env.c, libgomp/error.c, libgomp/fortran.c, libgomp/iter.c, libgomp/libgomp.h, libgomp/libgomp.info, libgomp/libgomp.map, libgomp/libgomp.spec.in, libgomp/libgomp.texi, libgomp/libgomp_f.h.in, libgomp/libgomp_g.h, libgomp/loop.c, libgomp/omp.h.in, libgomp/omp_lib.f90.in, libgomp/omp_lib.h.in, libgomp/ordered.c, libgomp/parallel.c, libgomp/sections.c, libgomp/single.c, libgomp/team.c, libgomp/work.c, libgomp/config/linux/affinity.c, libgomp/config/linux/bar.c, libgomp/config/linux/bar.h, libgomp/config/linux/lock.c, libgomp/config/linux/mutex.c, libgomp/config/linux/mutex.h, libgomp/config/linux/omp-lock.h, libgomp/config/linux/proc.c, libgomp/config/linux/sem.c, libgomp/config/linux/sem.h, libgomp/config/linux/alpha/futex.h, libgomp/config/linux/ia64/futex.h, libgomp/config/linux/powerpc/futex.h, libgomp/config/linux/s390/futex.h, libgomp/config/linux/sparc/futex.h, libgomp/config/linux/x86/futex.h, libgomp/config/mingw32/proc.c, libgomp/config/mingw32/time.c, libgomp/config/posix/affinity.c, libgomp/config/posix/bar.c, libgomp/config/posix/bar.h, libgomp/config/posix/lock.c, libgomp/config/posix/mutex.c, libgomp/config/posix/mutex.h, libgomp/config/posix/omp-lock.h, libgomp/config/posix/proc.c, libgomp/config/posix/sem.c, libgomp/config/posix/sem.h, libgomp/config/posix/time.c, libgomp/config/posix95/lock.c, libgomp/config/posix95/omp-lock.h, libgomp/testsuite/Makefile.am, libgomp/testsuite/Makefile.in, libgomp/testsuite/config/default.exp, libgomp/testsuite/lib/libgomp-dg.exp, libgomp/testsuite/lib/libgomp.exp, libgomp/testsuite/libgomp.c/atomic-1.c, libgomp/testsuite/libgomp.c/atomic-10.c, libgomp/testsuite/libgomp.c/atomic-2.c, libgomp/testsuite/libgomp.c/barrier-1.c, libgomp/testsuite/libgomp.c/c.exp, libgomp/testsuite/libgomp.c/copyin-1.c, libgomp/testsuite/libgomp.c/copyin-2.c, libgomp/testsuite/libgomp.c/copyin-3.c, libgomp/testsuite/libgomp.c/critical-1.c, libgomp/testsuite/libgomp.c/critical-2.c, libgomp/testsuite/libgomp.c/lib-1.c, libgomp/testsuite/libgomp.c/loop-1.c, libgomp/testsuite/libgomp.c/loop-2.c, libgomp/testsuite/libgomp.c/loop-3.c, libgomp/testsuite/libgomp.c/nested-1.c, libgomp/testsuite/libgomp.c/nested-2.c, libgomp/testsuite/libgomp.c/nestedfn-1.c, libgomp/testsuite/libgomp.c/nestedfn-2.c, libgomp/testsuite/libgomp.c/nestedfn-3.c, libgomp/testsuite/libgomp.c/nestedfn-4.c, libgomp/testsuite/libgomp.c/nestedfn-5.c, libgomp/testsuite/libgomp.c/omp-loop01.c, libgomp/testsuite/libgomp.c/omp-loop02.c, libgomp/testsuite/libgomp.c/omp-loop03.c, libgomp/testsuite/libgomp.c/omp-nested-1.c, libgomp/testsuite/libgomp.c/omp-parallel-for.c, libgomp/testsuite/libgomp.c/omp-parallel-if.c, libgomp/testsuite/libgomp.c/omp-single-1.c, libgomp/testsuite/libgomp.c/omp-single-2.c, libgomp/testsuite/libgomp.c/omp-single-3.c, libgomp/testsuite/libgomp.c/omp_hello.c, libgomp/testsuite/libgomp.c/omp_matvec.c, libgomp/testsuite/libgomp.c/omp_orphan.c, libgomp/testsuite/libgomp.c/omp_reduction.c, libgomp/testsuite/libgomp.c/omp_workshare1.c, libgomp/testsuite/libgomp.c/omp_workshare2.c, libgomp/testsuite/libgomp.c/omp_workshare3.c, libgomp/testsuite/libgomp.c/omp_workshare4.c, libgomp/testsuite/libgomp.c/ordered-1.c, libgomp/testsuite/libgomp.c/ordered-2.c, libgomp/testsuite/libgomp.c/ordered-3.c, libgomp/testsuite/libgomp.c/parallel-1.c, libgomp/testsuite/libgomp.c/pr24455-1.c, libgomp/testsuite/libgomp.c/pr24455.c, libgomp/testsuite/libgomp.c/pr26171.c, libgomp/testsuite/libgomp.c/pr26943-1.c, libgomp/testsuite/libgomp.c/pr26943-2.c, libgomp/testsuite/libgomp.c/pr26943-3.c, libgomp/testsuite/libgomp.c/pr26943-4.c, libgomp/testsuite/libgomp.c/pr29947-1.c, libgomp/testsuite/libgomp.c/pr29947-2.c, libgomp/testsuite/libgomp.c/pr30494.c, libgomp/testsuite/libgomp.c/pr32362-1.c, libgomp/testsuite/libgomp.c/pr32362-2.c, libgomp/testsuite/libgomp.c/pr32362-3.c, libgomp/testsuite/libgomp.c/pr32468.c, libgomp/testsuite/libgomp.c/pr33880.c, libgomp/testsuite/libgomp.c/pr34513.c, libgomp/testsuite/libgomp.c/pr35130.c, libgomp/testsuite/libgomp.c/pr35196.c, libgomp/testsuite/libgomp.c/private-1.c, libgomp/testsuite/libgomp.c/reduction-1.c, libgomp/testsuite/libgomp.c/reduction-2.c, libgomp/testsuite/libgomp.c/reduction-3.c, libgomp/testsuite/libgomp.c/reduction-4.c, libgomp/testsuite/libgomp.c/sections-1.c, libgomp/testsuite/libgomp.c/shared-1.c, libgomp/testsuite/libgomp.c/shared-2.c, libgomp/testsuite/libgomp.c/shared-3.c, libgomp/testsuite/libgomp.c/single-1.c, libgomp/testsuite/libgomp.c/single-2.c, libgomp/testsuite/libgomp.c/vla-1.c, libgomp/testsuite/libgomp.c/appendix-a/a.15.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.16.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.18.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.19.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.2.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.21.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.26.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.29.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.3.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.33.3.c, libgomp/testsuite/libgomp.c/appendix-a/a.36.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.39.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.4.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.40.1.c, libgomp/testsuite/libgomp.c/appendix-a/a.5.1.c, libgomp/testsuite/libgomp.c++/atomic-1.C, libgomp/testsuite/libgomp.c++/c++.exp, libgomp/testsuite/libgomp.c++/copyin-1.C, libgomp/testsuite/libgomp.c++/copyin-2.C, libgomp/testsuite/libgomp.c++/ctor-1.C, libgomp/testsuite/libgomp.c++/ctor-2.C, libgomp/testsuite/libgomp.c++/ctor-3.C, libgomp/testsuite/libgomp.c++/ctor-4.C, libgomp/testsuite/libgomp.c++/ctor-5.C, libgomp/testsuite/libgomp.c++/ctor-6.C, libgomp/testsuite/libgomp.c++/ctor-7.C, libgomp/testsuite/libgomp.c++/ctor-8.C, libgomp/testsuite/libgomp.c++/ctor-9.C, libgomp/testsuite/libgomp.c++/loop-1.C, libgomp/testsuite/libgomp.c++/loop-2.C, libgomp/testsuite/libgomp.c++/loop-3.C, libgomp/testsuite/libgomp.c++/loop-4.C, libgomp/testsuite/libgomp.c++/loop-5.C, libgomp/testsuite/libgomp.c++/loop-6.C, libgomp/testsuite/libgomp.c++/loop-7.C, libgomp/testsuite/libgomp.c++/master-1.C, libgomp/testsuite/libgomp.c++/nested-1.C, libgomp/testsuite/libgomp.c++/parallel-1.C, libgomp/testsuite/libgomp.c++/pr24455-1.C, libgomp/testsuite/libgomp.c++/pr24455.C, libgomp/testsuite/libgomp.c++/pr26691.C, libgomp/testsuite/libgomp.c++/pr26943.C, libgomp/testsuite/libgomp.c++/pr27337.C, libgomp/testsuite/libgomp.c++/pr30703.C, libgomp/testsuite/libgomp.c++/pr34513.C, libgomp/testsuite/libgomp.c++/reduction-1.C, libgomp/testsuite/libgomp.c++/reduction-2.C, libgomp/testsuite/libgomp.c++/reduction-3.C, libgomp/testsuite/libgomp.c++/sections-1.C, libgomp/testsuite/libgomp.c++/shared-1.C, libgomp/testsuite/libgomp.c++/shared-2.C, libgomp/testsuite/libgomp.c++/single-1.C, libgomp/testsuite/libgomp.c++/single-2.C, libgomp/testsuite/libgomp.c++/single-3.C, libgomp/testsuite/libgomp.fortran/character1.f90, libgomp/testsuite/libgomp.fortran/character2.f90, libgomp/testsuite/libgomp.fortran/condinc1.f, libgomp/testsuite/libgomp.fortran/condinc1.inc, libgomp/testsuite/libgomp.fortran/condinc2.f, libgomp/testsuite/libgomp.fortran/condinc3.f90, libgomp/testsuite/libgomp.fortran/condinc4.f90, libgomp/testsuite/libgomp.fortran/crayptr1.f90, libgomp/testsuite/libgomp.fortran/crayptr2.f90, libgomp/testsuite/libgomp.fortran/do1.f90, libgomp/testsuite/libgomp.fortran/do2.f90, libgomp/testsuite/libgomp.fortran/fortran.exp, libgomp/testsuite/libgomp.fortran/jacobi.f, libgomp/testsuite/libgomp.fortran/lib1.f90, libgomp/testsuite/libgomp.fortran/lib2.f, libgomp/testsuite/libgomp.fortran/lib3.f, libgomp/testsuite/libgomp.fortran/nestedfn1.f90, libgomp/testsuite/libgomp.fortran/nestedfn2.f90, libgomp/testsuite/libgomp.fortran/nestedfn3.f90, libgomp/testsuite/libgomp.fortran/omp_atomic1.f90, libgomp/testsuite/libgomp.fortran/omp_atomic2.f90, libgomp/testsuite/libgomp.fortran/omp_cond1.f, libgomp/testsuite/libgomp.fortran/omp_cond2.f, libgomp/testsuite/libgomp.fortran/omp_cond3.F90, libgomp/testsuite/libgomp.fortran/omp_cond4.F90, libgomp/testsuite/libgomp.fortran/omp_hello.f, libgomp/testsuite/libgomp.fortran/omp_orphan.f, libgomp/testsuite/libgomp.fortran/omp_parse1.f90, libgomp/testsuite/libgomp.fortran/omp_parse2.f90, libgomp/testsuite/libgomp.fortran/omp_parse3.f90, libgomp/testsuite/libgomp.fortran/omp_parse4.f90, libgomp/testsuite/libgomp.fortran/omp_reduction.f, libgomp/testsuite/libgomp.fortran/omp_workshare1.f, libgomp/testsuite/libgomp.fortran/omp_workshare2.f, libgomp/testsuite/libgomp.fortran/pr25162.f, libgomp/testsuite/libgomp.fortran/pr25219.f90, libgomp/testsuite/libgomp.fortran/pr27395-1.f90, libgomp/testsuite/libgomp.fortran/pr27395-2.f90, libgomp/testsuite/libgomp.fortran/pr27416-1.f90, libgomp/testsuite/libgomp.fortran/pr27916-1.f90, libgomp/testsuite/libgomp.fortran/pr27916-2.f90, libgomp/testsuite/libgomp.fortran/pr28390.f, libgomp/testsuite/libgomp.fortran/pr29629.f90, libgomp/testsuite/libgomp.fortran/pr32359.f90, libgomp/testsuite/libgomp.fortran/pr32550.f90, libgomp/testsuite/libgomp.fortran/pr33880.f90, libgomp/testsuite/libgomp.fortran/pr34020.f90, libgomp/testsuite/libgomp.fortran/pr35130.f90, libgomp/testsuite/libgomp.fortran/reduction1.f90, libgomp/testsuite/libgomp.fortran/reduction2.f90, libgomp/testsuite/libgomp.fortran/reduction3.f90, libgomp/testsuite/libgomp.fortran/reduction4.f90, libgomp/testsuite/libgomp.fortran/reduction5.f90, libgomp/testsuite/libgomp.fortran/reduction6.f90, libgomp/testsuite/libgomp.fortran/reference1.f90, libgomp/testsuite/libgomp.fortran/reference2.f90, libgomp/testsuite/libgomp.fortran/retval1.f90, libgomp/testsuite/libgomp.fortran/retval2.f90, libgomp/testsuite/libgomp.fortran/sharing1.f90, libgomp/testsuite/libgomp.fortran/sharing2.f90, libgomp/testsuite/libgomp.fortran/stack.f90, libgomp/testsuite/libgomp.fortran/threadprivate1.f90, libgomp/testsuite/libgomp.fortran/threadprivate2.f90, libgomp/testsuite/libgomp.fortran/threadprivate3.f90, libgomp/testsuite/libgomp.fortran/vla1.f90, libgomp/testsuite/libgomp.fortran/vla2.f90, libgomp/testsuite/libgomp.fortran/vla3.f90, libgomp/testsuite/libgomp.fortran/vla4.f90, libgomp/testsuite/libgomp.fortran/vla5.f90, libgomp/testsuite/libgomp.fortran/vla6.f90, libgomp/testsuite/libgomp.fortran/vla7.f90, libgomp/testsuite/libgomp.fortran/workshare1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.15.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.16.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.18.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.19.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.2.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.21.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.22.7.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.22.8.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.26.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.28.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.28.2.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.28.3.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.28.4.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.28.5.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.3.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.31.4.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.31.5.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.33.3.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.38.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.39.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.4.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.40.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a.5.1.f90, libgomp/testsuite/libgomp.fortran/appendix-a/a10.1.f90, libmudflap/ChangeLog, libmudflap/Makefile.am, libmudflap/Makefile.in, libmudflap/acinclude.m4, libmudflap/aclocal.m4, libmudflap/config.h.in, libmudflap/configure, libmudflap/configure.ac, libmudflap/libtool-version, libmudflap/mf-heuristics.c, libmudflap/mf-hooks1.c, libmudflap/mf-hooks2.c, libmudflap/mf-hooks3.c, libmudflap/mf-impl.h, libmudflap/mf-runtime.c, libmudflap/mf-runtime.h, libmudflap/testsuite/Makefile.am, libmudflap/testsuite/Makefile.in, libmudflap/testsuite/mfconfig.exp.in, libmudflap/testsuite/config/default.exp, libmudflap/testsuite/lib/libmudflap.exp, libmudflap/testsuite/lib/mfdg.exp, libmudflap/testsuite/libmudflap.c/cfrags.exp, libmudflap/testsuite/libmudflap.c/externs-1.c, libmudflap/testsuite/libmudflap.c/externs-2.c, libmudflap/testsuite/libmudflap.c/externs.exp, libmudflap/testsuite/libmudflap.c/fail1-frag.c, libmudflap/testsuite/libmudflap.c/fail10-frag.c, libmudflap/testsuite/libmudflap.c/fail11-frag.c, libmudflap/testsuite/libmudflap.c/fail12-frag.c, libmudflap/testsuite/libmudflap.c/fail13-frag.c, libmudflap/testsuite/libmudflap.c/fail14-frag.c, libmudflap/testsuite/libmudflap.c/fail15-frag.c, libmudflap/testsuite/libmudflap.c/fail16-frag.c, libmudflap/testsuite/libmudflap.c/fail17-frag.c, libmudflap/testsuite/libmudflap.c/fail18-frag.c, libmudflap/testsuite/libmudflap.c/fail19-frag.c, libmudflap/testsuite/libmudflap.c/fail2-frag.c, libmudflap/testsuite/libmudflap.c/fail20-frag.c, libmudflap/testsuite/libmudflap.c/fail21-frag.c, libmudflap/testsuite/libmudflap.c/fail22-frag.c, libmudflap/testsuite/libmudflap.c/fail23-frag.c, libmudflap/testsuite/libmudflap.c/fail25-frag.c, libmudflap/testsuite/libmudflap.c/fail26-frag.c, libmudflap/testsuite/libmudflap.c/fail27-frag.c, libmudflap/testsuite/libmudflap.c/fail28-frag.c, libmudflap/testsuite/libmudflap.c/fail29-frag.c, libmudflap/testsuite/libmudflap.c/fail3-frag.c, libmudflap/testsuite/libmudflap.c/fail30-frag.c, libmudflap/testsuite/libmudflap.c/fail31-frag.c, libmudflap/testsuite/libmudflap.c/fail32-frag.c, libmudflap/testsuite/libmudflap.c/fail33-frag.c, libmudflap/testsuite/libmudflap.c/fail34-frag.c, libmudflap/testsuite/libmudflap.c/fail35-frag.c, libmudflap/testsuite/libmudflap.c/fail36-frag.c, libmudflap/testsuite/libmudflap.c/fail37-frag.c, libmudflap/testsuite/libmudflap.c/fail38-frag.c, libmudflap/testsuite/libmudflap.c/fail39-frag.c, libmudflap/testsuite/libmudflap.c/fail4-frag.c, libmudflap/testsuite/libmudflap.c/fail40-frag.c, libmudflap/testsuite/libmudflap.c/fail5-frag.c, libmudflap/testsuite/libmudflap.c/fail6-frag.c, libmudflap/testsuite/libmudflap.c/fail7-frag.c, libmudflap/testsuite/libmudflap.c/fail8-frag.c, libmudflap/testsuite/libmudflap.c/fail9-frag.c, libmudflap/testsuite/libmudflap.c/heap-scalestress.c, libmudflap/testsuite/libmudflap.c/hook-allocstuff.c, libmudflap/testsuite/libmudflap.c/hook2-allocstuff.c, libmudflap/testsuite/libmudflap.c/pass-stratcliff.c, libmudflap/testsuite/libmudflap.c/pass1-frag.c, libmudflap/testsuite/libmudflap.c/pass10-frag.c, libmudflap/testsuite/libmudflap.c/pass11-frag.c, libmudflap/testsuite/libmudflap.c/pass12-frag.c, libmudflap/testsuite/libmudflap.c/pass13-frag.c, libmudflap/testsuite/libmudflap.c/pass14-frag.c, libmudflap/testsuite/libmudflap.c/pass15-frag.c, libmudflap/testsuite/libmudflap.c/pass16-frag.c, libmudflap/testsuite/libmudflap.c/pass17-frag.c, libmudflap/testsuite/libmudflap.c/pass18-frag.c, libmudflap/testsuite/libmudflap.c/pass19-frag.c, libmudflap/testsuite/libmudflap.c/pass2-frag.c, libmudflap/testsuite/libmudflap.c/pass20-frag.c, libmudflap/testsuite/libmudflap.c/pass21-frag.c, libmudflap/testsuite/libmudflap.c/pass22-frag.c, libmudflap/testsuite/libmudflap.c/pass23-frag.c, libmudflap/testsuite/libmudflap.c/pass24-frag.c, libmudflap/testsuite/libmudflap.c/pass25-frag.c, libmudflap/testsuite/libmudflap.c/pass26-frag.c, libmudflap/testsuite/libmudflap.c/pass29-frag.c, libmudflap/testsuite/libmudflap.c/pass3-frag.c, libmudflap/testsuite/libmudflap.c/pass30-frag.c, libmudflap/testsuite/libmudflap.c/pass32-frag.c, libmudflap/testsuite/libmudflap.c/pass33-frag.c, libmudflap/testsuite/libmudflap.c/pass34-frag.c, libmudflap/testsuite/libmudflap.c/pass35-frag.c, libmudflap/testsuite/libmudflap.c/pass36-frag.c, libmudflap/testsuite/libmudflap.c/pass38-frag.c, libmudflap/testsuite/libmudflap.c/pass4-frag.c, libmudflap/testsuite/libmudflap.c/pass42-frag.c, libmudflap/testsuite/libmudflap.c/pass43-frag.c, libmudflap/testsuite/libmudflap.c/pass44-frag.c, libmudflap/testsuite/libmudflap.c/pass45-frag.c, libmudflap/testsuite/libmudflap.c/pass46-frag.c, libmudflap/testsuite/libmudflap.c/pass47-frag.c, libmudflap/testsuite/libmudflap.c/pass48-frag.c, libmudflap/testsuite/libmudflap.c/pass49-frag.c, libmudflap/testsuite/libmudflap.c/pass5-frag.c, libmudflap/testsuite/libmudflap.c/pass50-frag.c, libmudflap/testsuite/libmudflap.c/pass51-frag.c, libmudflap/testsuite/libmudflap.c/pass52-frag.c, libmudflap/testsuite/libmudflap.c/pass53-frag.c, libmudflap/testsuite/libmudflap.c/pass54-frag.c, libmudflap/testsuite/libmudflap.c/pass56-frag.c, libmudflap/testsuite/libmudflap.c/pass6-frag.c, libmudflap/testsuite/libmudflap.c/pass62-frag.c, libmudflap/testsuite/libmudflap.c/pass7-frag.c, libmudflap/testsuite/libmudflap.c/pass8-frag.c, libmudflap/testsuite/libmudflap.c/pass9-frag.c, libmudflap/testsuite/libmudflap.c++/c++frags.exp, libmudflap/testsuite/libmudflap.c++/ctors-1.cxx, libmudflap/testsuite/libmudflap.c++/ctors-2.cxx, libmudflap/testsuite/libmudflap.c++/ctors.exp, libmudflap/testsuite/libmudflap.c++/error1-frag.cxx, libmudflap/testsuite/libmudflap.c++/error2-frag.cxx, libmudflap/testsuite/libmudflap.c++/fail24-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass27-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass28-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass31-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass41-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass55-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass57-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass58-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass60-frag.cxx, libmudflap/testsuite/libmudflap.c++/pass61-frag.cxx, libmudflap/testsuite/libmudflap.cth/cthfrags.exp, libmudflap/testsuite/libmudflap.cth/pass37-frag.c, libmudflap/testsuite/libmudflap.cth/pass39-frag.c, libmudflap/testsuite/libmudflap.cth/pass40-frag.c, libmudflap/testsuite/libmudflap.cth/pass59-frag.c, libssp/ChangeLog, libssp/Makefile.am, libssp/Makefile.in, libssp/aclocal.m4, libssp/config.h.in, libssp/configure, libssp/configure.ac, libssp/gets-chk.c, libssp/libtool-version, libssp/memcpy-chk.c, libssp/memmove-chk.c, libssp/mempcpy-chk.c, libssp/memset-chk.c, libssp/snprintf-chk.c, libssp/sprintf-chk.c, libssp/ssp-local.c, libssp/ssp.c, libssp/ssp.map, libssp/stpcpy-chk.c, libssp/strcat-chk.c, libssp/strcpy-chk.c, libssp/strncat-chk.c, libssp/strncpy-chk.c, libssp/vsnprintf-chk.c, libssp/vsprintf-chk.c, libssp/ssp/ssp.h.in, libssp/ssp/stdio.h, libssp/ssp/string.h, libssp/ssp/unistd.h: remove intl, libgomp, libssp, libmudflap that we don't build, use, or change 2009-06-29 20:09 jkrell * scripts/python/make-iexpress.py: obsolete due to apparently iexpress having a low limit on the number of files it can package, using .msi instead 2009-06-29 20:07 jkrell * scripts/python/: bootntgnu.py, bootntmingnu.py: These are obsolete, they wouldn't work any longer and boto1.py works for many/all platforms. 2009-06-29 19:53 jkrell * m3-win/import-libs/src/advapi32.quake, m3-win/import-libs/src/comctl32.quake, m3-win/import-libs/src/comdlg32.quake, m3-win/import-libs/src/gdi32.quake, m3-win/import-libs/src/glu32.quake, m3-win/import-libs/src/kernel32.quake, m3-win/import-libs/src/m3makefile, m3-win/import-libs/src/make-lib-1.cmd, m3-win/import-libs/src/make-lib-2.cmd, m3-win/import-libs/src/make-lib.cmd, m3-win/import-libs/src/netapi32.quake, m3-win/import-libs/src/odbc32.quake, m3-win/import-libs/src/opengl32.quake, m3-win/import-libs/src/t.cmd, m3-win/import-libs/src/user32.quake, m3-win/import-libs/src/winspool.quake, m3-win/import-libs/src/wsock32.quake, doc/src_reports/formsvbt.pdf, doc/src_reports/formsvbt.ps.gz, doc/src_reports/m3syntax.ps, doc/src_reports/m3tokens.ps, doc/src_reports/obliq.pdf, doc/src_reports/src-068.pdf, doc/src_reports/src-068.ps, doc/src_reports/src-069.pdf, doc/src_reports/src-115.ps, doc/src_reports/vbtkit.ps, m3-win/vcredist.txt, scripts/version, doc/src_reports/doc.gif, doc/src_reports/m3poster.ps, doc/src_reports/obliq.ps, doc/src_reports/src-069.ps.gz, doc/src_reports/src-113.pdf, doc/src_reports/src-113.ps, doc/src_reports/src-115.pdf, doc/src_reports/vbtkit.pdf, doc/src_reports/blue_paper/architecture.gif, doc/src_reports/blue_paper/architecture_full.gif, doc/src_reports/blue_paper/bg.gif, doc/src_reports/blue_paper/blueLogo.gif, doc/src_reports/blue_paper/dark.gif, doc/src_reports/blue_paper/light.gif, doc/src_reports/blue_paper/screen.gif, doc/src_reports/blue_paper/screen_full.gif, doc/tutorial/ui/mouse/Event.m3-sep, doc/tutorial/ui/mouse/Mouse.m3-elided, doc/tutorial/ui/feedback/feedback1.gif, doc/tutorial/ui/feedback/feedback2.gif, doc/tutorial/ui/feedback/feedback3.gif, doc/tutorial/ui/switches/switches1.gif, doc/tutorial/ui/switches/switches2.gif, doc/tutorial/ui/switches/switches3.gif, doc/tutorial/ui/switches/switches4.gif, m3-sys/cminstall/src/config-no-install/ARM_DARWIN, m3-sys/cminstall/src/config-no-install/NT386MINGNU, www/uploaded-archives/targets.txt, m3-sys/cm3/src/config/Tombstone.txt, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_exec-stack_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_gcc, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_host, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_host-openbsd_c, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_i386_openbsd64_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_i386_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_i386_openbsdelf_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_m68k_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_mips_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_openbsd-libpthread_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_rs6000_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_t-openbsd, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_vax_openbsd_h, m3-sys/m3cc/src/patches/openbsd/patch-gcc_config_x-openbsd, m3-sys/m3cc/src/patches/openbsd/patch-gcc_tree-ssa-pre_c, m3-sys/m3cc/src/patches/openbsd/patch-libtool_m4, m3-sys/m3cc/src/patches/openbsd/readme.txt: fixing executable permissions 2009-06-29 19:47 jkrell * m3-sys/m3tests/src/: Test.common, append_include.cmd, build_all.cmd, p2/p209/stderr.build, p2/p209/stderr.pgm, p2/p209/stdout.build, p2/p209/stdout.pgm, p2/p210/stderr.build, p2/p210/stderr.pgm, p2/p210/stdout.build, p2/p211/stderr.build, p2/p211/stderr.pgm, p2/p211/stdout.build, p2/p211/stdout.pgm, p2/p212/stderr.build, p2/p212/stderr.pgm, p2/p212/stdout.build, p2/p212/stdout.pgm: just removing executable permissionse 2009-06-29 19:40 jkrell * doc/help/interfaces.html, doc/help/bib.html, doc/help/concise-bib.html, doc/help/getting-started.html, doc/help/index.html, doc/help/cm3/acks.html, doc/help/cm3/cm3.html, doc/help/cm3/compiling.html, doc/help/cm3/debugging.html, doc/help/cm3/example.html, doc/help/cm3/files.html, doc/help/cm3/gc.html, doc/help/cm3/gnuemacs.html, doc/help/cm3/history.html, doc/help/cm3/m3args.html, doc/help/cm3/m3ship.html, doc/help/cm3/m3where.html, doc/help/cm3/old-bib.html, doc/help/cm3/packages.html, doc/help/cm3/pprint.html, doc/help/cm3/pragmas.html, doc/help/cm3/quake.html, doc/help/cm3/restrictions.html, doc/help/cm3/runtime.html, doc/help/cm3/scheduler.html, doc/help/cm3/showheap.html, doc/help/cm3/shownew.html, doc/help/cm3/showthread.html, doc/help/cm3/signals.html, doc/help/cm3/m3build/emacs.html, doc/help/cm3/m3build/exports.html, doc/help/cm3/m3build/foreign.html, doc/help/cm3/m3build/generics.html, doc/help/cm3/m3build/hiding.html, doc/help/cm3/m3build/imports.html, doc/help/cm3/m3build/m3build.html, doc/help/cm3/m3build/m3options.html, doc/help/cm3/m3build/machine.html, doc/help/cm3/m3build/manpage.html, doc/help/cm3/m3build/misc.html, doc/help/cm3/m3build/netobj.html, doc/help/cm3/m3build/noweb.html, doc/help/cm3/m3build/options.html, doc/help/cm3/m3build/overrides.html, doc/help/cm3/m3build/progs.html, doc/help/cm3/m3build/resources.html, doc/help/cm3/m3build/sources.html, doc/reference/apply.html, doc/reference/block.html, doc/reference/boolops.html, doc/reference/builtin.html, doc/reference/case.html, doc/reference/constexpr.html, doc/reference/decls.html, doc/reference/designators.html, doc/reference/eval.html, doc/reference/exceptions.html, doc/reference/floats.html, doc/reference/generics.html, doc/reference/imports.html, doc/reference/incdec.html, doc/reference/interfaces.html, doc/reference/intfs.html, doc/reference/intro.html, doc/reference/license.html, doc/reference/lock.html, doc/reference/loop.html, doc/reference/m3.html, doc/reference/modules.html, doc/reference/new.html, doc/reference/numbers.html, doc/reference/opsyntax.html, doc/reference/raise.html, doc/reference/real-intf.html, doc/reference/recursion.html, doc/reference/relations.html, doc/reference/safety.html, doc/reference/syntax.html, doc/reference/text-intf.html, doc/reference/thread-intf.html, doc/reference/tryexcept.html, doc/reference/type-decl.html, doc/reference/typeops.html, doc/reference/types.html, doc/reference/units.html, doc/reference/unsafe.html, doc/reference/word-intf.html, doc/reference/acks.html, doc/reference/arithmetic.html, doc/reference/arrays.html, doc/reference/assign.html, doc/reference/authors.html, doc/reference/calls.html, doc/reference/constants.html, doc/reference/construct.html, doc/reference/conventions.html, doc/reference/defns.html, doc/reference/example.html, doc/reference/exit.html, doc/reference/exprs.html, doc/reference/float-intf.html, doc/reference/floatmode.html, doc/reference/for.html, doc/reference/if.html, doc/reference/index.html, doc/reference/init.html, doc/reference/m3index.html, doc/reference/nil.html, doc/reference/objects.html, doc/reference/opaques.html, doc/reference/ordinal.html, doc/reference/packed.html, doc/reference/procedures.html, doc/reference/procs.html, doc/reference/records.html, doc/reference/refs.html, doc/reference/repeat.html, doc/reference/return.html, doc/reference/revelations.html, doc/reference/sequence.html, doc/reference/sets.html, doc/reference/stmts.html, doc/reference/subtypes.html, doc/reference/textops.html, doc/reference/texts.html, doc/reference/tryfinally.html, doc/reference/typecase.html, doc/reference/variables.html, doc/reference/while.html, doc/reference/with.html, doc/src_reports/index.html, doc/src_reports/license.html, doc/src_reports/blue_paper/index.html, doc/tutorial/m3/m3_1.html, doc/tutorial/m3/m3_10.html, doc/tutorial/m3/m3_11.html, doc/tutorial/m3/m3_12.html, doc/tutorial/m3/m3_13.html, doc/tutorial/m3/m3_14.html, doc/tutorial/m3/m3_15.html, doc/tutorial/m3/m3_16.html, doc/tutorial/m3/m3_17.html, doc/tutorial/m3/m3_18.html, doc/tutorial/m3/m3_19.html, doc/tutorial/m3/m3_2.html, doc/tutorial/m3/m3_20.html, doc/tutorial/m3/m3_21.html, doc/tutorial/m3/m3_22.html, doc/tutorial/m3/m3_23.html, doc/tutorial/m3/m3_24.html, doc/tutorial/m3/m3_25.html, doc/tutorial/m3/m3_26.html, doc/tutorial/m3/m3_27.html, doc/tutorial/m3/m3_28.html, doc/tutorial/m3/m3_29.html, doc/tutorial/m3/m3_3.html, doc/tutorial/m3/m3_30.html, doc/tutorial/m3/m3_31.html, doc/tutorial/m3/m3_32.html, doc/tutorial/m3/m3_33.html, doc/tutorial/m3/m3_34.html, doc/tutorial/m3/m3_35.html, doc/tutorial/m3/m3_36.html, doc/tutorial/m3/m3_37.html, doc/tutorial/m3/m3_38.html, doc/tutorial/m3/m3_39.html, doc/tutorial/m3/m3_4.html, doc/tutorial/m3/m3_40.html, doc/tutorial/m3/m3_41.html, doc/tutorial/m3/m3_42.html, doc/tutorial/m3/m3_43.html, doc/tutorial/m3/m3_44.html, doc/tutorial/m3/m3_45.html, doc/tutorial/m3/m3_46.html, doc/tutorial/m3/m3_47.html, doc/tutorial/m3/m3_48.html, doc/tutorial/m3/m3_49.html, doc/tutorial/m3/m3_5.html, doc/tutorial/m3/m3_50.html, doc/tutorial/m3/m3_51.html, doc/tutorial/m3/m3_52.html, doc/tutorial/m3/m3_53.html, doc/tutorial/m3/m3_54.html, doc/tutorial/m3/m3_55.html, doc/tutorial/m3/m3_56.html, doc/tutorial/m3/m3_57.html, doc/tutorial/m3/m3_58.html, doc/tutorial/m3/m3_59.html, doc/tutorial/m3/m3_6.html, doc/tutorial/m3/m3_60.html, doc/tutorial/m3/m3_61.html, doc/tutorial/m3/m3_62.html, doc/tutorial/m3/m3_63.html, doc/tutorial/m3/m3_64.html, doc/tutorial/m3/m3_65.html, doc/tutorial/m3/m3_66.html, doc/tutorial/m3/m3_67.html, doc/tutorial/m3/m3_68.html, doc/tutorial/m3/m3_69.html, doc/tutorial/m3/m3_7.html, doc/tutorial/m3/m3_70.html, doc/tutorial/m3/m3_71.html, doc/tutorial/m3/m3_72.html, doc/tutorial/m3/m3_73.html, doc/tutorial/m3/m3_74.html, doc/tutorial/m3/m3_75.html, doc/tutorial/m3/m3_76.html, doc/tutorial/m3/m3_77.html, doc/tutorial/m3/m3_78.html, doc/tutorial/m3/m3_79.html, doc/tutorial/m3/m3_8.html, doc/tutorial/m3/m3_80.html, doc/tutorial/m3/m3_81.html, doc/tutorial/m3/m3_82.html, doc/tutorial/m3/m3_83.html, doc/tutorial/m3/m3_9.html, doc/tutorial/m3/m3_toc.html, doc/tutorial/m3/old-index.html, doc/tutorial/ui/drag/tut-drag.html, doc/tutorial/ui/hello/tut-hello.html, doc/tutorial/ui/mouse/tut-mouse.html, doc/tutorial/ui/shadow/tut-shadow.html, doc/tutorial/ui/checkbox/tut-checkbox.html, doc/tutorial/ui/feedback/tut-feedback.html, doc/tutorial/ui/key/tut-key.html, doc/tutorial/ui/numeric/tut-numeric.html, doc/tutorial/ui/overlap/tut-overlap.html, doc/tutorial/ui/rubber/tut-rubber.html, doc/tutorial/ui/menu2/tut-menu2.html, doc/tutorial/ui/overlay/tut-overlay.html, doc/tutorial/ui/push/tut-push.html, doc/tutorial/ui/react/tut-react.html, doc/tutorial/ui/source/tut-source.html, doc/tutorial/ui/browser/tut-browser.html, doc/tutorial/ui/confirm/tut-confirm.html, doc/tutorial/ui/cross/tut-cross.html, doc/tutorial/ui/draw/tut-draw.html, doc/tutorial/ui/intro/tut-intro.html, doc/tutorial/ui/switches/tut-switches.html, doc/tutorial/ui/tutorial.html, doc/tutorial/ui/common/tut-common.html, doc/tutorial/ui/radio/tut-radio.html, doc/tutorial/ui/script/tut-script.html, doc/tutorial/ui/scroll/tut-scroll.html, doc/tutorial/ui/update/tut-update.html, doc/tutorial/index.html, doc/tutorial/ui/edit/tut-edit.html, doc/tutorial/ui/list/tut-list.html, doc/tutorial/ui/menu1/tut-menu1.html, doc/tutorial/ui/text/tut-text.html, www/installation-windows.html: no change, just removing executable permission 2009-06-29 19:35 jkrell * m3-tools/macapi/src/m3makefile, m3-db/db/src/postgresql/m3makefile, m3-db/db/src/postgresql/demo/m3makefile, m3-db/db/src/mysql/m3makefile, m3-db/db/demo/m3makefile, m3-db/db/src/mysql/demo/m3makefile, m3-win/import-libs/src/m3makefile, m3-win/import-libs/src/m3overrides, doc/help/cm3/m3build/m3makefile.html, doc/tutorial/ui/script/m3makefile, m3-sys/m3tests/src/p2/p209/m3makefile, m3-sys/m3tests/src/p2/p210/m3makefile, m3-sys/m3tests/src/p2/p211/m3makefile, m3-sys/m3tests/src/p2/p212/m3makefile, m3-sys/cm3/test/src/m3makefile, m3-sys/windowsResources/src/m3overrides: fixing executable permissions, no change 2009-06-29 19:30 jkrell * m3-tools/macapi/src/Main.m3, m3-comm/udp/src/WIN32/UDPWin32.m3, m3-db/db/src/DB.m3, m3-db/db/src/MySQLDB.i3, m3-db/db/src/MySQLDBStub.m3, m3-db/db/src/ODBCDB.i3, m3-db/db/src/ODBCDBStub.m3, m3-db/db/src/PostgreSQLDB.i3, m3-db/db/src/PostgreSQLDBStub.m3, m3-db/db/src/odbc/ODBCDB.m3, m3-db/db/src/odbc/ODBCDBRep.i3, m3-db/db/src/postgresql/PostgreSQLDB.m3, m3-db/db/src/postgresql/PostgreSQL.i3, m3-db/db/src/postgresql/PostgreSQLDBRep.i3, m3-db/db/src/postgresql/demo/DemoPG.m3, m3-db/db/src/mysql/MySQL.i3, m3-db/db/src/mysql/MySQLDB.m3, m3-db/db/src/mysql/MySQLDBRep.i3, m3-db/db/src/mysql/demo/DemoMY.m3, m3-db/db/demo/DemoDB.m3, m3-win/import-libs/src/t.c, scripts/config/config.c, scripts/config/jmpbuf.c, scripts/config/mode.c, scripts/config/sigsuspend.c, scripts/config/stat.c, scripts/config/time.c, doc/tutorial/ui/confirm/ConfirmVBT.i3, doc/tutorial/ui/confirm/ConfirmVBT.m3, doc/tutorial/ui/radio/RadioButtons.m3, m3-sys/m3gdb/gdb/include/opcode/bfin.h, m3-sys/m3tests/src/TestC.c, m3-sys/m3tests/src/p2/p210/Main.m3, m3-sys/m3tests/src/p2/p209/Main.m3, m3-sys/m3tests/src/p2/p212/Main.m3, m3-sys/m3tests/src/p2/p211/A.i3, m3-sys/m3tests/src/p2/p211/A.m3, m3-sys/m3tests/src/p2/p211/C.c, m3-sys/m3cc/gcc/gcc/config/i386/host-cygwin.c, m3-sys/m3cc/gcc/gcc/config/i386/winnt-cxx.c, m3-sys/m3cc/gcc/gcc/config/i386/winnt-stubs.c, m3-sys/cm3/test/src/t.m3: working on removing executable permission 2009-06-29 19:23 jkrell * m3-libs/: sysutils/src/SystemC.c, libm3/src/os/POSIX/FSPosixC.c, libm3/src/os/POSIX/FSPosixC.i3, libm3/src/os/POSIX/FilePosixC.c, libm3/src/os/POSIX/FilePosixC.i3, libm3/src/os/POSIX/OSConfigPosixC.c, libm3/src/os/POSIX/OSConfigPosixC.i3, libm3/src/os/POSIX/ProcessCygwin.m3, libm3/src/os/POSIX/ProcessPosix.i3, libm3/src/os/POSIX/ProcessPosixCommon.i3, libm3/src/os/POSIX/ProcessPosixCommon.m3, sgml/src/FSM.i3, sgml/src/FSM.m3, sgml/src/SGML.i3, sgml/src/SGML.m3, sgml/src/SGMLC.atg, sgml/src/SGMLC.i3, sgml/src/SGMLCP.m3, sgml/src/SGMLCS.m3, sgml/src/SGMLCScanner.i3, sgml/src/SGMLElement.i3, sgml/src/SGMLPrint.i3, sgml/src/SGMLPrint.m3, sgml/src/SGMLRep.i3, sgml/src/m3makefile: working on removing executable permission 2009-06-29 19:20 jkrell * m3-libs/m3core/src/: thread.quake, win32/WinCommCtrl.i3, win32/WinImageList.i3, win32/WinImageList.m3, win32/WinListView.i3, win32/WinListView.m3, win32/WinMidi.i3, win32/WinNTc.c, win32/WinTabCon.i3, win32/WinTabCon.m3, win32/WinUserC.c, unix/cygwin/Usysdep.i3, unix/freebsd-common/Usysdep.i3, unix/freebsd-common/m3makefile, unix/linux-32/Upthreadtypes.i3, unix/linux-64/Upthreadtypes.i3, unix/uin-common/Uin.i3, unix/uin-common/m3makefile, unix/Common/Uconstants.c, unix/Common/Udir.i3, unix/Common/UdirC.c, unix/Common/Uerror.i3, unix/Common/UerrorX.h, unix/Common/Uexec.c, unix/Common/Uexec.i3, unix/Common/Ugrp.c, unix/Common/Ugrp.i3, unix/Common/Uin.c, unix/Common/Umman.c, unix/Common/Umman.i3, unix/Common/Unetdb.c, unix/Common/Unetdb.i3, unix/Common/Unix.i3, unix/Common/Unix.m3, unix/Common/UnixC.c, unix/Common/UnixLink.c, unix/Common/Uprocess.i3, unix/Common/Upthread.i3, unix/Common/Upwd.i3, unix/Common/Usched.i3, unix/Common/Usocket.c, unix/Common/Ustat.i3, unix/Common/Utermio.i3, unix/Common/Utime.i3, unix/Common/UtimeC.c, unix/Common/Utypes.i3, unix/Common/Uucontext.c, unix/Common/Uucontext.h, unix/Common/Uucontext.i3, unix/Common/Uugid.i3, unix/Common/Uuio.i3, unix/Common/Uutmp.i3, unix/Common/m3makefile, unix/Common/m3unix.h, unix/linux-common/Usysdep.i3, unix/linux-common/m3makefile, unix/netbsd-common/Usysdep.i3, unix/netbsd-common/m3makefile, unix/openbsd-common/Usysdep.i3, unix/openbsd-common/m3makefile, unix/Common/Usignal.i3, unix/Common/Usocket.i3, unix/Common/UstatC.c, unix/Common/context/m3makefile, unix/Common/context/setjmp/Makefile, unix/Common/context/setjmp/config.c, unix/Common/context/setjmp/context.c, unix/Common/context/setjmp/context.h, unix/Common/context/setjmp/m3makefile, unix/WIN32/Uuio.i3, unix/hpux-common/Usysdep.i3, unix/hpux-common/m3makefile, context/tcontext.c, context/winfiber/context.c, context/winfiber/context.h, unix/WIN32/Unix.i3, unix/WIN32/m3makefile, unix/darwin-common/Usysdep.i3, unix/darwin-common/m3makefile, unix/solaris-common/Usysdep.i3, unix/solaris-common/m3makefile, unix/uin-len/Uin.i3, unix/uin-len/m3makefile, Csupport/big-endian/dtoa.c, Csupport/big-endian/m3makefile, Csupport/little-endian/dtoa.c, Csupport/little-endian/m3makefile, context/x86/context.c, context/x86/context.h, context/x86/contextasm.s, context/x86/gendef.c, context/x86msvc/context.c, context/x86msvc/context.h, context/x86msvc/readme.txt, runtime/POSIX/RTSignal.m3, runtime/POSIX/RTSignalC.c, runtime/POSIX/RTSignalC.i3, runtime/POSIX/RTThread.m3, runtime/SPARC64_SOLARIS/RTMachine.i3, runtime/SPARC64_SOLARIS/RTSignal.m3, runtime/SPARC64_SOLARIS/m3makefile, runtime/common/RTLinkerC.c, runtime/common/RTMachine.i3, time/WIN32/Time.m3, C/Common/Csignal.i3, C/Common/Cstdint.i3, C/Common/Cstdio.i3, C/Common/Cstring.i3, C/I386_OPENBSD/Csetjmp.i3, C/I386_OPENBSD/m3makefile, C/SPARC64_OPENBSD/Csetjmp.i3, C/SPARC64_OPENBSD/m3makefile, C/PA32_HPUX/Csetjmp.i3, C/PA32_HPUX/m3makefile, C/PA64_HPUX/Csetjmp.i3, C/PA64_HPUX/m3makefile, C/PPC32_OPENBSD/Csetjmp.i3, C/PPC32_OPENBSD/m3makefile, C/SPARC64_LINUX/Csetjmp.i3, C/SPARC64_LINUX/m3makefile, C/SPARC64_SOLARIS/Csetjmp.i3, C/SPARC64_SOLARIS/m3makefile, C/AMD64_FREEBSD/Csetjmp.i3, C/AMD64_FREEBSD/m3makefile, C/MIPS64_OPENBSD/Csetjmp.i3, C/MIPS64_OPENBSD/m3makefile, C/SPARC32_LINUX/Csetjmp.i3, C/SPARC32_LINUX/m3makefile, thread/Common/SchedulerPosix.i3, thread/POSIX/ThreadPosix.h, thread/POSIX/ThreadPosix.i3, thread/POSIX/ThreadPosixC.c, thread/PTHREAD/ThreadPThreadC.c, thread/WIN32/ThreadEvent.i3, thread/WIN32/ThreadInternal.i3, thread/WIN32/ThreadWin32.i3, thread/WIN32/ThreadWin32C.c: working on removing executable permission 2009-06-29 19:17 jkrell * m3-libs/arithmetic/doc/.cvsignore: fixing executable permissions, no diff (should just keep all output out of the source tree, then don't need .cvsignore) 2009-06-29 19:16 jkrell * m3-libs/arithmetic/: Makefile, copyrite.txt, mktar.bat, report.txt: fixing executable permission, no diff 2009-06-29 19:12 jkrell * m3-libs/arithmetic/: doc/Makefile, doc/arch.tex, doc/backgnd.html, doc/complex.tex, doc/concept.tex, doc/fft.tex, doc/integer.tex, doc/interpolation.tex, doc/introduction.tex, doc/m3na.tex, doc/matrix.tex, doc/mcbiog.txt, doc/ode.tex, doc/people.html, doc/polynomial.tex, doc/preamble.tex, doc/press2.txt, doc/project.tex, doc/random.tex, doc/real32.tex, doc/real64.tex, doc/rng01.tex, doc/rng02.tex, doc/root.tex, doc/sle.tex, doc/statistic.tex, doc/utils.tex, doc/vector.tex, doc/view.tex, doc/wordex.tex, doc/wpress.txt, test/src/Test.i3, test/src/Test.m3, test/src/TestBigInteger.m3, test/src/TestBits.m3, test/src/TestChebyshev.m3, test/src/TestComplex.m3, test/src/TestEigenSystem.m3, test/src/TestFFT.m3, test/src/TestFmtLex.m3, test/src/TestFunctional.m3, test/src/TestGCD.m3, test/src/TestInteger.m3, test/src/TestInterpolation.m3, test/src/TestMatrix.m3, test/src/TestPolynomial.m3, test/src/TestRandom.m3, test/src/TestReal64.m3, test/src/TestRoot.m3, test/src/TestSLE.m3, test/src/TestTex.m3, test/src/TestUnit.m3, test/src/TestVector.m3, test/src/TestWordEx.m3, test/src/m3makefile, test/src/m3overrides, test/src/template.m3: fixing executable permissions, no actual change 2009-06-29 19:10 jkrell * m3-libs/arithmetic/src/: template.mg, m3makefile, template.i3, template.ig, template.m3, basictypes/polar/PolarBasic.ig, basictypes/polar/PolarBasic.mg, basictypes/polar/PolarFmtLex.ig, basictypes/polar/PolarFmtLex.mg, basictypes/polar/m3makefile, basictypes/polar/polar.tmpl, basictypes/fraction/FractionBasic.ig, basictypes/fraction/FractionBasic.mg, basictypes/fraction/FractionFmtLex.ig, basictypes/fraction/FractionFmtLex.mg, basictypes/fraction/fraction.tmpl, basictypes/fraction/m3makefile, basictypes/integer/IntegerBasic.ig, basictypes/integer/IntegerBasic.mg, basictypes/integer/IntegerFmtLex.ig, basictypes/integer/IntegerFmtLex.mg, basictypes/integer/integer.tmpl, basictypes/physicalunit/CompositeUnit.ig, basictypes/physicalunit/CompositeUnit.mg, basictypes/physicalunit/PhysicalUnit.i3, basictypes/physicalunit/PhysicalUnit.m3, basictypes/physicalunit/PhysicalUnitFmtLex.i3, basictypes/physicalunit/PhysicalUnitFmtLex.m3, basictypes/physicalunit/PhysicalValue.ig, basictypes/physicalunit/PhysicalValue.mg, basictypes/physicalunit/PhysicalValueFmtLex.ig, basictypes/physicalunit/PhysicalValueFmtLex.mg, basictypes/physicalunit/SIUnit.ig, basictypes/physicalunit/SIUnit.mg, basictypes/physicalunit/UnitDatabase.ig, basictypes/physicalunit/UnitDatabase.mg, basictypes/physicalunit/UsualUnit.ig, basictypes/physicalunit/UsualUnit.mg, basictypes/physicalunit/m3makefile, basictypes/physicalunit/physicalvalue.tmpl, basictypes/m3makefile, basictypes/complex/ComplexBasic.ig, basictypes/complex/ComplexBasic.mg, basictypes/complex/ComplexFast.ig, basictypes/complex/ComplexFast.mg, basictypes/complex/ComplexFmtLex.ig, basictypes/complex/ComplexFmtLex.mg, basictypes/complex/ComplexTrans.ig, basictypes/complex/ComplexTrans.mg, basictypes/complex/complex.tmpl, basictypes/complex/m3makefile, basictypes/float/ExtendedBasicEx.m3, basictypes/float/ExtendedEx.i3, basictypes/float/ExtendedFmtLexIntf.i3, basictypes/float/ExtendedType.i3, basictypes/float/ExtendedType.m3, basictypes/float/FloatBasic.ig, basictypes/float/FloatBasic.mg, basictypes/float/FloatEx.mg, basictypes/float/FloatFmtLex.ig, basictypes/float/FloatFmtLex.mg, basictypes/float/FloatTrans.ig, basictypes/float/FloatTrans.mg, basictypes/float/LongRealBasicEx.m3, basictypes/float/LongRealEx.i3, basictypes/float/LongRealFmtLexIntf.i3, basictypes/float/RealBasicEx.m3, basictypes/float/RealEx.i3, basictypes/float/RealFmtLexIntf.i3, basictypes/float/SpecialFunction.i3, basictypes/float/SpecialFunction.m3, basictypes/float/float.tmpl, basictypes/float/m3makefile, algebra/m3makefile, algebra/polynomial/Polynomial.ig, algebra/polynomial/Polynomial.mg, algebra/polynomial/PolynomialBasic.ig, algebra/polynomial/PolynomialBasic.mg, algebra/polynomial/PolynomialFast.ig, algebra/polynomial/PolynomialFast.mg, algebra/polynomial/PolynomialFmtLex.ig, algebra/polynomial/PolynomialFmtLex.mg, algebra/polynomial/m3makefile, algebra/polynomial/polynomial.tmpl, algebra/root/RootApproximation.ig, algebra/root/RootApproximation.mg, algebra/root/RootBasic.ig, algebra/root/RootBasic.mg, algebra/root/m3makefile, algebra/root/root.tmpl, basictypes/biginteger/BigInteger.i3, basictypes/biginteger/BigInteger.m3, basictypes/biginteger/BigIntegerFmtLex.i3, basictypes/biginteger/BigIntegerFmtLex.m3, basictypes/biginteger/BigIntegerRep.i3, basictypes/biginteger/BigIntegerRep.m3, basictypes/biginteger/m3makefile, algebra/chebyshev/ChebyPolynomial.ig, algebra/chebyshev/ChebyPolynomial.mg, algebra/chebyshev/ChebyPolynomialFast.ig, algebra/chebyshev/ChebyPolynomialFast.mg, algebra/chebyshev/chebypolynomial.tmpl, algebra/chebyshev/m3makefile, algebra/misc/Combinatoric.ig, algebra/misc/Combinatoric.mg, algebra/misc/GCD.ig, algebra/misc/GCD.mg, algebra/misc/IntegerPower.ig, algebra/misc/IntegerPower.mg, algebra/misc/NumberTheory.i3, algebra/misc/NumberTheory.m3, algebra/misc/PrimeNumber.m3, algebra/misc/combinatoric.tmpl, algebra/misc/gcd.tmpl, algebra/misc/integerpower.tmpl, algebra/misc/m3makefile, misc/approximation/EulerSum.ig, misc/approximation/EulerSum.mg, misc/approximation/FindZero.ig, misc/approximation/FindZero.mg, misc/approximation/Interpolation.ig, misc/approximation/Interpolation.mg, misc/approximation/eulersum.tmpl, misc/approximation/findzero.tmpl, misc/approximation/interpolation.tmpl, misc/approximation/m3makefile, misc/functional/Functional.ig, misc/functional/Functional.mg, misc/functional/FunctionalDeriv2.ig, misc/functional/FunctionalDeriv2.mg, misc/functional/functional.tmpl, misc/functional/m3makefile, misc/m3makefile, misc/lowlevel/Bits.i3, misc/lowlevel/Bits.m3, misc/lowlevel/WordEx.i3, misc/lowlevel/WordEx.m3, misc/lowlevel/m3makefile, misc/stochastic/RandomBasic.i3, misc/stochastic/RandomBasic.m3, misc/stochastic/RandomBayesDurham.i3, misc/stochastic/RandomBayesDurham.m3, misc/stochastic/RandomCombinedFast.i3, misc/stochastic/RandomCombinedFast.m3, misc/stochastic/RandomCombinedSlow.i3, misc/stochastic/RandomCombinedSlow.m3, misc/stochastic/RandomDECSRC.i3, misc/stochastic/RandomDECSRC.m3, misc/stochastic/RandomImprovedMcGill.i3, misc/stochastic/RandomImprovedMcGill.m3, misc/stochastic/RandomIteratedSquaring.i3, misc/stochastic/RandomIteratedSquaring.m3, misc/stochastic/RandomMultiplicativeFibo.i3, misc/stochastic/RandomMultiplicativeFibo.m3, misc/stochastic/RandomParkMiller.i3, misc/stochastic/RandomParkMiller.m3, misc/stochastic/RandomQuaternaryFibo.i3, misc/stochastic/RandomQuaternaryFibo.m3, misc/stochastic/RandomRep.i3, misc/stochastic/RandomSubtractiveFibo1.i3, misc/stochastic/RandomSubtractiveFibo1.m3, misc/stochastic/RandomSubtractiveFibo2.i3, misc/stochastic/RandomSubtractiveFibo2.m3, misc/stochastic/RandomWolframCA.i3, misc/stochastic/RandomWolframCA.m3, misc/stochastic/Statistic.i3, misc/stochastic/Statistic.m3, misc/stochastic/m3makefile, misc/stochastic/modnames.txt, linearalgebra/m3makefile, linearalgebra/fourier/FFT.mod, linearalgebra/fourier/FourierTransform.ig, linearalgebra/fourier/FourierTransform.mg, linearalgebra/fourier/fourier.tmpl, linearalgebra/fourier/m3makefile, linearalgebra/matrix/MatrixTrans.ig, linearalgebra/vector/Vector.ig, linearalgebra/vector/Vector.mg, linearalgebra/vector/VectorBasic.ig, linearalgebra/vector/VectorBasic.mg, linearalgebra/vector/VectorFast.ig, linearalgebra/vector/VectorFast.mg, linearalgebra/vector/VectorFmtLex.ig, linearalgebra/vector/VectorFmtLex.mg, linearalgebra/vector/VectorRep.ig, linearalgebra/vector/VectorRep.mg, linearalgebra/vector/VectorSupport.ig, linearalgebra/vector/VectorSupport.mg, linearalgebra/vector/VectorTrans.ig, linearalgebra/vector/VectorTrans.mg, linearalgebra/vector/m3makefile, linearalgebra/vector/vector.tmpl, inout/m3makefile, inout/text/FmtLexSupport.i3, inout/text/FmtLexSupport.m3, inout/text/m3makefile, linearalgebra/matrix/CharPolynomial.ig, linearalgebra/matrix/CharPolynomial.mg, linearalgebra/matrix/EigenSystem.ig, linearalgebra/matrix/EigenSystem.mg, linearalgebra/matrix/Matrix.ig, linearalgebra/matrix/Matrix.mg, linearalgebra/matrix/MatrixBasic.ig, linearalgebra/matrix/MatrixBasic.mg, linearalgebra/matrix/MatrixDecomposition.ig, linearalgebra/matrix/MatrixDecomposition.mg, linearalgebra/matrix/MatrixFast.ig, linearalgebra/matrix/MatrixFast.mg, linearalgebra/matrix/MatrixFmtLex.ig, linearalgebra/matrix/MatrixFmtLex.mg, linearalgebra/matrix/MatrixTrans.mg, linearalgebra/matrix/m3makefile, linearalgebra/matrix/matrix.tmpl: working on removing executable permission 2009-06-29 19:01 jkrell * m3-libs/arithmetic/src/basictypes/integer/: Cardinal16.i3, Cardinal32.i3, Cardinal8.i3, Integer16.i3, Integer32.i3, Integer8.i3, IntegerTrans.i3, IntegerTrans.m3, m3makefile: removing executable permission 2009-06-29 18:56 jkrell * m3-sys/cm3/src/cm3root.txt: try make it not executable 2009-06-29 18:52 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, AMD64_FREEBSD, AMD64_LINUX, ARM_DARWIN, Darwin.common, FreeBSD4, HPUX.common, I386_INTERIX, I386_OPENBSD, LINUXLIBC6, MIPS64_OPENBSD, NetBSD2_i386, PA32_HPUX, PA64_HPUX, PPC32_OPENBSD, PPC_LINUX, SPARC32_LINUX, SPARC64_LINUX, SPARC64_OPENBSD, Solaris.common: remove readonly on m3back_flags, SYSTEM_CC, SYSTEM_LD so that leaf m3makefiles can change them for aspects that aren't abstracted, though portability can be difficult (SYSTEM_ASM, SYSTEM_AR, SYSTEM_LIBTOOL less well motivated..leave them alone) This might also reduce pressure on the desire to edit these files. (as would some if exist include sprinkling) This will also let us do stuff like: SYSTEM_CC = something if equal(WORD, "64BITS") SYSTEM_CC = SYSTEM_CC & " -m64" else SYSTEM_CC = SYSTEM_CC & " -m32" end perl -pi.bak -e "s/readonly (m3back_flags|(SYSTEM_(CC|LD)))/\1/g" * cvs -z3 diff -u > 1.txt cvs -z3 commit `grep RCS 1.txt | perl -pi.bak -e "s/.+\///; s/,v//"` (since dumb cvs -z3 commit will include unchanged files) 2009-06-29 16:36 jkrell * scripts/README: more package set cleanup: m3back, m3staloneback for all platforms 2009-06-29 16:33 jkrell * scripts/make-bin-dist-min.sh: more package set cleanup: remove m3staloneback, put mklib in for all platforms 2009-06-29 16:31 jkrell * scripts/: README, backup-pkgs.sh, pkginfo.sh, pkginfo.txt, upgrade.sh: fixup package sets and platform filtering of packages fix_nl is a simple portable text file utility to convert newlines It is less needed on Posix platforms, but it builds and runs fine. On the other hand, it isn't important, relegate it to tool. import-libs does its own platform filtering, so remove the filtering here It is kind of important when it is used, and kind of unimportant. Generally most Win32 toolsets supercede it, with the exception that the older CM3 toolsets contain invalid versions of it which it replaces and some minimal (Express) toolsets are only a subset of it. While it is an interesting example of several programming techniques, it'll probably be removed in the next release. (Deleting the invalid files suffices as long as a decent toolset is in use.) mklib is only used when targeting NT386 and such, but is buildable and runnable on all hosts, so remove filtering here (on the other hand, cross bootstrapping doesn't use it currently, probably never will, since the goal is merely a standalone cm3 and no libs, so its importance is overstated; cross building if it evolves far could easily use something from GNU binutils instead, e.g. ld or dlltool; that is, it is important min/core/base for NT386 hosts/targets, but could be relegated to "tool" otherwise, but package sets aren't changable per platform, probably ok/good) libdump isn't used, relegate it to "tool" It was possibly used in the past, like when custom import libs were built (The above-mentioned invalid ones; import-libs just builds normal ones using the native linker.) m3staloneback is a command line driver for a subset of cm3, in normal situations you just use cm3, relegate it to "tool" m3cggen just outputs a generated .h file that is checked in and only changed when new IL forms are added, relegate it to "tool" (something like not-useful-to-most-people-but-it-is-somewhere-so-we-build-it would be good, that would be m3cggen, m3cgcat; and not-useful-to-anyone-at-all-likewise would be fix_nl (I use dos2unix) and libdump (redundant with link -dump)) m3cgcat is largely redundant with cm3cg -y, but more informative, but only useful to people changing/debugging cm3cg (highly useful, to very few people), so relegate it to "tool" m3objfile is built for all platforms It used to be, I recall, that cm3 could either run cm3cg OR use the integrated backend but long ago I changed it to to either determined at runtime for some cross build functionality. 2009-06-29 03:03 rodney * m3-sys/m3gdb/gdb/gdb/: m3-util.c, m3-util.h: Expand recognition of 64-bit targets to all those found in m3middle/src/Target.m3 (and not commented out). 2009-06-28 23:25 rodney * m3-sys/m3gdb/gdb/: bfd/elf.c, include/elf/common.h: Back patch from newer bfd/binutils, to handle new elf section type ".gnu.hash", SHT_GNU_HASH, with code 6ffffff6. Apparently, (m3)gdb doesn't do anything with this, but must be able to recognize its header, size, etc. when reading elf binaries. This section type does not appear to occur in Modula-3 code compiled on LINUXLIBC6 platforms, but it does on AMD64_LINUX. Note: m3gdb on AMD64_LINUX is showing other problems with handling 64-bit values. 2009-06-28 18:53 jkrell * scripts/python/: make-dist.py, pylib.py: add root\bin to %PATH% in the .msi installer 2009-06-28 18:09 jkrell * scripts/python/: make-dist.py, pylib.py: running "c:\program files\...\candle" worked but not "c:\program files\...\light", odd so instead say path=c:\program files\...;%path% and just run candle/light fix config file writing get the license to show, though it looks not great 2009-06-28 15:24 jkrell * scripts/python/pylib.py: environ should be os.environ 2009-06-28 15:23 jkrell * scripts/python/: make-dist.py, pylib.py: possibly fix for Python 2.4 on birch while possibly still having the same meaning in the code; possibly enable our license 2009-06-28 14:44 jkrell * scripts/python/pylib.py: search %PATH% for candle and light before assuming ProgramFiles\... check for %ProgramFiles% before assuming c:\program file (It is set at least on XP.) add comments form one license to present by concatenating all of them deliberatly putting DEC first since it is mostly from them and JDP-CVSUP and CALTECH-2+ last since they are fairly redundant with JDP and CALTECH-1 not yet used oh and put the summary "COPYRIGHTS" first, ahead of even DEC 2009-06-28 14:29 jkrell * scripts/python/make-dist.py: add the Olivetti license from libm3/src/text/TextExtras.m3, m3-libs/m3tk-misc, m3-tools/m3tk...hm.. and we need the GPL and LGPL? 2009-06-28 14:13 jkrell * scripts/python/make-dist.py: pickup the cvsup license -- it is the JDP license plus one line at the end pickup the Elego license -- it isn't in a separate file so we print it out, from embedded in this code pickup the, wow how did I miss this all this time -- the Critical Mass license (COPYRIGHT-CMASS is in many many directories, but not at the root) 2009-06-28 13:32 jkrell * scripts/python/make-dist.py: pickup more copyrights: arithmetic the various caltech-parser ones so many, put them in their own directory The .msi will present likely the concatenation of all of these each preceded by their 'name'. 2009-06-28 13:23 jkrell * scripts/python/: pylib.py, make-dist.py: remove reference to IExpress, disable test code, slight tweak to input/out location/specification 2009-06-28 13:11 jkrell * scripts/python/pylib.py: produces a very nice .msi, still need to fix the incorrect default license presented 2009-06-28 12:35 jkrell * scripts/python/pylib.py: remove the safe keeping IExpress and Caphyon Advanced Installer code 2009-06-28 12:34 jkrell * scripts/python/pylib.py: work in progress / safe keeping: packaging for Windows IExpress examined, promising, for now and probably forever rejected. It appears to have a limit on the number files it can package. One could probably workaround with a hierarchical install. I don't remember, but this may have lacked an uninstall. Also IExpress appears to not like there to be multiple files with the same name, in the mode that extracts things in the original layout. Nullsoft examined, promising, for now rejected. The zip2exe functionality does not appear to be usable from the command line. The non-zip2exe functionality seems all a bit wierd..or at least inconvenient. I don't really want to design the GUI from scratch, nor via copy/paste. I don't remember but this may have lacked an uninstall. Caphyon Advanced Installer for making .msis, free version examined, very promising, rejected. Had a good uninstall. Had an easy way to prepend to $PATH. Rejected because while there is an underlying generatable text file, it doesn't appear to be documented what any/everything means in it, and while going through the exercise I ran into unclear parts. I do not want to be tied to a GUI app for building stuff. InnoSetup examined a while ago, promising, details forgotten. Should examine again. WiX 3.0 to produce an .msi examined and the current plan. It provides a few canned GUIs to chose from, each /slightly/ configurable. I wouldn't mind deleting the eula/license gui, but the text is replaceable and that should suffice. It provides uninstall. It provides shortcuts on the start menu. There are many other options. .msis can be built fairly easily/directly, but there remains the need to design the GUI. None is provided by default except maybe "please wait" while a non-interactive install goes through almost overly quietly and with no configurability. The WiX GUI is very amenable to easily providing a tree with each of Olaf's package sets and letting user pick/chose which he wants. 2009-06-28 02:41 jkrell * scripts/python/pylib.py: follow examples more closely, but there seems to be a limit in the number of the files.. 2009-06-28 02:13 jkrell * scripts/python/pylib.py: deal with duplicate names in a more general fashion, so that std can be packaged, it has some duplicate *.m3/*.i3 files 2009-06-27 20:27 jkrell * scripts/python/: make-dist.py, make-iexpress.py, pylib.py: integrate iexpress with make-dist and limit debian to linux 2009-06-27 20:22 jkrell * scripts/python/pylib.py: and now it works 2009-06-27 20:21 jkrell * scripts/python/pylib.py: go back a version 2009-06-27 20:20 jkrell * scripts/python/pylib.py: Jscript rendition that almost works, but the problem was not closing the file before putting it in the package 2009-06-27 19:46 jkrell * scripts/python/pylib.py: a should be viable "setup" that is cmd that just moves all the files into place, but it oddly never makes it to the end note that because we want to do some renames, we are left doing all the movement of the files into position 2009-06-27 18:54 jkrell * scripts/python/pylib.py: give the m3web/exports files obvious unique names, will rename them back after install 2009-06-27 17:23 jkrell * scripts/python/make-dist.py: integrate make-deb into make-dist 2009-06-27 17:21 jkrell * scripts/python/: make-deb.py, pylib.py: enable lzma and std now that it works! 2009-06-27 17:19 jkrell * scripts/python/pylib.py: dispense with postinst and discovering/preserving hardlinks and all that now that the real problem was found and fixed (that symlinks were getting hardlinked) 2009-06-27 17:18 jkrell * scripts/python/pylib.py: fixes for config file location 2009-06-27 16:53 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: Hard linking a symlink is wierd. This is probably what is giving dpkg grief! 2009-06-27 16:42 jkrell * m3-sys/cminstall/src/config-no-install/LINUXLIBC6: fix newlines (dos2unix) 2009-06-27 16:40 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, Darwin.common: remove some dead code 2009-06-27 16:36 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, Darwin.common: Fix Darwin platforms too. This is not tested, but looks obvious. Maybe skip_lib should go and it should be a flag to m3_link, or maybe the compiler should just never call this. If the .M3SHIP file is there, use it. If it isn't there, relink. ? 2009-06-27 16:32 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: Fix bug that turns symlinks into copies when an up to date library is shipped again. 2009-06-27 16:15 jkrell * scripts/python/: make-dist.py, pylib.py: try harder to copy symlinks and rely on shipping more and copying less, but this still doesn't work, cm3 is shipping the symlink as a copy, still investigating.. 2009-06-27 15:14 jkrell * scripts/python/make-dist.py: Very oddly, two symlinks in lib in the distributions made by this code are broken and turned into copies, libm3core.so and libembutils.so. Why just these two? Attemps to fix it by asking the Python library to copy symlinks as symlinks -- which it is mostly doing anyway. Really should probably use cm3 -ship for these purposes.. 2009-06-27 14:58 jkrell * m3-sys/m3quake/src/QMachine.m3: smush out dotdots using working code 2009-06-27 14:55 jkrell * m3-sys/: cm3/src/M3Path.i3, cm3/src/M3Path.m3, cm3/src/m3makefile, m3quake/src/M3Path.i3, m3quake/src/M3Path.m3, m3quake/src/m3makefile: move M3Path from cm3 to m3quake so it can be used by both 2009-06-27 14:37 jkrell * m3-sys/m3quake/src/QMachine.m3: remove dotdots correctly, otherwise make-dist was broken 2009-06-27 14:08 jkrell * scripts/python/: pylib.py: fix 2009-06-27 14:07 jkrell * scripts/python/pylib.py: implement proper generalize hardlink discovery and restoration, at least assuming we don't cross devices We still leave stubs for uninstall but we write out a series of ln commands to postinst instead of trying to use the gnarly find command 2009-06-27 12:44 jkrell * m3-sys/cm3/src/M3Build.m3: just merge adjacent CONST 2009-06-27 12:43 jkrell * m3-sys/cm3/src/M3Build.m3: An arguably better rendition of -no-m3ship-resolution, that works better than the previous version. My previous change definitely fixed many cases, due to the dotdots and ,any cases were also either still or newly broken. I didn't look closely enough at the results for the first version to know if I'd seen all the errors. This should get it all correct. Though it is probably riskier in that the previous rendition avoided touching any preexisting code path. It tediously duplicated some of the path formations and sleazily back substituted in others. This version always just uses sleazy back substitution, which at least is simple and works and isn't tedious. As well, the responsibility for unquoting is pushed down into Unresolve, even when -no-m3ship-resolution isn't used. That way we can easily remove the unsightly appends of empty strings (as if anyone looks at .M3SHIP files..) There is a way to do this without risking existing paths, using just the simple sleazy reliable back substitution, but it would not be able to remove the appends of empty strings. 2009-06-27 11:24 wagner * scripts/make-dist.sh: find all READMEs and add NOARCHIVE (environment) option in addition to NOBUILD 2009-06-27 10:45 jkrell * scripts/python/: make-deb.py, make-dist.py, make-iexpress.py, pylib.py: work in progress: Debian packages have some problems with hardlinks apparently. So what we do here is we find the hardlinks before making the package, replace one of them with an empty file. We know they come only in pairs, though generally they could be any number. Make the package, and then restore the links. And then the package has postinst code that looks finds any zero length files in pkg with the same name as any file in lib and deletes the zero length file and links them. We know this is the pattern. If we had to do something more general, we'd inspect the inode number of every file, hash them all up, and find the relations that way. We could just record all the paths in a text file, but I figure leaving the zero length markers is likely to aid uninstall. In order to speed up testing this while it is in development, use gzip instead of lzma and fix -no-m3ship-resolution. And only min for now. Also fix make-deb.py so it doesn't keep creating new empty temporary directories. (Because it generates a new tempdir, creates it, then notices the one on the command line.) 2009-06-27 10:36 jkrell * m3-sys/: cm3/src/M3Build.m3, m3quake/src/QMachine.m3: remove dotdots more often This will let -no-m3ship-resolution work far more often (I've been using it), pretty up some output, and the reported problem where mkdir(foo/..) fails (which I just saw now, once.) Output from an instrumented Unresolve shows the problem: Unresolve input is "/cm3/pkg/m3core/src/word" Unresolve substitutes is /cm3/bin/../pkg => PKG_INSTALL Unresolve output is "/cm3/pkg/m3core/src/word" See, the dotdots had already been removed on the input, but not the substitutions. This will break unusual cases where people have dotdot in their paths AND symlinks en route. That is foo/../bar goes to just bar, losing any change that foo would have had. This was already fragile because cm3 already did remove dotdots in a number of places, it is just doing it more often now. (Notice again, the dotdots were already removed on the path actually being used, which was formed from the substitution, but had its dotdots already smushed out, whereas the original source did not.) Single dot elements will also be removed foo/./bar => foo/bar but that doesn't break anything I presume. (And again, they were already removed sometimes.) 2009-06-27 05:46 jkrell * scripts/python/pylib.py: fill in architecture, add forgotten ar commands, make it incremental so I don't have to keep running lzma 2009-06-27 05:16 jkrell * scripts/python/pylib.py: some simple path fixes, still waiting for lzma.. 2009-06-27 04:43 jkrell * scripts/python/pylib.py: close file and fix typo 2009-06-27 04:30 jkrell * scripts/python/: make-deb.py, make-dist.py, make-iexpress.py, pylib.py: first draft of code to create Debian and IExpress packages It is very minimal and feature-less, in particular there is only min and std, and they do overlap, so would require 'force' or somesuch to install. But this is easily fixed once the code is working -- it should consume the package breakdown Olaf recently developed. IExpress (iexpress.exe) is a builtin hybrid console/gui-wizard documented in MSDN, that builds self extracting installers. It creates a .cab inside an .exe. If you rename the .exe to .cab, Explorer does NOT understand it, but e.g. 7-zip does. Developer can provide an installer program that moves the files into place and/or a post-install program and/or an initial confirmation prompt and/or a done message, etc. Here we just have minimal for now. Later we might probe around for the compiler/linker, or maybe even run cminstall (but that somewhat bags for bringing back cygwin.dll/gzip.exe/tar.exe which seems like overkill, probably better is a mode of cminstall that just mucks the config file; but I'm actually hoping to migrate the environment variable probing in pylib.py into NT386, that should suffice, so continue to have no installer.) Key developments today: 1) Every previous attempt to learn about Debian packaging landed me in a quagmire of reading about source based builds. Finally I found the pieces of how to make something that just installs binaries that are already built. Furthermore, there is no need to use any dpkg* tools, it is just tar, gzip, ar, and optionally bzip2/lzma, very easy, can be created on just about any host (er, then again, not without significant cross build improvements..) 2) Discovered IExpress. Not yet tested, waiting for make-dist.py to finish to produce the input but constituent pieces verified so I could know that I know what I'm doing.. Yet missing is RPM and BSD packaging. 2009-06-27 01:49 jkrell * scripts/make-bin-dist-min.sh: fix my error 2009-06-26 19:36 wagner * scripts/make-dist.sh: change manpage links to conversion script 2009-06-26 18:26 wagner * scripts/make-dist.sh: exclude source browser link for import-libs, m3cc and m3gdb 2009-06-26 17:50 wagner * scripts/make-dist.sh: Try to prune archives a bit more, apply style sheets in HTML, and fix typo. 2009-06-26 16:34 wagner * doc/help/gen_html/: obliqbinanim/INDEX.html, obliqbinmin/INDEX.html, obliqbinstd/INDEX.html, obliqbinui/INDEX.html, obliqlibanim/INDEX.html, obliqlibemb/INDEX.html, obliqlibemb/src/LibEmbDirs.i3.html, obliqlibemb/src/LibEmbDirsPosix.m3.html, obliqlibemb/src/ObLibEmb.i3.html, obliqlibemb/src/ObLibEmb.m3.html, obliqlibemb/src/ObLoader.i3.html, obliqlibemb/src/ObLoader.m3.html, obliqlibm3/INDEX.html, obliqlibui/INDEX.html, obliqparse/INDEX.html, obliqprint/INDEX.html, obliqrt/INDEX.html, obliqrt/derived/ObValueSO.m3.html, obliqrt/src/ObValueNotify.i3.html, obliqrt/src/ObValueNotify.m3.html, obliqrt/src/ObValueRep.i3.html, obliqrt/src/POSIX/OpSys.m3.html, obliqsrvstd/INDEX.html, obliqsrvui/INDEX.html, odbc/INDEX.html, opengl/INDEX.html, parseparams/INDEX.html, patternmatching/INDEX.html, patternmatching/src/Glob.i3.html, patternmatching/src/Glob.m3.html, patternmatching/src/GlobTree.i3.html, patternmatching/src/GlobTree.m3.html, patternmatching/src/Uglob.i3.html, patternmatching/src/libglob/fnmatch.c.html, pkl-fonts/INDEX.html, postgres95/INDEX.html, rdwr/INDEX.html, rdwr/src/RdWrPipe.i3.html, rdwr/src/RdWrPipe.m3.html, rdwr/src/SimpleMsgRW.i3.html, rdwr/src/SimpleMsgRW.m3.html, rdwr/src/TeeWr.i3.html, rdwr/src/TeeWr.m3.html, realgeometry/INDEX.html, rehearsecode/INDEX.html, replayheap/INDEX.html, set/INDEX.html, sharedobj/INDEX.html, sharedobj/src/LocalObjectSpace.i3.html, sharedobj/src/LocalObjectSpace.m3.html, sharedobj/src/Message.i3.html, sharedobj/src/Message.m3.html, sharedobj/src/ObjCopy.i3.html, sharedobj/src/ObjCopy.m3.html, sharedobj/src/ObjectInfo.i3.html, sharedobj/src/ObjectInfo.m3.html, sharedobj/src/ObjectSpace.i3.html, sharedobj/src/SharedObj.i3.html, sharedobj/src/SharedObjError.i3.html, sharedobj/src/SharedObjF.i3.html, sharedobj/src/SharedObjF.m3.html, sharedobj/src/SharedObjRT.i3.html, sharedobj/src/SharedObjRT.m3.html, sharedobj/src/SharedObjRTF.i3.html, sharedobj/src/SharedObjRep.i3.html, sharedobj/src/SharedObjRep.m3.html, sharedobj/src/SharedObjStubLib.i3.html, sharedobj/src/SharedObjStubLib.m3.html, sharedobj/src/SpaceConn.i3.html, sharedobj/src/SpaceConn.m3.html, sharedobj/src/WeakerRef.i3.html, sharedobj/src/WeakerRef.m3.html, sharedobjgen/INDEX.html, sharedobjgen/src/SOxCodeFiles.i3.html, sharedobjgen/src/SOxCodeFiles.m3.html, sharedobjgen/src/SOxCodeGenError.i3.html, sharedobjgen/src/SOxCodeGenError.m3.html, sharedobjgen/src/SOxCodeUtils.i3.html, sharedobjgen/src/SOxCodeUtils.m3.html, sharedobjgen/src/SOxCoder.i3.html, sharedobjgen/src/SOxDummyCode.i3.html, sharedobjgen/src/SOxDummyCode.m3.html, sharedobjgen/src/SOxIntfCBCode.i3.html, sharedobjgen/src/SOxIntfCBCode.m3.html, sharedobjgen/src/SOxIntfCBProxyCode.i3.html, sharedobjgen/src/SOxIntfCBProxyCode.m3.html, sharedobjgen/src/SOxIntfPklCode.i3.html, sharedobjgen/src/SOxIntfPklCode.m3.html, sharedobjgen/src/SOxIntfProxyCode.i3.html, sharedobjgen/src/SOxIntfProxyCode.m3.html, sharedobjgen/src/SOxModuleCBCode.i3.html, sharedobjgen/src/SOxModuleCBCode.m3.html, sharedobjgen/src/SOxModuleSOCode.i3.html, sharedobjgen/src/SOxModuleSOCode.m3.html, sharedobjgen/src/StubGenTool.i3.html, sharedobjgen/src/StubGenTool.m3.html, showheap/INDEX.html, shownew/INDEX.html, showthread/INDEX.html, showthread/src/Main.m3.html, slisp/INDEX.html, smalldb/INDEX.html, smalldb/src/OSSupport.m3.html, sortedtableextras/INDEX.html, stable/INDEX.html, stable/src/POSIX/FSError.m3.html, stablegen/INDEX.html, stubgen/INDEX.html, synex/INDEX.html, synloc/INDEX.html, table-list/INDEX.html, tcp/INDEX.html, tcp/src/POSIX/IP.m3.html, tcp/src/POSIX/TCP.m3.html, tcp/src/POSIX/TCPExtras.m3.html, tcp/src/POSIX/TCPHack.i3.html, tcp/src/POSIX/TCPHackNull.m3.html, tcp/src/POSIX/TCPPeer.m3.html, tcp/src/POSIX/TCPPosix.i3.html, tcp/src/common/StreamRd.i3.html, tcp/src/common/StreamRdClass.i3.html, tcp/src/common/StreamRdClass.m3.html, tcp/src/common/StreamWr.i3.html, tcp/src/common/StreamWrClass.i3.html, tcp/src/common/StreamWrClass.m3.html, tcp/src/common/TCP.i3.html, tcp/src/common/TCPMisc.i3.html, tempfiles/INDEX.html, udp/INDEX.html, udp/src/POSIX/UDPPosix.m3.html, ui/INDEX.html, ui/src/vbt/ScrnPixmap.i3.html, ui/src/vbt/VBT.m3.html, ui/src/vbt/VBTRep.m3.html, ui/src/xvbt/Compl.i3.html, ui/src/xvbt/TrestleOS.m3.html, ui/src/xvbt/XClient.m3.html, ui/src/xvbt/XInput.m3.html, ui/src/xvbt/XProperties.m3.html, ui/src/xvbt/XSharedMem.m3.html, uniq/INDEX.html, vbtkit/INDEX.html, vbtkit/src/etext/TextEditVBT.m3.html, vbtkit/src/etext/TextPort.m3.html, vbtkit/src/lego/ListVBT.m3.html, vbtkit/src/lego/ScrollerVBTClass.i3.html, vbtkit/src/lego/ViewportVBT.m3.html, vbtkit/src/lego/ZChassisVBT.i3.html, vbtkit/src/vbtkitutils/VBTKitEnv.m3.html, videovbt/INDEX.html, videovbt/src/POSIX/VideoVBT.m3.html, visualobliq/INDEX.html, vocgi/INDEX.html, voquery/INDEX.html, vorun/INDEX.html, web/INDEX.html, webvbt/INDEX.html, zeus/INDEX.html: update from newly generated docs based on birch's packages 2009-06-26 16:31 wagner * doc/help/gen_html/: INDEX.html, m3db, X11R4/INDEX.html, anim3D/INDEX.html, binIO/INDEX.html, bitvector/INDEX.html, calculator/INDEX.html, cm3/INDEX.html, cm3/src/M3Backend.i3.html, cm3/src/M3Backend.m3.html, cm3/src/Utils.i3.html, cm3/src/UtilsPosix.m3.html, cmpdir/INDEX.html, cmpfp/INDEX.html, cmvbt/INDEX.html, codeview/INDEX.html, cube/INDEX.html, db/INDEX.html, db/src/DB.i3.html, debug/INDEX.html, debug/src/Debug.i3.html, debug/src/Debug.m3.html, digraph/INDEX.html, dirfp/INDEX.html, embutils/INDEX.html, embutils/src/EmbProxiedObj.m3.html, events/INDEX.html, events/src/Event.i3.html, events/src/Event.m3.html, events/src/EventConn.i3.html, events/src/EventConn.m3.html, events/src/EventCounter.i3.html, events/src/EventCounter.m3.html, events/src/EventHandle.i3.html, events/src/EventIO.i3.html, events/src/EventNumber.i3.html, events/src/EventNumber.m3.html, events/src/EventNumberF.i3.html, events/src/EventPort.i3.html, events/src/EventPort.m3.html, events/src/EventProtocol.i3.html, events/src/EventRd.i3.html, events/src/EventRd.m3.html, events/src/EventSpaceID.i3.html, events/src/EventSpaceID.m3.html, events/src/EventStubLib.i3.html, events/src/EventStubLib.m3.html, events/src/EventWireRep.i3.html, events/src/EventWireRep.m3.html, events/src/EventWr.i3.html, events/src/EventWr.m3.html, events/src/EventWrF.i3.html, events/src/HostInfo.i3.html, events/src/HostInfo.m3.html, events/src/RdWrMutex.i3.html, events/src/RdWrMutex.m3.html, events/src/Work.i3.html, events/src/WorkerPool.i3.html, events/src/WorkerPool.m3.html, events/src/Zombie.i3.html, fisheye/INDEX.html, formsedit/INDEX.html, formsvbt/INDEX.html, formsvbtpixmaps/INDEX.html, formsview/INDEX.html, http/INDEX.html, http/src/HTTP.m3.html, juno-app/INDEX.html, juno-compiler/INDEX.html, juno-machine/INDEX.html, jvideo/INDEX.html, jvideo/src/POSIX/JVBuffer.i3.html, jvideo/src/POSIX/jvprotocol.i3.html, jvideo/src/POSIX/generic/JVSink.m3.html, libbuf/INDEX.html, libm3/INDEX.html, libm3/src/os/Common/Process.i3.html, libm3/src/os/POSIX/FSPosix.m3.html, libm3/src/os/POSIX/FSPosixC.i3.html, libm3/src/os/POSIX/FilePosix.i3.html, libm3/src/os/POSIX/FilePosix.m3.html, libm3/src/os/POSIX/OSErrorPosix.m3.html, libm3/src/os/POSIX/PipePosix.m3.html, libm3/src/os/POSIX/ProcessPosixCommon.m3.html, libm3/src/os/POSIX/SocketPosix.m3.html, libm3/src/perftool/POSIX/LowPerfTool.m3.html, libm3/src/types/Unicode.i3.html, libm3/src/types/Unicode.m3.html, libm3/src/uid/Common/TimeStamp.m3.html, libsio/INDEX.html, listfuncs/INDEX.html, listfuncs/src/ListFuncs.ig.html, listfuncs/src/ListFuncs.mg.html, m3browser/INDEX.html, m3bundle/INDEX.html, m3cgcat/INDEX.html, m3cggen/INDEX.html, m3core/INDEX.html, m3core/src/C/Common/Cstdio.i3.html, m3core/src/C/Common/Ctypes.i3.html, m3core/src/C/Common/M3toC.m3.html, m3core/src/convert/CConvert.m3.html, m3core/src/runtime/POSIX/RTOS.m3.html, m3core/src/runtime/POSIX/RTOSbrk.m3.html, m3core/src/runtime/POSIX/RTPerfTool.m3.html, m3core/src/runtime/POSIX/RTProcessPosix.m3.html, m3core/src/runtime/POSIX/RTThread.i3.html, m3core/src/runtime/common/RTAllocator.m3.html, m3core/src/runtime/common/RTCollector.m3.html, m3core/src/runtime/common/RTHeapInfo.m3.html, m3core/src/runtime/common/RTHeapRep.i3.html, m3core/src/runtime/common/RTHeapStats.m3.html, m3core/src/runtime/common/RTHooks.i3.html, m3core/src/runtime/common/RTLinker.m3.html, m3core/src/runtime/common/RTMachine.i3.html, m3core/src/runtime/common/RTMisc.m3.html, m3core/src/runtime/common/RTOS.i3.html, m3core/src/runtime/common/RTSignal.i3.html, m3core/src/runtime/common/RTStack.i3.html, m3core/src/runtime/common/RTType.m3.html, m3core/src/runtime/ex_frame/RTExFrame.i3.html, m3core/src/runtime/ex_frame/RTExFrame.m3.html, m3core/src/text/String8.m3.html, m3core/src/text/Text8CString.m3.html, m3core/src/thread/Common/Scheduler.i3.html, m3core/src/thread/Common/SchedulerPosix.i3.html, m3core/src/thread/Common/Thread.i3.html, m3core/src/thread/Common/ThreadEvent.i3.html, m3core/src/time/POSIX/DateBsd.m3.html, m3core/src/time/POSIX/TimePosix.i3.html, m3core/src/time/POSIX/TimePosix.m3.html, m3core/src/win32/WinDef.i3.html, m3front/INDEX.html, m3linker/INDEX.html, m3markup/INDEX.html, m3markup/src/ID.m3.html, m3middle/INDEX.html, m3middle/src/M3ID.m3.html, m3middle/src/POSIX/CoffTime.m3.html, m3middle/src/POSIX/M3Process.m3.html, m3quake/INDEX.html, m3quake/src/QMachine.m3.html, m3scan/INDEX.html, m3scanner/INDEX.html, m3tk/INDEX.html, m3tk-misc/INDEX.html, m3tohtml/INDEX.html, m3tohtml/src/HTMLDir.m3.html, m3tohtml/src/Main.m3.html, m3tools/INDEX.html, m3totex/INDEX.html, m3zume/INDEX.html, mentor/INDEX.html, mentor/src/maxflow/MFGraph.i3.html, mentor/src/maxflow/MFGraph.m3.html, metasyn/INDEX.html, mg/INDEX.html, mgkit/INDEX.html, mtex/INDEX.html, netobj/INDEX.html, netobj/src/netobjrt/NetObjF.i3.html, netobjd/INDEX.html, obliq/INDEX.html: update from newly generated docs based on birch's packages 2009-06-26 16:05 jkrell * m3-sys/cminstall/src/config-no-install/PPC_LINUX: update PPC_LINUX to use -rpath,\\$ORIGIN/../lib and some other link options 2009-06-26 15:23 jkrell * m3-sys/cminstall/src/m3makefile: go back a version -- there is an indirect dependency on sysutils so this is ok to leave as a sort of comment, though it is not needed, and it might cause the dependency to stick even if the indirect one goes away? 2009-06-26 15:15 jkrell * m3-tools/m3tohtml/src/m3makefile: remove build_standalone, I thought I already commited this 2009-06-26 14:27 jkrell * m3-sys/cminstall/src/config-no-install/AMD64_LINUX: USE_ORIGIN doesn't do anything -- this is the only occurence of it, found this bringing PPC_LINUX up to date wrt runpath/origin 2009-06-26 14:14 jkrell * m3-sys/cminstall/src/m3makefile: no need for sysutils here 2009-06-26 14:02 jkrell * m3-tools/: cmpfp/src/m3makefile, cmpdir/src/m3makefile: no need for build_standalone here 2009-06-26 13:54 jkrell * m3-tools/dirfp/src/m3makefile: no need for build_standalone here 2009-06-26 12:44 jkrell * m3-sys/cminstall/src/config-no-install/Linux.common: My Gentoo system (came preinstalled, fit-pc) has no /usr/lib/libl.a. It does have /usr/lib/libfl.a. On my Debian, /usr/lib/libl.a is a symlink to /usr/lib/libfl.a. m3-tools/pp probes for first if SYSTEM_LIBS contains lex-yacc and if so uses it, else checks for flex-bison and uses it. It fails to link on Gentoo. One could remove the lex-yacc entry but that might break anyone that uses it specifically/only. One could reverse the probing in pp, but leaves anyone else broken who follows this reasonable algorithm. Therefore, change lex-yacc from -ll to -lfl, which should be highly compatible all around. Presumably no (GNU)Linux system has a libl.a that isn't just a link to libfl.a, or at least no (GNU)Linux system has libl.a but doesn't also have libfl.a and there'd be any need to favor libl.a, presumably. 2009-06-26 12:38 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_LINUX, LINUXLIBC6, Linux.common, PPC_LINUX, SPARC32_LINUX, SPARC64_LINUX: have all Linux platforms go through Linux.common instead of Unix.common this makes no different so far but will shortly 2009-06-26 12:32 hosking * m3-sys/: m3cgcat/src/m3makefile, m3cggen/src/m3makefile: Yes, this needs to be standalone since it is used heavily in debugging the compiler and runtime. 2009-06-26 10:50 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: PPC_LINUX: don't use the 'compat' way, use the 'new' way, though I couldn't find clear documentation of the indices into gregs 2009-06-26 10:36 jkrell * m3-libs/m3core/src/runtime/POSIX/: RTSignalC.c, test_signal.c: add PPC_LINUX support cleanup a little actually make it work -- confused "Index" and "i" to be clearer perhaps, use i for index and r for result 2009-06-26 09:35 jkrell * scripts/python/pylib.py: went too long without writing Python -- fix 2009-06-26 09:22 jkrell * m3-sys/cminstall/src/: Main.m3: fix 2009-06-26 09:22 jkrell * m3-sys/cminstall/src/Main.m3: move bulk of config to config directory; use path()/.. for INSTALL_ROOT 2009-06-26 09:20 jkrell * scripts/make-bin-dist-min.sh: Use path()/.. for INSTALL_ROOT 2009-06-26 09:16 jkrell * scripts/python/pylib.py: config files mostly to config directory, except for including stub 2009-06-26 09:10 jkrell * scripts/upgrade.sh: add quotes 2009-06-26 09:10 jkrell * scripts/upgrade.sh: use bin/config instead of bin 2009-06-26 08:31 jkrell * m3-sys/fix_nl/src/m3makefile: remove build_standalone, it isn't needed here 2009-06-26 08:22 jkrell * scripts/pkginfo.txt: move m3cgcat and m3cgen out of base and core; the are very rarely needed by anyone; since I have to put them somewhere, I put them in m3devtool, but really.. m3cggen is needed only when adding new IL forms, m3cgcat is a compiler debugging tool, mostly redundant with cm3cg -y 2009-06-26 08:13 jkrell * m3-sys/m3cggen/src/m3makefile: This doesn't have to be standalone. 2009-06-26 08:12 jkrell * m3-sys/m3cgcat/src/m3makefile: This doesn't need to be standalone. 2009-06-26 06:56 jkrell * scripts/: create-skel.sh, make-bin-dist-min.sh, python/pylib.py: move config files from bin to bin/config 2009-06-26 06:44 jkrell * scripts/python/pylib.py: The cleanup code can still reference both config and config-no-install. 2009-06-26 06:39 jkrell * scripts/upgrade.sh: remove NT386 special case 2009-06-24 01:48 jkrell * tools/win32/: gzip.exe, tar.exe, cygwin.dll: These have not been used in a long time. 2009-06-24 00:44 jkrell * scripts/make-dist.sh: fewer packages for Interix until/unless X issue is fixed, and cvsup uses utimes; fix name of birch dot instead of period 2009-06-24 00:21 jkrell * scripts/sysinfo.sh: add Interix 2009-06-23 15:21 jkrell * m3-sys/cminstall/src/config-no-install/Unix.common: -O2 and -O3 seem to take forever on Iterix, so don't pass the optimize flag for it 2009-06-23 15:13 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: another tweak to Interix link flags -- passing -no-allow-shlib-undefined caused ld to segfault 2009-06-23 14:52 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: -rpath works on Interix too, nifty 2009-06-23 14:43 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: remove postgres, odbc, and x11 from SYSTEM_LIBS at least for postgres and odbc, this causes packages that use them to "play nice" and build nothing no such luck for x11 though 2009-06-23 14:00 jkrell * m3-tools/uniq/src/m3makefile: This utility often causes problems, again today, building m3cc on Interix, and provides very little or no value, so disable it. 2009-06-23 13:59 jkrell * scripts/: pkginfo.sh, sysinfo.sh: default to building m3gdb except on NT386 (which is all of NT386[MIN][GNU] 2009-06-23 13:38 jkrell * scripts/python/pylib.py: fix for Win32 and add debugprint 2009-06-23 12:55 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: remove fPIC from m3cg, change gcc -gstabs+ to gcc -g, this seems to fix severe problems 2009-06-23 12:36 jkrell * m3-sys/cminstall/src/config-no-install/I386_INTERIX: add -lm 2009-06-23 12:35 jkrell * scripts/python/pylib.py: maybe Interix does need -lm 2009-06-23 12:35 jkrell * scripts/python/pylib.py: stick to more Posix paths for Interix -- i.e. leave forward slashes in also remove the GMAKE stuff that isn't used for anything 2009-06-23 12:30 jkrell * scripts/python/pylib.py: fix 2009-06-23 12:29 jkrell * scripts/python/pylib.py: Interix also doesn't need -lm or -lpthread, already changed in the config file 2009-06-23 12:26 jkrell * scripts/python/pylib.py: don't use -fPIC to gcc on Interix, it fixes mysterious problem in m3_dtoa where the switch(mode) jumps into the weeds (note that I'm ignoring that linking ends with an assertion failure, but exit code is 0 and executable is produced) 2009-06-23 12:24 jkrell * m3-sys/cminstall/src/config-no-install/: I386_INTERIX, Unix.common: Interix: don't use -fPIC to gcc (?), don't use -soname (?), GNU_MAKE=gmake 2009-06-22 23:10 jkrell * m3-sys/m3cc/src/m3makefile: make the temporary .sh file executable for Interix, perhaps should send it down the 'real' Posix path instead 2009-06-22 23:08 jkrell * scripts/python/pylib.py: Interfix fixes 2009-06-22 22:55 jkrell * scripts/python/pylib.py: detect Interix from uname, remove PPC_NT 2009-06-22 22:10 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: interix: #define _REENTRANT to get *time_r prototypes to fix warnings; this might be appropriate on more/all platforms 2009-06-22 22:07 jkrell * m3-libs/libm3/src/os/POSIX/FSPosixC.c: interix: fix local variable name 2009-06-22 22:06 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThreadC.c: interix: define all_source, zero time remaining correctly 2009-06-22 15:40 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: Solaris ctime_r is different than Posix, so remove our wrapper there (this is good -- the extern declaration in Modula-3, if used, would have crashed) 2009-06-22 15:30 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: better factoring 2009-06-22 15:14 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: Interix doesn't appear to have SA_SIGINFO. I suspect it might provide the information but in either case it isn't difficult to do without, we only use it to print a PC and possibly a stack trace for access violations and such. 2009-06-22 15:12 jkrell * m3-libs/m3core/src/runtime/POSIX/RTSignalC.c: fix newlines (dos2unix) 2009-06-22 15:08 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: approximate nanosleep on Interix using sleep (for larger values) or usleep; always claiming timeout, always returning 0 2009-06-22 15:05 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: move repeated identical use of nanosleep into a function 2009-06-22 14:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: typo in the comments 2009-06-22 14:42 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: try again on the comments 2009-06-22 14:32 jkrell * m3-libs/m3core/src/thread/PTHREAD/ThreadPThread.m3: move the three occurences of WAIT_UNIT and two occurences of RETRY_INTERVAL to a common one occurence of each, and add hopefully correct comments 2009-06-22 13:17 jkrell * m3-sys/cminstall/src/config-no-install/SPARC32_LINUX: stick without -fPIC for now and reduce but don't eliminate comments about it, using -fPIC fails and not using -fPIC works where you wouldn't expect it to (building shared libraries) 2009-06-22 13:15 jkrell * scripts/sysinfo.sh: export CM3_ROOT; detect Linux/sparc as SPARC32 (I'm not sure SPARC64_LINUX works yet and let's try to make a SPARC32_LINUX release) 2009-06-22 12:42 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: all platforms need string.h now 2009-06-22 12:42 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: add extern C and save a few lines of code with memset 2009-06-22 12:39 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: add string.h and ZeroMemory 2009-06-22 12:29 jkrell * m3-libs/libm3/src/os/POSIX/: FilePosix.m3, FilePosixC.c, FilePosixC.i3: cleanup and adjust names 2009-06-22 12:23 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: for Interix struct utimbuf use 2009-06-22 12:21 jkrell * m3-libs/libm3/src/sqrt/m3makefile: portable sqrt depends on ability to change rounding mode, which isn't exposed for any platform currently, so don't provide such non-working portable sqrt 2009-06-22 12:13 jkrell * m3-libs/libm3/src/os/POSIX/: FSPosix.m3, FSPosixC.c, FSPosixC.i3: Move the utimes vs. utime split to the caller. 2009-06-22 11:57 jkrell * m3-libs/m3core/src/unix/Common/UtimeC.c: remove nanosleep wrapper on Interix since it would fail to link 2009-06-22 11:56 jkrell * m3-libs/m3core/src/unix/Common/UnixC.c: Remove lossy Interix wrapper, will handle it at the next level up. 2009-06-22 11:50 jkrell * m3-libs/libm3/src/os/POSIX/OSConfigPosixC.c: add extern C 2009-06-22 11:45 jkrell * m3-libs/libm3/src/os/POSIX/: FSPosix.m3, FSPosixC.c, FSPosixC.i3: rename to interface__name 2009-06-22 10:05 jkrell * m3-libs/m3core/src/unix/Common/: Utime.i3, UtimeC.c, m3unix.h: wrap more functions 2009-06-22 09:48 jkrell * m3-libs/m3core/src/unix/Common/: UnixC.c, UtimeC.c, m3unix.h: Interix: implement utimes over utime losing sub-second resolution provide get_altzone 2009-06-22 08:48 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: cleanup 2009-06-22 08:44 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: use safer strncpy instead of strcpy; similar code out there does that here 2009-06-22 08:43 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: fix mistake I introduced 2009-06-22 07:07 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: reformat the entire small file, particularly to remove tabs 2009-06-22 07:04 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: combine a lot of common code 2009-06-22 06:59 jkrell * m3-libs/libm3/src/uid/POSIX/MachineIDPosixC.c: Reduce #includes on most platforms -- e.g. Interix. Extend the better version to Cygwin -- MAC address instead of IP address. This file needs further revisiting for other platforms, since it can probably do better on them. Platforms handled well are Linux, OSF, Cygwin. 2009-06-22 06:42 jkrell * m3-libs/m3core/src/unix/Common/m3unix.h: #define _ALL_SOURCE on Interix, at least to get declaration of getgrent 2009-06-22 06:23 jkrell * m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.i3, ThreadPThread.m3, ThreadPThreadC.c: Interix appears to lack SA_SIGINFO. We don't need it here, so even if we find it does have it in some guise, there's no need to use it here. 2009-06-21 16:01 jkrell * m3-libs/m3core/src/C/: I386_OPENBSD/m3makefile, MIPS64_OPENBSD/m3makefile: fix newline (dos2unix) 2009-06-21 15:56 jkrell * m3-libs/m3core/src/: unix/Common/context/m3makefile, C/AMD64_FREEBSD/m3makefile, C/AMD64_LINUX/m3makefile, C/SPARC32_LINUX/m3makefile, C/SPARC64_SOLARIS/m3makefile: fix newline (dos2unix) 2009-06-21 15:54 jkrell * m3-sys/cm3/src/m3makefile: tweak how cm3unix.c is specified, I've had this locally for a while, it probably is a fix for cross builds/bootstrapping and native builds don't notice a difference 2009-06-21 15:45 jkrell * m3-libs/libm3/src/: os/POSIX/m3makefile, random/m3makefile: add I386_INTERIX (aka SFU aka SUA) 2009-06-21 15:43 jkrell * m3-libs/m3core/src/: C/Common/m3makefile, Csupport/m3makefile, float/m3makefile, runtime/m3makefile, runtime/POSIX/m3makefile, runtime/common/Compiler.tmpl, runtime/common/m3makefile, time/POSIX/m3makefile, unix/m3makefile, unix/Common/m3makefile: add I386_INTERIX support 2009-06-21 15:37 jkrell * m3-sys/m3middle/src/: Target.i3, Target.m3: I386_INTERIX support 2009-06-21 14:49 jkrell * m3-sys/m3cc/src/m3makefile: remove two tabs 2009-06-21 14:45 jkrell * m3-sys/m3cc/gcc/gcc/m3cg/parse.c: fix warnings 2009-06-21 13:24 jkrell * m3-sys/cminstall/src/config-no-install/cm3.cfg: don't probe config, just config-no-install 2009-06-20 19:25 jkrell * m3-libs/m3core/src/runtime/SOLsun/RTThread.m3: remove unused import 2009-06-20 19:24 jkrell * m3-libs/m3core/src/runtime/SOLgnu/RTThread.m3: remove unused import to fix warning 2009-06-20 19:23 jkrell * scripts/: make-bin-dist-min.sh, make-dist.sh: fix my change for Solaris 2009-06-20 14:06 jkrell * scripts/python/pylib.py: switch from config to config-no-install 2009-06-18 22:26 wagner * scripts/make-dist.sh: abstract destination host and fix its domain 2009-06-18 16:20 jkrell * m3-sys/cminstall/src/config-no-install/: AMD64_DARWIN, cm3cfg.common: small cleanup regarding GNU_CC, GNU_CFLAGS, GNU_MAKE 2009-06-18 16:17 jkrell * m3-sys/cminstall/src/config/AMD64_DARWIN: oops, again put in a stub for the sake of enumerating this directory for a list of targets (these will probably go away, but the no-cinstall directory will also probably move to here) 2009-06-18 16:16 jkrell * m3-sys/cminstall/src/: config/AMD64_DARWIN, config-no-install/AMD64_DARWIN: Move AMD64_DARWIN from config to config-no-install. Note that this is still in the old monolithic style because I don't have such a system. 2009-06-18 16:14 jkrell * m3-sys/cminstall/src/config/: NT386, NT386GNU, NT386MINGNU: cater to code that appears to enumerate this directory to get a list of targets (make-src-dist-std.sh) by just adding stub files with just a comment in them 2009-06-18 16:09 jkrell * m3-sys/cminstall/src/: config/cm3.cfg, config/cm3cfg.common, config-no-install/cm3.cfg: also move cm3.cfg from config to config-no-install and delete the stub config/cm3cfg.common, the real one was already in config-no-install 2009-06-18 16:04 jkrell * scripts/python/: pylib.py: stop probing config, just always use config-no-install 2009-06-18 16:01 jkrell * m3-sys/cm3/src/config/NT386.main: tombstone this; can we re-tombstone the rest too? 2009-06-18 15:57 jkrell * m3-sys/cminstall/src/config-no-install/NT386.main: I rather doubt this still has any use. 2009-06-18 15:56 jkrell * m3-sys/cminstall/src/: config/NT386, config/NT386.common, config/NT386.main, config/NT386GNU, config/NT386MINGNU, config-no-install/NT386, config-no-install/NT386.common, config-no-install/NT386.main, config-no-install/NT386GNU, config-no-install/NT386MINGNU: move NT386* files from config to config-no-install 2009-06-18 12:26 wagner * m3-sys/cminstall/src/Main.m3: fix shared libs comments 2009-06-18 11:27 wagner * scripts/make-dist.sh: only ship collection indexes on birch 2009-06-18 09:57 wagner * scripts/make-dist.sh: build source archives on birch only 2009-06-17 20:54 wagner * scripts/make-dist.sh: fix typo in filename 2009-06-17 18:53 wagner * doc/help/gen_html/: web/src/Web.m3.html, webvbt/INDEX.html, webvbt/derived/CITextElementTbl.i3.html, webvbt/derived/CITextElementTbl.m3.html, webvbt/derived/ResourceBundle.i3.html, webvbt/derived/ResourceBundle.m3.html, webvbt/derived/TextPortButtonSeq.i3.html, webvbt/derived/TextPortButtonSeq.m3.html, webvbt/derived/TextPortButtonSeqRep.i3.html, webvbt/src/CIText.i3.html, webvbt/src/CIText.m3.html, webvbt/src/Element.i3.html, webvbt/src/HTML.i3.html, webvbt/src/HTML.m3.html, webvbt/src/HTMLParser.m3.html, webvbt/src/HTMLVBT.i3.html, webvbt/src/HTMLVBT.m3.html, webvbt/src/HTMLVBTG.i3.html, webvbt/src/HTMLVBTG.m3.html, webvbt/src/HTMLVBTGRep.i3.html, webvbt/src/HTMLVBTText.i3.html, webvbt/src/HTMLVBTText.m3.html, webvbt/src/ImageUtils.i3.html, webvbt/src/ImageUtils.m3.html, webvbt/src/Images.i3.html, webvbt/src/Images.m3.html, webvbt/src/Lexer.i3.html, webvbt/src/Lexer.m3.html, webvbt/src/Oblet.i3.html, webvbt/src/SimpleWeb.i3.html, webvbt/src/SimpleWeb.m3.html, webvbt/src/TextPortButton.i3.html, webvbt/src/TextPortButton.m3.html, webvbt/src/TextPortWithButtons.i3.html, webvbt/src/TextPortWithButtons.m3.html, webvbt/src/URLCache.i3.html, webvbt/src/URLCache.m3.html, webvbt/src/WebVBT.i3.html, webvbt/src/WebVBT.m3.html, webvbt/src/oblet/ObLibWeb.i3.html, webvbt/src/oblet/ObLibWeb.m3.html, webvbt/src/oblet/Oblet.m3.html, zeus/INDEX.html, zeus/derived/RemoteView_T_v1.i3.html, zeus/derived/RemoteView_T_v1.m3.html, zeus/derived/ZeusBundle.i3.html, zeus/derived/ZeusBundle.m3.html, zeus/src/AlbumVBT.i3.html, zeus/src/AlbumVBT.m3.html, zeus/src/Algorithm.i3.html, zeus/src/Algorithm.m3.html, zeus/src/AlgorithmClass.i3.html, zeus/src/Classes.i3.html, zeus/src/Classes.m3.html, zeus/src/OSUtils.i3.html, zeus/src/OSUtils.m3.html, zeus/src/RemoteView.i3.html, zeus/src/View.i3.html, zeus/src/View.m3.html, zeus/src/ViewClass.i3.html, zeus/src/ZFmt.i3.html, zeus/src/ZFmt.m3.html, zeus/src/Zeus.i3.html, zeus/src/Zeus.m3.html, zeus/src/ZeusClass.i3.html, zeus/src/ZeusClass.m3.html, zeus/src/ZeusCodeView.i3.html, zeus/src/ZeusCodeView.m3.html, zeus/src/ZeusDataView.i3.html, zeus/src/ZeusDataView.m3.html, zeus/src/ZeusPanel.i3.html, zeus/src/ZeusPanel.m3.html, zeus/src/ZeusPanelFriends.i3.html, zeus/src/ZeusPanelPrivate.i3.html, zeus/src/ZeusPrivate.i3.html, zeus/src/ZeusSnapshot.i3.html, zeus/src/ZeusSnapshot.m3.html, zeus/src/ZeusUtil.i3.html, zeus/src/ZeusUtil.m3.html, zeus/src/m3zume.tmpl.html: update generated package documentation for the release 2009-06-17 18:50 wagner * doc/: add, help/gen_html/INDEX.html, help/gen_html/m3db, help/gen_html/X11R4/INDEX.html, help/gen_html/X11R4/src/Common/X.i3.html, help/gen_html/X11R4/src/Common/Xatom.i3.html, help/gen_html/X11R4/src/Common/Xaw.i3.html, help/gen_html/X11R4/src/Common/Xct.i3.html, help/gen_html/X11R4/src/Common/Xmbuf.i3.html, help/gen_html/X11R4/src/Common/Xmu.i3.html, help/gen_html/X11R4/src/Common/Xrm.i3.html, help/gen_html/X11R4/src/Common/Xt.i3.html, help/gen_html/X11R4/src/Common/XtC.i3.html, help/gen_html/X11R4/src/Common/XtC.m3.html, help/gen_html/X11R4/src/Common/XtE.i3.html, help/gen_html/X11R4/src/Common/XtE.m3.html, help/gen_html/X11R4/src/Common/XtN.i3.html, help/gen_html/X11R4/src/Common/XtN.m3.html, help/gen_html/X11R4/src/Common/XtR.i3.html, help/gen_html/X11R4/src/Common/XtR.m3.html, help/gen_html/X11R4/src/Vanilla/XMachine.i3.html, help/gen_html/anim3D/INDEX.html, help/gen_html/anim3D/derived/KeyCBStack.i3.html, help/gen_html/anim3D/derived/KeyCBStack.m3.html, help/gen_html/anim3D/derived/MouseCBStack.i3.html, help/gen_html/anim3D/derived/MouseCBStack.m3.html, help/gen_html/anim3D/derived/PositionCBStack.i3.html, help/gen_html/anim3D/derived/PositionCBStack.m3.html, help/gen_html/anim3D/src/AmbientLightGO.i3.html, help/gen_html/anim3D/src/AmbientLightGO.m3.html, help/gen_html/anim3D/src/AmbientLightGOProxy.i3.html, help/gen_html/anim3D/src/Anim3D.i3.html, help/gen_html/anim3D/src/Anim3D.m3.html, help/gen_html/anim3D/src/AnimHandle.i3.html, help/gen_html/anim3D/src/AnimHandle.m3.html, help/gen_html/anim3D/src/AnimHandlePrivate.i3.html, help/gen_html/anim3D/src/AnimHandleProxy.i3.html, help/gen_html/anim3D/src/AnimRequestQueue.i3.html, help/gen_html/anim3D/src/AnimRequestQueue.m3.html, help/gen_html/anim3D/src/AnimRequestQueuePrivate.i3.html, help/gen_html/anim3D/src/AnimServer.i3.html, help/gen_html/anim3D/src/AnimServer.m3.html, help/gen_html/anim3D/src/AuxG.i3.html, help/gen_html/anim3D/src/AuxG.m3.html, help/gen_html/anim3D/src/BSphere.i3.html, help/gen_html/anim3D/src/BooleanProp.i3.html, help/gen_html/anim3D/src/BooleanProp.m3.html, help/gen_html/anim3D/src/BooleanPropPrivate.i3.html, help/gen_html/anim3D/src/BooleanPropProxy.i3.html, help/gen_html/anim3D/src/BoxGO.i3.html, help/gen_html/anim3D/src/BoxGO.m3.html, help/gen_html/anim3D/src/BoxGOProxy.i3.html, help/gen_html/anim3D/src/CB.i3.html, help/gen_html/anim3D/src/CBStack.ig.html, help/gen_html/anim3D/src/CBStack.mg.html, help/gen_html/anim3D/src/CameraGO.i3.html, help/gen_html/anim3D/src/CameraGO.m3.html, help/gen_html/anim3D/src/CameraGOPrivate.i3.html, help/gen_html/anim3D/src/Clock.i3.html, help/gen_html/anim3D/src/Clock.m3.html, help/gen_html/anim3D/src/ColorProp.i3.html, help/gen_html/anim3D/src/ColorProp.m3.html, help/gen_html/anim3D/src/ColorPropPrivate.i3.html, help/gen_html/anim3D/src/ColorPropProxy.i3.html, help/gen_html/anim3D/src/ConeGO.i3.html, help/gen_html/anim3D/src/ConeGO.m3.html, help/gen_html/anim3D/src/ConeGOProxy.i3.html, help/gen_html/anim3D/src/CylinderGO.i3.html, help/gen_html/anim3D/src/CylinderGO.m3.html, help/gen_html/anim3D/src/CylinderGOProxy.i3.html, help/gen_html/anim3D/src/DiskGO.i3.html, help/gen_html/anim3D/src/DiskGO.m3.html, help/gen_html/anim3D/src/DiskGOProxy.i3.html, help/gen_html/anim3D/src/GO.i3.html, help/gen_html/anim3D/src/GO.m3.html, help/gen_html/anim3D/src/GOPrivate.i3.html, help/gen_html/anim3D/src/GraphicsBase.i3.html, help/gen_html/anim3D/src/GraphicsBase.m3.html, help/gen_html/anim3D/src/GraphicsBasePrivate.i3.html, help/gen_html/anim3D/src/GroupGO.i3.html, help/gen_html/anim3D/src/GroupGO.m3.html, help/gen_html/anim3D/src/GroupGOPrivate.i3.html, help/gen_html/anim3D/src/GroupGOProxy.i3.html, help/gen_html/anim3D/src/KeyCB.i3.html, help/gen_html/anim3D/src/KeyCB.m3.html, help/gen_html/anim3D/src/KeyCBProxy.i3.html, help/gen_html/anim3D/src/LightGO.i3.html, help/gen_html/anim3D/src/LightGO.m3.html, help/gen_html/anim3D/src/LineGO.i3.html, help/gen_html/anim3D/src/LineGO.m3.html, help/gen_html/anim3D/src/LineGOProxy.i3.html, help/gen_html/anim3D/src/LineTypeProp.i3.html, help/gen_html/anim3D/src/LineTypeProp.m3.html, help/gen_html/anim3D/src/LineTypePropPrivate.i3.html, help/gen_html/anim3D/src/LineTypePropProxy.i3.html, help/gen_html/anim3D/src/MarkerGO.i3.html, help/gen_html/anim3D/src/MarkerGO.m3.html, help/gen_html/anim3D/src/MarkerGOProxy.i3.html, help/gen_html/anim3D/src/MarkerTypeProp.i3.html, help/gen_html/anim3D/src/MarkerTypeProp.m3.html, help/gen_html/anim3D/src/MarkerTypePropPrivate.i3.html, help/gen_html/anim3D/src/MarkerTypePropProxy.i3.html, help/gen_html/anim3D/src/Matrix4.i3.html, help/gen_html/anim3D/src/Matrix4.m3.html, help/gen_html/anim3D/src/MouseCB.i3.html, help/gen_html/anim3D/src/MouseCB.m3.html, help/gen_html/anim3D/src/MouseCBProxy.i3.html, help/gen_html/anim3D/src/Mth.i3.html, help/gen_html/anim3D/src/Mth.m3.html, help/gen_html/anim3D/src/OrthoCameraGO.i3.html, help/gen_html/anim3D/src/OrthoCameraGO.m3.html, help/gen_html/anim3D/src/OrthoCameraGOProxy.i3.html, help/gen_html/anim3D/src/PerspCameraGO.i3.html, help/gen_html/anim3D/src/PerspCameraGO.m3.html, help/gen_html/anim3D/src/PerspCameraGOProxy.i3.html, help/gen_html/anim3D/src/Point3.i3.html, help/gen_html/anim3D/src/Point3.m3.html, help/gen_html/anim3D/src/PointLightGO.i3.html, help/gen_html/anim3D/src/PointLightGO.m3.html, help/gen_html/anim3D/src/PointLightGOProxy.i3.html, help/gen_html/anim3D/src/PointProp.i3.html, help/gen_html/anim3D/src/PointProp.m3.html, help/gen_html/anim3D/src/PointPropPrivate.i3.html, help/gen_html/anim3D/src/PointPropProxy.i3.html, help/gen_html/anim3D/src/PolygonGO.i3.html, help/gen_html/anim3D/src/PolygonGO.m3.html, help/gen_html/anim3D/src/PolygonGOProxy.i3.html, help/gen_html/anim3D/src/PositionCB.i3.html, help/gen_html/anim3D/src/PositionCB.m3.html, help/gen_html/anim3D/src/PositionCBProxy.i3.html, help/gen_html/anim3D/src/Prop.i3.html, help/gen_html/anim3D/src/Prop.m3.html, help/gen_html/anim3D/src/PropList.i3.html, help/gen_html/anim3D/src/PropList.m3.html, help/gen_html/anim3D/src/PropPrivate.i3.html, help/gen_html/anim3D/src/PropProxy.i3.html, help/gen_html/anim3D/src/ProxiedObj.i3.html, help/gen_html/anim3D/src/QuadMeshGO.i3.html, help/gen_html/anim3D/src/QuadMeshGO.m3.html, help/gen_html/anim3D/src/QuadMeshGOProxy.i3.html, help/gen_html/anim3D/src/Quaternion.i3.html, help/gen_html/anim3D/src/Quaternion.m3.html, help/gen_html/anim3D/src/RasterModeProp.i3.html, help/gen_html/anim3D/src/RasterModeProp.m3.html, help/gen_html/anim3D/src/RasterModePropPrivate.i3.html, help/gen_html/anim3D/src/RasterModePropProxy.i3.html, help/gen_html/anim3D/src/RealProp.i3.html, help/gen_html/anim3D/src/RealProp.m3.html, help/gen_html/anim3D/src/RealPropPrivate.i3.html, help/gen_html/anim3D/src/RealPropProxy.i3.html, help/gen_html/anim3D/src/RootGO.i3.html, help/gen_html/anim3D/src/RootGO.m3.html, help/gen_html/anim3D/src/RootGOPrivate.i3.html, help/gen_html/anim3D/src/RootGOProxy.i3.html, help/gen_html/anim3D/src/ShadingProp.i3.html, help/gen_html/anim3D/src/ShadingProp.m3.html, help/gen_html/anim3D/src/ShadingPropPrivate.i3.html, help/gen_html/anim3D/src/ShadingPropProxy.i3.html, help/gen_html/anim3D/src/SphereGO.i3.htm