[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Wed Dec 31 00:49:10 CET 2008


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	08/12/31 00:49:10

Modified files:
	cm3/m3-libs/libm3/src/os/POSIX/: ProcessPosixCommon.m3 
	cm3/m3-libs/m3core/src/thread/POSIX/: ThreadPosix.m3 
	cm3/m3-libs/m3core/src/thread/PTHREAD/: ThreadPThread.m3 
	cm3/m3-libs/m3core/src/thread/WIN32/: WaitProcessCygwin.m3 
	cm3/m3-libs/m3core/src/unix/Common/: m3makefile 
	cm3/m3-libs/m3core/src/unix/cygwin/: m3makefile 
	cm3/m3-libs/m3core/src/unix/linux-common/: m3makefile 
	cm3/m3-libs/m3core/src/unix/openbsd-common/: m3makefile 
	cm3/m3-libs/sysutils/src/POSIX/: SystemPosix.m3 m3makefile 
Added files:
	cm3/m3-libs/m3core/src/: Uwaitpid.quake 
	cm3/m3-libs/m3core/src/unix/Common/: Uexec.i3 
	cm3/m3-sys/cm3/src/: cm3root.txt 
Removed files:
	cm3/m3-libs/m3core/src/unix/Common/: Uwaitpid.c Uwaitpid.i3 
	cm3/m3-libs/m3core/src/unix/cygwin/: Uexec.i3 
	cm3/m3-libs/m3core/src/unix/linux-common/: Uexec.i3 
	cm3/m3-libs/m3core/src/unix/openbsd-common/: Uexec.i3 

Log message:
	Replace Uexec.waitpid with new portable (C-wrapped) Uwaitpid.
	Thus removing its endian-dependent-ness and otherwise mostly header cloning-ness.
	(even C wrappers resemble header cloning, but in a simpler more portable way)
	
	Take care to use Uwaitpid in m3-libs/sysutils via copying,
	so that bootstrapping new sysutils against old m3core works.
	(Thus why Uwaitpid.{c,i3} deleted and replaced by Uwaitpid.quake).
	
	This very likely fixes a bug in {I386,AMD64}_DARWIN, but
	that is not confirmed, and could be fixed otherwise.
	This also very likely fixes a bug in some platforms that use linux-common or openbsd-common.
	Note that as long as children processes succeed, probably no bug.
	zero is zero, no matter little endian or big endian.
	And likely the only important point is if the value is zero or non-zero, so again ok.
	
	cm3root.txt: possible spec for a change to cm3 to "reduce external automation"




More information about the M3commit mailing list