Boost logo

Boost :

Subject: Re: [boost] Build boost 1.40.0 on IBM z/OS (EBCDIC)
From: norbert.hanke_at_[hidden]
Date: 2009-11-03 14:40:32


Hi,

In the meantime I modified both glob.c and regexp.c to correctly handle [a-z] constructs and inserted some additional
#include's here and there. bjam builds itself correctly.
I also set up a the tool definition - os390xlc.jam in my case - and now I can use my existing Jamfiles to build
my own projects. This is already a great step forward!

But when I try to build boost libraries bjam only finds one target and does nothing. What do I do wrong? See output
below.

regards,

Norbert

> ./bjam

WARNING: No python installation configured and autoconfiguration

        failed. See http://www.boost.org/libs/python/doc/building.html
        for configuration instructions or pass
--without-python to

        suppress this message and silently skip all Boost.Python targets

Building the Boost C++ Libraries.

After the build, the headers will be located at

    /home/u250672/cpp/boost

The libraries will be located at

    /home/u250672/cpp/boost/stage/lib

Use 'bjam install --prefix=<path>' if you wish to
install headers and

libraries to a different location and remove the source tree.

...found 1 target...

>

I wrote:

>

>Thanks for the hint! Apparently, the match in numbers.jam is performed by the code in glob.c that assumes that all

>character values are <128. Surprisingly it did not fail in a more drastic way since array bounds are being exceeded.
I

>adapted glob.c for EBCDIC and the numbers.check rule now works correctly.

>

>

>

>Next I will have a closer look at regexp.c . It is being heavily used with expressions like [a-z] that have a very

>strange meaning whithout taking into account that a-z on EBCDIC is not encoded as a consecutive range of character

>values.

>

>

>

>I keep you tuned on the progress.

>

>

>

>regards,

>

>Norbert

>


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk