[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