[Ace-users] [ace-users] Building SVN ACE on Mac OS 10.5

J.T. Conklin jtc at acorntoolworks.com
Mon Nov 5 23:25:31 CST 2007

Doug McCorkle <mccdo at iastate.edu> writes:
>> Doug McCorkle <mccdo at iastate.edu> writes:
>> Thanks for the PRF, and the attached config.log.
>> The problem is the lack of a ACE_HAS_NONCONST_FD_ISSET feature test.
>> This shouldn't be difficult to write.  The ACE_Handle_Set::is_set()
>> code that it's tripping on looks like a good template from which to
>> construct such a test.
> Not being too familiar with the build code can you point me to the
> files that I need to look at for this?

Hi Doug,

While there are feature tests open coded within configure.ac, it's
preferable to create an autoconf macro in one of the *.m4 files in
ACE_wrappers/m4.  This isolates the test, and helps maintainability.

Of the existing *.m4' files, I think platform.m4 probably fits best,
as this is a platform specific feature test.

So we'll create a AC_CHECK_HAS_NONCONST_FD_ISSET autoconf macro.  In
this, we'll try to compile a sample piece of code that will fail if
the platform has a nonconst FD_ISSET macro.  We can use autoconf's
AC_COMPILE_IFELSE macro for this.  This is probably close to what's

    #include <sys/socket.h>
      /* put feature test code here, it should fail to compile if system 
         has a nonconst FD_ISSET macro. */
    # Code to be executed if code compiled successfully goes here
    # (we shouldn't need anything)
    # Code to be executed if code failed to compile goes here
    # (this is where we define the feature test macro)
              [Define to 1 if system has nonconst FD_ISSET() macro.])

Once the new macro is added to platform.m4, it needs to be invoked.
We can do that by puting an invocation right after the calls to

Finally, you need to regenerate the configure script.  I usually do
this with "autoreconf -ivf", which regenerates all the automake/
autoconf machinery, no matter what needs updating.

Hope this helps,


J.T. Conklin

More information about the Ace-users mailing list