[M3devel] Fwd: Re: build problems with libunicode

Rodney M. Bates rodney_bates at lcwb.coop
Sun Jun 1 22:53:06 CEST 2014


Resend, after ~~48 hours


-------- Original Message --------
Subject: Re: [M3devel] build problems with libunicode
Date: Fri, 30 May 2014 14:44:38 -0500
From: Rodney M. Bates <rodney_bates at lcwb.coop>
Reply-To: rodney.m.bates at acm.org
To: m3devel at elegosoft.com

Try with the change to m3-libs/libunicode/src/m3makefile that I just checked in.
It just skips building altogether, if not configured for full Unicode WIDECHAR.

On 05/29/2014 08:38 PM, Coleburn, Randy wrote:
> 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>
>

-- 
Rodney Bates
rodney.m.bates at acm.org





More information about the M3devel mailing list