[M3devel] build problems with libunicode

Coleburn, Randy rcolebur at SCIRES.COM
Fri May 30 03:38:01 CEST 2014


Jay / Rodney:

Well I didn't "pick" anything, but it appears that since I chose to rebuild everything based on pkginfo.txt that is why libunicode is now trying to build on my Windows box.

I have several options:

1.      Using my build scripts, I could choose to exclude libunicode (I have an option for that).

2.      We could modify the cm3.cfg and m3makefile as Jay suggests to prevent libunicode from trying to build unless Unicode_WIDECHAR is defined and TRUE.

3.      Etc.

For the short term, I think I'll try #1.
Then, I'll think about some mods for #2 and commit them if they test out.  That way, the Unicode_WIDECHAR could be used to turn this feature on and off as Rodney suggested.

For the elego\prjm package, I'm not sure whether it is supposed to be buildable on Windows.  If not, I can just exclude it, or we can modify the m3makefile to prevent it from building on Windows.  Obviously, I never used this package before.

Thanks for your help!

Thanks,
Randy

From: jayk123 at hotmail.com [mailto:jayk123 at hotmail.com] On Behalf Of Jay K
Sent: Thursday, May 29, 2014 9:12 PM
To: Coleburn, Randy; m3devel
Subject: EXT:RE: [M3devel] build problems with libunicode

I guess Unicode_WIDECHAR = TRUE is what you picked, so:

if not defined("Unicode_WIDECHAR")
 Unicode_WIDECHAR = FALSE
end
in cm3cfg.common and libunicode/src/m3makefile

and then if Unicode_WIDECHAR around the rest of libunicode/src/m3makefile?


I would have likely used a function returning byte size.



 - Jay


________________________________
From: jay.krell at cornell.edu<mailto:jay.krell at cornell.edu>
To: rcolebur at scires.com<mailto:rcolebur at scires.com>; m3devel at elegosoft.com<mailto:m3devel at elegosoft.com>
Subject: RE: [M3devel] build problems with libunicode
Date: Fri, 30 May 2014 00:07:11 +0000
Can https://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/libunicode/src/m3makefile


do something to filter itself out from building with a compiler that won't work?

Can you add a builtin quake function
WideCharByteSize() or some other name

that returns 2 or 4, and in cm3cfg.common, if it isn't already defined (builtin), define one that returns 2?
and then, in libunicode/src/m3makefile, do the same thing, define a function that returns 2 if it isn't already defined?



 - Jay

> From: rcolebur at SCIRES.COM<mailto:rcolebur at SCIRES.COM>
> To: m3devel at elegosoft.com<mailto:m3devel at elegosoft.com>
> Date: Thu, 29 May 2014 21:37:59 +0000
> Subject: Re: [M3devel] build problems with libunicode
>
> Rodney:
>
> I looked thru the various cm3.cfg files (and the ones that get included) and I don't anywhere see a line with "Unicode_WIDECHAR" in it.
>
> So, not sure why libunicode is trying to build on Windows (NT386).
>
> --Randy Coleburn
>
> -----Original Message-----
> From: Coleburn, Randy
> Sent: Thursday, May 29, 2014 4:55 PM
> To: m3devel at elegosoft.com<mailto:m3devel at elegosoft.com>
> Subject: Re: [M3devel] build problems with libunicode
>
> Rodney:
>
> Thanks very much for your response.
>
> As far as I know, I've not changed the default configuration of my compiler, so based on your statement, I don't see why libunicode should be trying to build.
>
> I'll take a look at your release notes.
>
> Thanks,
> Randy Coleburn
>
> -----Original Message-----
> From: Rodney M. Bates [mailto:rodney_bates at lcwb.coop]
> Sent: Thursday, May 29, 2014 11:27 AM
> To: m3devel at elegosoft.com<mailto:m3devel at elegosoft.com>
> Subject: EXT:Re: [M3devel] build problems with libunicode
>
>
>
> On 05/29/2014 12:40 AM, Coleburn, Randy wrote:
> > I've been rebuilding everything from the HEAD branch on Windows XP (32-bit).
> >
> > The m3-libs\libunicode package fails to build (see errors below).
> >
> > I haven't taken time yet to look at the source code, but wanted to go ahead and post these results to the group in case someone knows of a quick fix.
> >
> > The problem module is: UnsafeUniCodec.m3
> >
> > Thanks,
> >
> > Randy Coleburn
> >
>
> I am responsible for libunicode.
>
> 1. libunicode won't and is not designed to build unless the compiler is
> configured to make WIDECHAR have full unicode range, which, by default,
> it is not.
>
> 2. The simplest way to thus configure the compiler is to add the line
> Unicode_WIDECHAR="TRUE" to cm3.cfg, in /usr/local/cm3/bin, then rebuild
> everything, starting with m3core.
>
> You can bootstrap all of this using the release compiler, see cm3/scripts/README-build-unicode
>
> I put libunicode in a separate package for that reason, and left the compiler configured by default for the existing 16-bit range of WIDECHAR, so there would be no perturbation to anybody's code unless you take some action.
>
> We can change the default if there is consensus to do so. Most code should not be affected, but some lower-level things will be. There is lots of info on this subject, including what you get from it and what kinds of code might be affected in:
>
> cm3/README-unicode-summary
> cm3/README-unicode
> cm3/scripts/README-build-unicode
>
> Rodney Bates
> rodney.m.bates at acm.org<mailto:rodney.m.bates at acm.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20140530/59bbf6ba/attachment-0002.html>


More information about the M3devel mailing list