John Benito wrote:
Martin,

The configuration for the EDG on Solaris seems to have some issues in respect to the compiler command line option or maybe I am just trying to build something that does not make good sense (typical tester - try each and every option). If you try to do a BUILDMODE=shared,threads it passes a -shared flag to eccp, which is not a flag that EDG front-end recognizes.

Yes, AFAIK, there is no way to build a shared library with EDG eccp.
The EDG eccp demo also expects gcc 3.x or better as the back end but
doesn't like the binutils that g++ 3.x normally requires on Solaris.
So in my builds I set up gcc 3/4 without GNU binutils (i.e., rely on
the native system linker). That makes eccp work but doesn't let you
use the underlying g++ to link C++ code. It's kind of a pain, but
what wouldn't I do for strict conformance? ;-)


BTW, I am working on a Solaris box that is running 5.10. Am currently seeing quite a few issues with building with EDG, is 5.10 supported?

I have 3.6 on Solaris 9 but I haven't tried it on 10 yet. Let me
give it a try and get back to you. You might be able to get a more
reliable answer straight from EDG (assuming they've tested it there).


Have not taken the time to look at the diagnostics yet. Currently trying the command

make BUILDDIR=/home/benito/stdcxx15d BUILDMODE=debug,threads CONFIG=eccp.config

I would suggest

  make BUILDDIR=/home/benito/stdcxx-11s \
       BUILDTYPE=11s \
       CONFIG=eccp.config

Martin


Thanks,

jb -

Martin Sebor wrote:

John Benito wrote:

Martin,

Good, because that is what I did (commented out the MAPFILE). It seems to have built a library, will test it tomorrow. Thanks for all the help!



FWIW, if you're planning to test it for conformance you should be
aware of the _RWSTD_STRICT_ANSI (or _RWSTD_NO_EXTENSIONS) macros
that, when #defined, disable most extensions. While the library
should be binary comatible either way you should probably build
it with the same setting of the macro as how you plan to test it
since it might also disable some extensions in the library sources.

In addition, to achieve the the strictest possible conformance I
would suggest to use a recent version of EDG eccp (3.x) on Solaris.
With it the C library headers (such as <stddef.h> and <cstddef>)
do the right thing in terms of introducing the required symbols
only in the required namespaces and not polluting them with any
others. That said, due to the restriction to just the names
required by the C and C++ standards and nothing else the library
isn't terribly useful for development in this mode.


Happy Holidays!



And happy testing to you! :)
Martin



Reply via email to