Subject: Re: [boost] Build boost 1.40.0 on IBM z/OS (EBCDIC)
Date: 2009-11-03 14:40:32
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
WARNING: No python installation configured and autoconfiguration
failed. See http://www.boost.org/libs/python/doc/building.html
for configuration instructions or pass
suppress this message and silently skip all Boost.Python targets
Building the Boost C++ Libraries.
After the build, the headers will be located at
The libraries will be located at
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...
>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.
>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
>I keep you tuned on the progress.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk