Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve support for QNX 7.1 #2153

Merged
merged 5 commits into from
Oct 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions ACE/NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ USER VISIBLE CHANGES BETWEEN ACE-7.1.1 and ACE-7.1.2
. Add c++std which can be used in the platform_macros.GNU
to set the C++ revision to be used (results in -std= flag)

. Improve support for QNX 7.1

USER VISIBLE CHANGES BETWEEN ACE-7.1.0 and ACE-7.1.1
====================================================

Expand Down
67 changes: 27 additions & 40 deletions ACE/ace/config-qnx.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@
# error "Could not detect QNX version from macro _NTO_VERSION"
#endif

#define _POSIX_C_SOURCE 199506

// The following defines the Neutrino compiler.
// gcc should know to call g++ as necessary
#ifdef __GNUC__
Expand All @@ -25,19 +23,6 @@

#include "ace/config-g++-common.h"

// /usr/nto/include/float.h defines
// FLT_MAX_EXP 127
// DBL_MAX_EXP 1023
// ace expects 128 & 1024 respectively
// to set the following macros in ace/Basic_Types.h
// These macros are:
#define ACE_SIZEOF_DOUBLE 8
#define ACE_SIZEOF_FLOAT 4

// At least qnx 6.3.2 uses a void return for unsetenv
// This assumes that older versions do too.
#define ACE_HAS_VOID_UNSETENV

/////////////////////////////////////////////////////////////////
// Definition of the features that are available.
//
Expand Down Expand Up @@ -113,18 +98,13 @@
//
// ACE_LACKS Section
/////////////////////////////////////////////////////////////////
#define ACE_LACKS_CONST_TIMESPEC_PTR
#define ACE_LACKS_LINEBUFFERED_STREAMBUF
#define ACE_LACKS_MADVISE
// Multicast_Tests reports for NTO 621 frames from unsubscribed groups
#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
#define ACE_LACKS_RWLOCK_T
#define ACE_LACKS_SO_SNDBUF
#define ACE_LACKS_SO_RCVBUF
#define ACE_LACKS_STREAM_MODULES
#define ACE_LACKS_STROPTS_H
#define ACE_LACKS_STRRECVFD
#define ACE_LACKS_SYSCALL
#define ACE_LACKS_SYSV_SHMEM
#define ACE_LACKS_SYS_SHM_H
#define ACE_LACKS_TIMESPEC_T
Expand All @@ -134,18 +114,30 @@
#define ACE_HAS_SYSCTL
#define ACE_HAS_SIGACTION_CONSTP2 1
#define ACE_LACKS_PTHREAD_SCOPE_PROCESS

#if _NTO_VERSION < 650
# define ACE_LACKS_NFDBITS
# define ACE_LACKS_FD_MASK
# define ACE_LACKS_SYS_MSG_H
# define ACE_LACKS_ALPHASORT
# define ACE_LACKS_STRPTIME
# define ACE_LACKS_POLL_H
#else
# define ACE_HAS_POLL 1
# define ACE_HAS_WCHAR 1
# define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
#define ACE_HAS_POLL 1
#define ACE_HAS_WCHAR 1
#define ACE_HAS_XPG4_MULTIBYTE_CHAR 1

#if _NTO_VERSION < 710
# define ACE_LACKS_CONST_TIMESPEC_PTR
# define ACE_LACKS_RWLOCK_T
# define ACE_LACKS_SO_SNDBUF
# define ACE_LACKS_SO_RCVBUF
# define ACE_LACKS_SYSCALL
# define ACE_LACKS_ITOW
# define ACE_LACKS_WCSICMP
# define ACE_LACKS_WCSNICMP
# define ACE_LACKS_WCSDUP
# define ACE_LACKS_STD_WSTRING
// /usr/nto/include/float.h defines
// FLT_MAX_EXP 127
// DBL_MAX_EXP 1023
// ace expects 128 & 1024 respectively
// to set the following macros in ace/Basic_Types.h
// These macros are:
# define ACE_SIZEOF_DOUBLE 8
# define ACE_SIZEOF_FLOAT 4
# define _POSIX_C_SOURCE 199506
#endif

#define ACE_LACKS_ISCTYPE
Expand All @@ -162,13 +154,6 @@

#define ACE_SIZEOF_WCHAR 4

// No prototypes
#define ACE_LACKS_ITOW
#define ACE_LACKS_WCSICMP
#define ACE_LACKS_WCSNICMP
#define ACE_LACKS_WCSDUP
#define ACE_LACKS_STD_WSTRING

#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
# define ACE_HAS_THREADS
# define ACE_HAS_PTHREADS
Expand All @@ -177,13 +162,15 @@
# define ACE_HAS_PTHREAD_GETCONCURRENCY
#endif /* ACE_MT_SAFE */


// The default value of FD_SETSIZE is 32, but actually x86 NTO
// supports by default at least 1000 descriptors in fd_set.
#if defined( FD_SETSIZE )
#undef FD_SETSIZE
#endif
#define FD_SETSIZE 1000

#define ACE_SSIZE_T_FORMAT_SPECIFIER_ASCII "%ld"
#define ACE_SIZE_T_FORMAT_SPECIFIER_ASCII "%lu"

#include /**/ "ace/post.h"
#endif /* ACE_CONFIG_QNX_H */
6 changes: 0 additions & 6 deletions ACE/ace/os_include/sys/os_select.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,9 @@ extern "C"
{
#endif /* __cplusplus */

#if defined (ACE_LACKS_FD_MASK)
typedef long fd_mask;
#endif /* ACE_LACKS_FD_MASK */

#if defined (ACE_WIN32)
// This will help until we figure out everything:
# define NFDBITS 32 /* only used in unused functions... */
#elif defined (ACE_LACKS_NFDBITS)
# define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */
#endif /* ACE_WIN32 */

#ifdef __cplusplus
Expand Down
Loading