[Ace-users] [ace-users] Regular vs autoconf ACE+TAO builds
Douglas C. Schmidt
schmidt at dre.vanderbilt.edu
Sat Nov 10 09:25:11 CST 2007
Hi Thomas,
This is great! Could you please work with J.T. to normalize these differences?
Thanks!
Doug
>(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
>
--
Dr. Douglas C. Schmidt Professor and Associate Chair
Electrical Engineering and Computer Science TEL: (615) 343-8197
Vanderbilt University WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203 NET: d.schmidt at vanderbilt.edu
More information about the Ace-users
mailing list