summaryrefslogtreecommitdiffstats
path: root/doc/porting.txt
blob: fe949cc20fb2fda86e99e68ccc95a0a11e144ce1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52

Notes for Solaris:

    Used static libraries for G++.
    Add -fPIC to compiler line.
    Reorder libraries in libraries.mak files (one pass linking).
    Add space between "-o" and ".tmp.o".
    Add FILTER= for purify

Notes on xlC on AIX (IBM C++):

    No template specialization.
    No namespaces.
    No for scope.
    Destructor warnings.
    No template default arguments.
    Missing standard headers (e.g., <cstdio>, <cstddef>,...)
    No boolean type.

    Be sure makeC++SharedLib is on your path.
    Ignore the "WARNING: Duplicat system: ..." messages from linker.

Notes on IBM compiler on z/OS:
    same Compiler restrictions as on AIX

    the grammar for the Compiler has to be rebuilt because of EBCDIC encoding.

    to be able to build Pegasus, the gnu utilities (for os/390) bison, flex
    make and makedepend are necessary

    the current implementation assumes a server working with an EBCDIC code page
    and a client in an ASCII environment.

    CAVEAT: Since dynamic_cast isn't supported, Provider2 cannot be compiled at
            the moment !

Notes for Mac OS X (10.2.X or Higher) :

   gcc version 3.3.

   use gnutar for extracting pegasus source on Mac OS X.

   Used dynamic libraries for g++.

   Add -dynamiclib -fPIC to compiler line.

   to be able to build Pegasus, dlcompat needed to be installed on Mac OS X.
   dlcomapt is available  from :

   http://www.opendarwin.org/projects/dlcompat/