diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2005-11-04 10:32:55 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2005-11-04 10:32:55 +0000 |
commit | e5c52c53981fe64dd38466277616ee30a135bfe8 (patch) | |
tree | a1610f1d4850bca49ca7cf4d92d1f8b8d9ffe151 /ace | |
parent | b76db9f452e7384180b84589016a088bf4cffa3b (diff) | |
download | ATCD-e5c52c53981fe64dd38466277616ee30a135bfe8.tar.gz |
ChangeLogTag: Fri Nov 4 10:09:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'ace')
-rw-r--r-- | ace/OS_NS_stdlib.cpp | 2 | ||||
-rw-r--r-- | ace/config-vxworks6.1.h | 287 |
2 files changed, 289 insertions, 0 deletions
diff --git a/ace/OS_NS_stdlib.cpp b/ace/OS_NS_stdlib.cpp index 566de3bf950..fa21fed3106 100644 --- a/ace/OS_NS_stdlib.cpp +++ b/ace/OS_NS_stdlib.cpp @@ -337,8 +337,10 @@ ACE_OS::realpath (const char *file_name, dest = rpath; } +#if !defined (ACE_LACKS_SYMLINKS) char expand_buf[PATH_MAX]; // Extra buffer needed to expand symbolic links int nlinks = 0; +#endif while (*file_name) { diff --git a/ace/config-vxworks6.1.h b/ace/config-vxworks6.1.h new file mode 100644 index 00000000000..abc2a4a305e --- /dev/null +++ b/ace/config-vxworks6.1.h @@ -0,0 +1,287 @@ +/* -*- C++ -*- */ +// $Id$ + +// The following configuration file is designed to work for VxWorks +// 6.1 platforms using one of these compilers: +// 1) The GNU g++ compiler that is shipped with Tornado 2.2 or newer. +// 2) The Green Hills 1.8.8 and newer 1.8.9 compilers (not tested +// already for a long time) +// 3) The WindRiver Compiler (formerly known as Diab) + +#ifndef ACE_CONFIG_H +#define ACE_CONFIG_H +#include /**/ "ace/pre.h" + +#if ! defined (VXWORKS) +# define VXWORKS +#endif /* ! VXWORKS */ + +#if ! defined (ACE_VXWORKS) +# define ACE_VXWORKS 0x610 +#endif /* ! ACE_VXWORKS */ + +#if ! defined (__ACE_INLINE__) +# define __ACE_INLINE__ +#endif /* ! __ACE_INLINE__ */ + +// Compiler-specific configuration. +#if defined (__GNUG__) +# include "ace/config-g++-common.h" + +# define ACE_LACKS_IOSTREAM_FX + +# if !defined (ACE_MAIN) +# define ACE_MAIN ace_main +# endif /* ! ACE_MAIN */ + +# define ACE_LACKS_LINEBUFFERED_STREAMBUF + +# if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) + // GNU 3.3+ toolchain supports long long types but fails to define this so STL + // skips some definitions +# if !defined (_GLIBCPP_USE_LONG_LONG) +# define _GLIBCPP_USE_LONG_LONG +# endif +# endif /* (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) */ + +#elif defined (ghs) + // Processor type, if necessary. Green Hills defines "ppc". +# if defined (ppc) +# define ACE_HAS_POWERPC_TIMER +# define ACE_LACKS_CLEARERR +# endif /* ppc */ + +# define ACE_CONFIG_INCLUDE_GHS_COMMON +# include "ace/config-ghs-common.h" + +# define ACE_LACKS_UNISTD_H +# define ACE_LACKS_IOSTREAM_TOTALLY + +// Short-circuit the include of <arpa/inet.h> +// Green Hills has a problem with multiply defined functions +// with different parameters. +# define __INCineth + +#elif defined (__DCPLUSPLUS__) || defined (__DCC__) + // Diab 4.2a or later. +# if !defined (ACE_LACKS_PRAGMA_ONCE) + // We define it with a -D with make depend. +# define ACE_LACKS_PRAGMA_ONCE +# endif /* ! ACE_LACKS_PRAGMA_ONCE */ + + // Diab doesn't support VxWorks' iostream libraries. +# define ACE_LACKS_IOSTREAM_TOTALLY +# define ACE_LACKS_ACE_IOSTREAM + +# define ACE_HAS_STANDARD_CPP_LIBRARY 1 +# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 0 + +# define ACE_HAS_USING_KEYWORD + +# define ACE_TEMPLATES_REQUIRE_SOURCE + +#else /* ! __GNUG__ && ! ghs && !__DCC__ */ +# error unsupported compiler on VxWorks +#endif /* ! __GNUG__ && ! ghs */ + +// OS-specific configuration +#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG +#define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R +#define ACE_MKDIR_LACKS_MODE +#define ACE_HAS_NONCONST_GETBY +#define ACE_HAS_NONCONST_STAT +#define ACE_HAS_NONCONST_SWAB +#define ACE_HAS_NONCONST_READV +#define ACE_HAS_NONCONST_CHDIR +#define ACE_HAS_NONCONST_UNLINK +#define ACE_HAS_NONCONST_OPENDIR +#define ACE_LACKS_UNIX_SYSLOG +#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768 +#define ACE_DEFAULT_THREAD_KEYS 16 +#define ACE_HAS_BROKEN_ACCEPT_ADDR +#define ACE_HAS_NONCONST_SENDMSG +#define ACE_HAS_NONCONST_WRITEV +#define ACE_HAS_CHARPTR_DL +#define ACE_HAS_CHARPTR_SOCKOPT +#define ACE_HAS_CLOCK_GETTIME +#define ACE_HAS_CLOCK_SETTIME +#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES +#define ACE_HAS_CPLUSPLUS_HEADERS +#define ACE_HAS_DIRENT +#define ACE_HAS_DLL 0 +#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT +#define ACE_HAS_MSG +#define ACE_HAS_NONCONST_READV +#define ACE_HAS_NONCONST_SELECT_TIMEVAL +#define ACE_HAS_NONSTATIC_OBJECT_MANAGER +#define ACE_HAS_POSIX_NONBLOCK +#define ACE_HAS_POSIX_TIME +#define ACE_HAS_REENTRANT_FUNCTIONS +#define ACE_HAS_SIGINFO_T +#define ACE_HAS_SIGWAIT +#define ACE_HAS_SIG_ATOMIC_T +#define ACE_HAS_STRDUP_EMULATION +#define ACE_HAS_STRERROR +#define ACE_HAS_THREADS +#define ACE_HAS_STRPTIME +#define ACE_LACKS_ACCESS +#define ACE_LACKS_EXEC +#define ACE_LACKS_FCNTL +#define ACE_LACKS_FILELOCKS +#define ACE_LACKS_FORK +#define ACE_LACKS_FSYNC +#define ACE_LACKS_GETHOSTENT +#define ACE_LACKS_GETSERVBYNAME +#define ACE_LACKS_KEY_T +#define ACE_LACKS_LSTAT +#define ACE_LACKS_MADVISE +#define ACE_LACKS_MALLOC_H +#define ACE_LACKS_MEMORY_H +#define ACE_LACKS_MKFIFO +#define ACE_LACKS_MKTEMP +#define ACE_LACKS_MKSTEMP +#define ACE_LACKS_MMAP +#define ACE_LACKS_MPROTECT +#define ACE_LACKS_MSYNC +#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS +#define ACE_LACKS_SYS_PARAM_H +#define ACE_LACKS_PWD_FUNCTIONS +#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS +#define ACE_LACKS_READDIR_R +#define ACE_LACKS_READLINK +#define ACE_LACKS_REALPATH +#define ACE_LACKS_RLIMIT +#define ACE_LACKS_RWLOCK_T +#define ACE_LACKS_SBRK +#define ACE_LACKS_SEEKDIR +#define ACE_LACKS_SEMBUF_T +#define ACE_LACKS_SIGINFO_H +#define ACE_LACKS_SI_ADDR +#define ACE_LACKS_SOCKETPAIR +#define ACE_LACKS_STRCASECMP +#define ACE_LACKS_STRRECVFD +#define ACE_LACKS_SYSCALL +#define ACE_LACKS_SYSTIME_H +#define ACE_LACKS_SYSV_SHMEM +#define ACE_LACKS_TELLDIR +#define ACE_LACKS_TEMPNAM +#define ACE_LACKS_TIMESPEC_T +#define ACE_LACKS_TRUNCATE +#define ACE_LACKS_UCONTEXT_H +#define ACE_LACKS_UMASK +#define ACE_LACKS_UTSNAME_T +#define ACE_LACKS_NATIVE_STRPTIME +#define ACE_LACKS_WAIT +#define ACE_LACKS_WAITPID +#define ACE_LACKS_DUP2 +#define ACE_PAGE_SIZE 4096 +#define ACE_THR_PRI_FIFO_DEF 101 +#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF +#define ACE_HAS_SIGTIMEDWAIT +#define ACE_HAS_SIGSUSPEND +#if !defined (ACE_VXWORKS_SPARE) +# define ACE_VXWORKS_SPARE spare4 +#endif /* ! ACE_VXWORKS_SPARE */ + +#define ACE_LACKS_STDINT_H +#define ACE_LACKS_INTTYPES_H +#define ACE_LACKS_SYS_SELECT_H +#define ACE_LACKS_SYS_TIME_H +#define ACE_LACKS_SYS_RESOURCE_H +#define ACE_LACKS_DLFCN_H +#define ACE_LACKS_SYS_UIO_H +#define ACE_LACKS_SYS_IPC_H +#define ACE_LACKS_SYS_SEM_H +#define ACE_LACKS_STROPTS_H +#define ACE_LACKS_SYS_MSG_H +#define ACE_LACKS_WCHAR_H +#define ACE_LACKS_PWD_H +#define ACE_LACKS_SEARCH_H +#define ACE_LACKS_SYS_SHM_H +#define ACE_LACKS_STRINGS_H +#define ACE_LACKS_TERMIOS_H +#define ACE_LACKS_POLL_H +#define ACE_LACKS_WCTYPE_H + +// Some string things +#define ACE_LACKS_WCSCAT +#define ACE_LACKS_WCSCHR +#define ACE_LACKS_WCSCMP +#define ACE_LACKS_WCSCPY +#define ACE_LACKS_WCSCSPN +#define ACE_LACKS_WCSLEN +#define ACE_LACKS_WCSNCAT +#define ACE_LACKS_WCSNCMP +#define ACE_LACKS_WCSNCPY +#define ACE_LACKS_WCSPBRK +#define ACE_LACKS_WCSRCHR +#define ACE_LACKS_WCSSPN +#define ACE_LACKS_WCSSTR +#define ACE_LACKS_WCSTOK +#define ACE_LACKS_TOWLOWER +#define ACE_LACKS_TOWUPPER +#define ACE_LACKS_ITOW +#define ACE_LACKS_WCSICMP +#define ACE_LACKS_WCSNICMP +#define ACE_LACKS_WCSTOD +#define ACE_LACKS_WCSTOL +#define ACE_LACKS_WCSTOUL +#define ACE_LACKS_WCSDUP + +#define ACE_LACKS_SYMLINKS +#define ACE_LACKS_FGETWC +#define ACE_LACKS_FGETWS +#define ACE_LACKS_FPUTWS + +// It is possible to enable pthread support with VxWorks, when the user decides +// to use this, we need some more defines +#if defined ACE_HAS_PTHREADS +# define ACE_HAS_PTHREADS_STD +# define ACE_LACKS_CONDATTR_PSHARED +# define ACE_LACKS_MUTEXATTR_PSHARED +# define ACE_HAS_THREAD_SPECIFIC_STORAGE +# define ACE_HAS_POSIX_SEM +// Include this file, the sys/stat.h file shipped with VxWorks has old types +// and without this include we get a lot of compile errors. A TSR has been filed +// so that hopefully in the future we can zap this include +#include "types/vxTypesOld.h" +#else +# define ACE_LACKS_PTHREAD_H +# define ACE_LACKS_COND_T +// VxWorks has no recursive mutexes. This was set in the past but it doesn't +// work with the pthread support, so only set it for the time being when pthread +// is disabled +# define ACE_HAS_RECURSIVE_MUTEXES +// VxWorks does not have the pthread_mutex_timedlock operation, but there is +// an emulation for this when not using the pthread mapping +#define ACE_HAS_MUTEX_TIMEOUTS +#define ACE_HAS_TSS_EMULATION +#endif + +#if !defined (ACE_MT_SAFE) +# define ACE_MT_SAFE 1 +#endif + +// Needed include to get all VxWorks CPU types +#include "types/vxCpu.h" +#if (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4) +// If running an Intel Pentium the +// ACE_OS::gethrtime () can use the RDTSC instruction. +# define ACE_HAS_PENTIUM +#endif + +#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE) +# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536 +#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */ + +#if !defined (ACE_NTRACE) +# define ACE_NTRACE 1 +#endif /* ACE_NTRACE */ + +// By default, don't include RCS Id strings in object code. +#if !defined (ACE_USE_RCSID) +#define ACE_USE_RCSID 0 +#endif /* !ACE_USE_RCSID */ + +#include /**/ "ace/post.h" +#endif /* ACE_CONFIG_H */ |