diff options
author | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-06-10 15:21:22 +0000 |
---|---|---|
committer | levine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-06-10 15:21:22 +0000 |
commit | afa9e2467a74eb68a95671857451d09fd58ae121 (patch) | |
tree | a0411dec7dcc16350f5011f5dd1b66de5d67f5a7 /os-patches/vxworks-5.1.txt | |
parent | e47417af65cd323b6c1c80a30557840458f6f884 (diff) | |
download | ATCD-afa9e2467a74eb68a95671857451d09fd58ae121.tar.gz |
added these notes for using ACE with VxWorks 5.1
Diffstat (limited to 'os-patches/vxworks-5.1.txt')
-rw-r--r-- | os-patches/vxworks-5.1.txt | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/os-patches/vxworks-5.1.txt b/os-patches/vxworks-5.1.txt new file mode 100644 index 00000000000..ed34cbdeb29 --- /dev/null +++ b/os-patches/vxworks-5.1.txt @@ -0,0 +1,75 @@ +An anonymous contributor provided the following notes for using ACE +with VxWorks 5.1: + +Hope this helps someone else. Note that I didn't run the tests on ACE so +I can't say that everything works. What I ended up doing was writing a +few tests of my own to test out some of the features and get a feel for +what ACE could do so beware that maybe these aren't the +only things that one would have to change. + + 1) Prerequisite -- make sure C++ run time support is working (like + global/static constructor/destructor invocation) + + 2) Used "$ACE_ROOT/include/makeinclude/platform_macros.GNU" for a guide + to setup my environment variables. + + - ACE_ROOT, WIND_BASE, WIND_HOST_TYPE, CPU, and TOOLENV + + 3) copied $ACE_ROOT/ace/config-vxworks5.x.h to $ACE_ROOT/ace/config.h + + 4) copied $ACE_ROOT/include/makeinclude/platform_vxworks5.x_g++.GNU + to $ACE_ROOT/include/makeinclude/platform_macros.GNU + + 5) had to modify ${ACE_ROOT}/include/makeinclude/platform_macros.GNU + to add -DCPU=SPARClite, -msparclite to CCFLAGS and add + $(ACE_ROOT) and /usr/local/lib/g++-include to INCLDIRS + + I think this was a "make" issue. + + 6) had to modify $ACE_ROOT/ace/config.h + to set/reset the following ACE configuration parameters: + + ACE_LACKS_POSIX_TIME, ACE_LACKS_SIGINFO_T, ACE_LACKS_IOSTREAM_TOTALLY, + ACE_NEEDS_FTRUNCATE, ACE_LACKS_ACE_IOSTREAM + + 7) added the following to $ACE_ROOT/ace/config.h: + +#define ACE_SIZEOF_CHAR 1 +#define ACE_SIZEOF_SHORT 2 +#define ACE_SIZEOF_INT 4 +#define ACE_SIZEOF_LONG 4 +#define ACE_SIZEOF_LONG_LONG 8 +#define ACE_SIZEOF_FLOAT 4 +#define ACE_SIZEOF_DOUBLE 8 +#define ACE_SIZEOF_LONG_DOUBLE 16 +#define ACE_SIZEOF_VOID_P 4 + +/* + * Since VxWorks does have clock_gettime() I really didn't want + * to set ACE_LACKS_CLOCK_GETTIME to get this define, so I made + * one of my own. + */ +typedef int clockid_t; + +/* + * Prototypes for VxWorks functions that ACE uses. + */ +extern "C" char *sysBspRev(void); +extern "C" char *getcwd(char *, int); +extern "C" int clock_gettime(clockid_t, struct timespec *); +extern "C" int nanosleep(const struct timespec *, struct timespec *); + +/* + * These because of some quirks with ACE_LACKS_IOSTREAMS_TOTALLY + */ +#define ACE_DEFAULT_LOG_STREAM 0 + + 8) I changed the last call argument in Log_Msg.cpp line 1095 from: + + this->msg_ostream ()); + + to this: + + (FILE *) (this->msg_ostream ())); + + 9) I used the 2.7.2.1 GNU compiler. |