[Ace-users] [ace-users] Regular vs autoconf ACE+TAO builds
Thomas Girard
thomas.g.girard at free.fr
Thu Nov 8 15:42:02 CST 2007
Hello,
(A shortened PRF is appended to this email.)
Here is an update to my earlier posts[1][2] on how to compare regular vs
autoconf builds.
The script used to compare is available at [3]. To use it you must:
1. define $ACE_ROOT
2. launch it with two arguments: platform specific config.h and
configure generated config.h
For instance, on my machine, I used, from $ACE_ROOT directory:
me at machine$ ../ace-cmp.sh ./ace/config-linux.h ../objdir/config.h
I believe running this on different platforms could be a good way to
improve autoconf support and spot missing macros.
On my amd64, Debian GNU/Linux box, I get the output available at [4].
Analyzing first differences (next ones later), we see that in regular
builds the following macros are defined to 1, while they are not using
autoconf:
* ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO
o documented in $ACE_ROOT/ace/README
o used in $ACE_ROOT/ace/OS_NS_sys_socket.inl for:
- ACE_OS::getpeername
- ACE_OS::getsockname
o no autoconf test
* ACE_HAS_ALLOCA_H
o used in $ACE_ROOT/ace/os_include/os_stdlib.h only
to include <alloca.h>, i.e. *not* used
o autoconf test, flag --enable-alloca [no]
* ACE_HAS_BSWAP_{16,32,64}
o ACE_HAS_BSWAP_16 and ACE_HAS_BSWAP_32 used in
$ACE_ROOT/ace/CDR_Base.inl
o typo for ACE_HAS_BSWAP_64 in first occurrence
o no autoconf test
* ACE_HAS_INTEL_ASSEMBLY
o used in :
- $ACE_ROOT/ace/Atomic_Op.cpp
- $ACE_ROOT/ace/CDR_Base.inl
- $ACE_ROOT/ace/CDR_Base.cpp
o no autoconf test
* ACE_HAS_NONCONST_SETRLIMIT
o documented in $ACE_ROOT/ace/README
o used in $ACE_ROOT/ace/OS_NS_sys_resource.inl
o working autoconf test, i.e. error in regular builds
* ACE_HAS_POSIX_MESSAGE_PASSING
o *not* used
o no autoconf test
* ACE_HAS_RECURSIVE_MUTEXES
o used in:
- $ACE_ROOT/ace/OS_NS_Thread.{inl,h,cpp}
- $ACE_ROOT/ace/Recursive_Thread_Mutex.{inl,h,cpp}
o no autoconf test
More analysis later.
Regards,
Thomas
8<----------8<----------8<----------8<----------8<----------8<----------8<----
ACE VERSION:
5.6.1
HOST MACHINE and OPERATING SYSTEM:
Debian GNU/Linux unstable on amd64
TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
N/A
COMPILER NAME AND VERSION (AND PATCHLEVEL):
g++ (GCC) 4.1.3 20071019 (prerelease) (Debian 4.1.2-17)
THE $ACE_ROOT/ace/config.h FILE: generated, available at [5]
8<----------8<----------8<----------8<----------8<----------8<----------8<----
[1] http://groups.google.cl/group/comp.soft-sys.ace/msg/2aeed841ff5279c0
[2] http://groups.google.cl/group/comp.soft-sys.ace/browse_thread/thread/d7b60d694016b951
[3] http://thomas.g.girard.free.fr/ace/ace-cmp.sh
[4] http://thomas.g.girard.free.fr/ace/ace_5.6.1_regular-to-autoconf.diff
[5] http://thomas.g.girard.free.fr/ace/config.h
More information about the Ace-users
mailing list