[M3commit] CVS Update: cm3
Tony Hosking
hosking at cs.purdue.edu
Mon Jan 7 21:16:47 CET 2008
Jay, I am very nervous about the pervasive nature of some of your
recent commits. NT386GNU is usually configured with
OS_TYPE="POSIX". Thus, the m3makefile for cm3, which contains the
following:
if equal (OS_TYPE, "POSIX")
interface ("M3Backend")
implementation ("M3BackPosix")
implementation ("UtilsPosix")
else
import ("m3objfile")
import ("m3back")
interface ("M3Backend")
implementation ("M3BackWin32")
implementation ("UtilsWin32")
end
will build a POSIX backend for you on NT386GNU which should do the
right thing in invoking the gcc-based backend. Your changes, which
hardwire things in cm3 for NT386GNU are thus unnecessary. I suggest
you back these changes out and reconsider things. Certainly,
NT386GNU should be considered as an independent POSIX target from the
NT386 WIN32 target. Thus, one need not make changes to M3BackWin32
for NT386GNU, since it is treated as a POSIX target.
As far as threading goes, if user-level threading for NT386 does not
work then I can imagine it would be OK to use native WIN32 threads.
The switch for that is in m3core/src/thread/m3makefile, which would
check for TARGET="NT386GNU" and choose sibdirectory WIN32 instead of
using OS_TYPE to pick subdirectory POSIX.
On Jan 7, 2008, at 8:38 AM, Jay Krell wrote:
> CVSROOT: /usr/cvs
> Changes by: jkrell at birch. 08/01/07 08:38:15
>
> Modified files:
> cm3/m3-libs/m3core/src/unix/cygwin/: Umman.i3 Uresource.i3
> Utypes.m3
> cm3/m3-sys/cm3/src/: Builder.i3 Builder.m3 M3BackPosix.m3
> M3BackWin32.m3 M3Backend.i3
> cm3/m3-sys/cminstall/src/config/: NT386GNU
> cm3/m3-sys/m3front/src/misc/: M3Front.m3
>
> Log message:
> some fixes for NT386GNU (cygwin)
>
> let win32 cm3 use the gcc backend if target == NT386GNU
> might need a better interface here?
> switching on target name is probably the wrong thing
> need something called "use gcc backend" or somesuch
>
> loosen the check for file name vs. module name to account for
> paths with both types of slashes
> might need a better interface/implementation here?
> should try to get the paths to line up instead?
>
> remove -fPIC since it warns that it is redundant (though the
> warning is probably wrong
> in other details -- not all code is position independent, merely
> relocatable..)
>
> use configured ar, /usr/bin/ar doesn't work, just plain ar does
>
> update Umman.i3 MAP_ANONYMOUS to new shorter name MAP_ANON
>
> update Uresource.i3 from struct_rusage_start to VAR struct_rusage
>
> fix warning about unused import long in Utypes.m3
>
> change SYSTEM_CC from cc to gcc because cc is something on my system,
> that I have not investigated, and doesn't work; gcc is perfectly
> ok here, though
> cc lines up nicely with the other two character names -- ar and as
>
> now need to deal with threads to get m3core to build
More information about the M3commit
mailing list