diff options
Diffstat (limited to 'aclocal.m4')
-rw-r--r-- | aclocal.m4 | 2994 |
1 files changed, 0 insertions, 2994 deletions
diff --git a/aclocal.m4 b/aclocal.m4 deleted file mode 100644 index a9158f7d003..00000000000 --- a/aclocal.m4 +++ /dev/null @@ -1,2994 +0,0 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4 - -dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl ACE M4 include file which contains general M4 macros -dnl to be used by the ACE configure script. -dnl -dnl The macros in this file were designed for ACE but should be -dnl general enough for general use. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - -dnl miscellaneous macros - -dnl Prevent the configure script continuing any further if a CVS control -dnl directory is found. The idea is to prevent files generated during -dnl configuration and build from be checked in to the CVS repository that -dnl the sources are checked into. This should only be an issue for -dnl maintainers, not end-users. Maintainers should configure and build in -dnl a directory that doesn't contain any CVS controlled sources and files, -dnl i.e. that doesn't contain a CVS directory. -dnl -dnl Usage: ACE_CHECK_FOR_CVS_DIR -AC_DEFUN(ACE_CHECK_FOR_CVS_DIR, -[ - if test -d CVS; then - AC_MSG_ERROR( - [ - This error is meant for maintainers: - - Please configure and build in a non-CVS controlled directory. - Doing so will prevent accidentally committing automatically - generated files into the CVS repository and help ensure that - the generated files and build scheme are correct. - ]) - fi -]) - -dnl Add compiler flags to the CXXFLAGS and CFLAGS variables when doing an -dnl AC_TRY_COMPILE (not ACE_TRY_COMPILE). -dnl Use this macro when adding include directories to the compiler flags, -dnl for example. -dnl Usage: ACE_TRY_COMPILE(COMPILER-FLAGS, INCLUDES, FUNCTION-BODY, -dnl [ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]) -AC_DEFUN(ACE_TRY_COMPILE, dnl -[ - ace_pre_try_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $1" - - ace_pre_try_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $1" - - AC_TRY_COMPILE($2, $3, $4, $5) - - dnl Restore the C++ and C flags - CXXFLAGS="$ace_pre_try_CXXFLAGS" - CFLAGS="$ace_pre_try_CFLAGS" - -]) - -dnl Create a temporary empty file and remove it after commands are done using -dnl it. The directory in which the temporary file will be created in must -dnl exist. Files will be created under the source directory, not the build -dnl directory. -dnl Use this macro when you need a particular file available but want it to be -dnl empty. This is useful to prevent conflicts with autoconf's confdefs.h -dnl header when doing an AC_TRY_COMPILE. -dnl Usage: ACE_USE_TEMP_FILE(TEMP-FILE-TO-CREATE, COMMANDS-THAT-WILL-USE-IT) -AC_DEFUN(ACE_USE_TEMP_FILE, dnl -[ - if test -f ${srcdir}/$1; then - mv ${srcdir}/$1 ${srcdir}/$1.conf - fi - - touch ${srcdir}/$1 - - $2 - - if test -f ${srcdir}/$1.conf; then - mv ${srcdir}/$1.conf ${srcdir}/$1 - else - rm ${srcdir}/$1 - fi -]) - -dnl Run given test(s) with warnings converted to errors -dnl Usage: ACE_CONVERT_WARNINGS_TO_ERRORS(TEST-BLOCK) -AC_DEFUN(ACE_CONVERT_WARNINGS_TO_ERRORS, dnl -[ -dnl If we are using GNU C++, add the "-Werror" compiler flag to the -dnl current set of flags so that compiler warnings become errors. We -dnl do this to cause certain tests to fail when they are supposed to -dnl fail. Some of the tests pass because the GNU C++ compiler issues -dnl warnings instead of errors when errors should occur. -dnl Other "treat warnings as errors" flags for other compilers should -dnl be added if possible. - ace_pre_warning_CXXFLAGS="$CXXFLAGS" - - if test -n "$GXX"; then - CXXFLAGS="$CXXFLAGS -Werror" - else - case $target in - *solaris*) - if test "$CXX" = CC; then - CXXFLAGS="$CXXFLAGS -xwe" - fi - ;; - *) ;; - esac - fi - - $1 - - CXXFLAGS="$ace_pre_warning_CXXFLAGS" -]) - -dnl Wrapper around AC_CACHE_VAL used to ensure "ACTION-IF" commands are run -dnl even if results have been previously cached. -dnl Usage: ACE_CACHE_CHECK(MESSAGE, CACHE-ID, COMMANDS-TO-SET-CACHE-VAL, -dnl ACTION-IF-CACHE-ID-IS-YES, -dnl ACTION-IF-CACHE-ID-IS-NO) -dnl The COMMANDS-TO-SET-CACHE-VAL should set the CACHE-ID to yes or "no," -dnl otherwise the "ACTION-IF*" commands may not run. The -dnl COMMANDS-TO-SET-CACHE-VAL should only set the CACHE value. For example, -dnl no AC_DEFINES should be placed in the COMMANDS-TO-SET-CACHE-VAL. -AC_DEFUN(ACE_CACHE_CHECK, -[ - AC_MSG_CHECKING([$1]) - AC_CACHE_VAL([$2], [$3]) - AC_MSG_RESULT([$]$2) - if test "[$]$2" != no; then - ace_just_a_place_holder=fixme -ifelse([$4], , :, [$4]) - else - ace_just_a_place_holder=fixme -ifelse([$5], , , [$5 -]) - fi -]) - -dnl checks for programs - -dnl checks for libraries - -dnl checks for header files - -dnl checks for typedefs - -dnl Check for specific typedef in given header file -dnl Usage: ACE_CHECK_TYPE(TYPEDEF, INCLUDE, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -dnl This macro can only check for one typedef in one header file at a time!! -AC_DEFUN(ACE_CHECK_TYPE, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - - ACE_CACHE_CHECK(for $1 in $2, ace_cv_type_$1, - [ - AC_TRY_COMPILE( - [ -#include <$2> - ], - [ - $1 ace_$1; - ], - [ - ace_cv_type_$1=yes - ], - [ - ace_cv_type_$1=no - ]) - ], $3, $4) -]) - - -dnl checks for structures - -dnl Check for specific struct in given header file -dnl Usage: ACE_CHECK_STRUCT(STRUCTURE, INCLUDE, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -dnl This macro can only check for one struct in one header file at a time!! -AC_DEFUN(ACE_CHECK_STRUCT, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - -dnl Do the transliteration at runtime so arg 1 can be a shell variable. -dnl ac_safe=`echo "$1" | sed 'y%./+-%__p_%'` - - ACE_CACHE_CHECK(for struct $1 in $2, ace_cv_struct_$1, - [ - ACE_TRY_COMPILE_STRUCT($1, $2, - [ - ace_cv_struct_$1=yes - ], - [ - ace_cv_struct_$1=no - ]) - ], $3, $4) -]) - -dnl Check for specific struct in given header file by compiling a test -dnl program. This macro is used by ACE_CHECK_STRUCT. -dnl Usage: ACE_TRY_COMPILE_STRUCT(STRUCTURE, INCLUDE, -dnl [ACTION-IF-SUCCESSFUL[, ACTION-IF-NOT-SUCCESSFUL]]) -dnl This macro can only check for one struct in one header file at a time!! -AC_DEFUN(ACE_TRY_COMPILE_STRUCT, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - - AC_TRY_COMPILE( - [ -#include <$2> - ], - [ - struct $1 ace_$1; - ], - [ - $3 - ], - [ -dnl Some compilers don't like the "struct" but we need the struct for some -dnl platforms to resolve ambiguities between functions and structures with -dnl with the same name. So, we try the same test but without "struct" if -dnl the above test with "struct" fails. If both tests fail, then we can -dnl be reasonably sure that we don't have the structure we are testing for. - AC_TRY_COMPILE( - [ -#include <$2> - ], - [ - $1 ace_$1; - ], - [ - $3 - ], - [ - $4 - ]) - ]) -]) - -dnl checks for variables - -dnl checks for compiler characteristics - -dnl checks for library functions - -dnl Check for function using prototype in header -dnl This macro is used if a function is called a different name in a given -dnl library than what is in the header file but the difference is made -dnl transparent to the user since the header may provide a macro to make -dnl things "transparent." If the given header does not exist then this -dnl macro acts just like the standard AC_CHECK_FUNC macro. -dnl Usage: ACE_CHECK_FUNC(FUNCTION, HEADER, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -AC_DEFUN(ACE_CHECK_FUNC, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - AC_REQUIRE([AC_PROG_AWK]) - - AC_TRY_CPP( - [ -#include <$2> - ], ace_header_exists=yes, ace_header_exists=no) - - cat > conftest.$ac_ext <<EOF - -#include <$2> - ACE_REAL_FUNCTION $1 - -EOF - - if test "$ace_header_exists" = yes; then - if test -z "$AWK"; then - AC_MSG_WARN(No awk program found. "Real" function may not be found.) - fi - - if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "ACE_REAL_FUNCTION" | - (eval "$AWK '{print \[$]2}' > conftest.awk 2>&1"); then - rm -f conftest.$ac_ext - ace_real_function=`cat conftest.awk` - rm -f conftest.awk - fi - - if test $1 != "$ace_real_function"; then - AC_MSG_CHECKING(for real $1 from $2) - AC_MSG_RESULT($ace_real_function) - fi - else - ace_real_function=$1 - fi dnl test "$ace_header_not_exist" != yes - - AC_CHECK_FUNC($ace_real_function, $3, $4) -]) - -dnl Check for function in library using prototype in header -dnl This macro is used if a function is called a different name in a given -dnl library than what is in the header file but the difference is made -dnl transparent to the user since the header may provide a macro to make -dnl things "transparent." If the given header does not exist then this -dnl macro acts just like the standard AC_CHECK_LIB macro. -dnl Usage: ACE_CHECK_LIB(LIBRARY, FUNCTION, HEADER, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -AC_DEFUN(ACE_CHECK_LIB, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - AC_REQUIRE([AC_PROG_AWK]) - - AC_TRY_CPP( - [ -#include <$3> - ], ace_header_exists=yes, ace_header_exists=no) - - cat > conftest.$ac_ext <<EOF - -#include <$3> - ACE_REAL_FUNCTION $2 - -EOF - - if test "$ace_header_exists" = yes; then - if test -z "$AWK"; then - AC_MSG_WARN(No awk program found. "Real" function in library may not be found.) - fi - - if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "ACE_REAL_FUNCTION" | - eval "$AWK '{print \[$]2}'" > conftest.awk 2>&1; then - rm -f conftest.$ac_ext - ace_real_function=`cat conftest.awk` - rm -f conftest.awk - fi - - if test $2 != "$ace_real_function"; then - AC_MSG_CHECKING(for real $2 from $3) - AC_MSG_RESULT($ace_real_function) - fi - else - ace_real_function=$2 - fi dnl test "$ace_header_not_exist" != yes - - AC_CHECK_LIB($1, $ace_real_function, $4, $5) -]) - - -dnl checks for structures - -dnl checks for system services - - -dnl *********************** SPECIAL SECTION ******************************* -dnl -dnl This section contains my own *re*implementation of the functionality -dnl provided by some tests/macros found in GNU Autoconf since the ones found -dnl in Autoconf don't appear to work as expected. -dnl -dnl -Ossama Othman <ossama@debian.org> -dnl -dnl The copyright for the following macros is listed below. -dnl Note that all macros listed prior to this section are copyrighted -dnl by Ossama Othman, not the Free Software Foundation. Nevertheless, -dnl all software found in this file is free software. Please read the -dnl distribution terms found at the top of this file and the ones below. - -dnl Parameterized macros. -dnl Requires GNU m4. -dnl This file is part of Autoconf. -dnl Copyright (C) 1992, 93, 94, 95, 96, 1998 Free Software Foundation, Inc. -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2, or (at your option) -dnl any later version. -dnl -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -dnl GNU General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception, the Free Software Foundation gives unlimited -dnl permission to copy, distribute and modify the configure scripts that -dnl are the output of Autoconf. You need not follow the terms of the GNU -dnl General Public License when using or distributing such scripts, even -dnl though portions of the text of Autoconf appear in them. The GNU -dnl General Public License (GPL) does govern all other use of the material -dnl that constitutes the Autoconf program. -dnl -dnl Certain portions of the Autoconf source text are designed to be copied -dnl (in certain cases, depending on the input) into the output of -dnl Autoconf. We call these the "data" portions. The rest of the Autoconf -dnl source text consists of comments plus executable code that decides which -dnl of the data portions to output in any given case. We call these -dnl comments and executable code the "non-data" portions. Autoconf never -dnl copies any of the non-data portions into its output. -dnl -dnl This special exception to the GPL applies to versions of Autoconf -dnl released by the Free Software Foundation. When you make and -dnl distribute a modified version of Autoconf, you may extend this special -dnl exception to the GPL to apply to your modified version as well, *unless* -dnl your modified version has the potential to copy into its output some -dnl of the text that was the non-data portion of the version that you started -dnl with. (In other words, unless your change moves or copies text from -dnl the non-data portions to the data portions.) If your modification has -dnl such potential, you must delete any notice of this special exception -dnl to the GPL from your modified version. -dnl -dnl Written by David MacKenzie, with help from -dnl Franc,ois Pinard, Karl Berry, Richard Pixley, Ian Lance Taylor, -dnl Roland McGrath, Noah Friedman, david d zuhn, and many others. - - -dnl Usage: ACE_SEARCH_LIBS(FUNCTION, SEARCH-LIBS [, ACTION-IF-FOUND -dnl [, ACTION-IF-NOT-FOUND [, OTHER-LIBRARIES]]]) -dnl Search for a library defining FUNCTION, if it's not already available. -AC_DEFUN(ACE_SEARCH_LIBS, -[ - AC_CACHE_CHECK(for library containing $1, ac_cv_search_$1, - [ - ac_func_search_save_LIBS="$LIBS" - - ac_cv_search_$1="no" - - ACE_TRY_LINK_FUNC([$1], [ac_cv_search_$1="none required"]) - - test "$ac_cv_search_$1" = "no" && for i in $2; do - LIBS="-l$i $5 $ac_func_search_save_LIBS" - ACE_TRY_LINK_FUNC($1, - [ - ac_cv_search_$1="-l$i" - break - ]) - done - - LIBS="$ac_func_search_save_LIBS" - ]) - - if test "$ac_cv_search_$1" != "no"; then - test "$ac_cv_search_$1" = "none required" || LIBS="$ac_cv_search_$1 $LIBS" - $3 - else : - $4 - fi -]) - -dnl Usage: ACE_TRY_LINK_FUNC(FUNCTION,[, ACTION-IF-FOUND -dnl [, ACTION-IF-NOT-FOUND]) -dnl Search for a library defining FUNCTION, if it's not already available. -AC_DEFUN(ACE_TRY_LINK_FUNC, -[ -AC_TRY_LINK( -dnl Don't include <ctype.h> because on OSF/1 3.0 it includes <sys/types.h> -dnl which includes <sys/select.h> which contains a prototype for -dnl select. Similarly for bzero. -[/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $1(); below. */ -#include <assert.h> -/* Override any gcc2 internal prototype to avoid an error. */ -]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus -extern "C" -#endif -])dnl -[/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $1(); -], [ -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$1) || defined (__stub___$1) -choke me -#else -$1(); -#endif -],[$2],[$3]) -]) - -# Do all the work for Automake. This macro actually does too much -- -# some checks are only needed if your package does certain things. -# But this isn't really a big deal. - -# serial 1 - -dnl Usage: -dnl AM_INIT_AUTOMAKE(package,version, [no-define]) - -AC_DEFUN(AM_INIT_AUTOMAKE, -[AC_REQUIRE([AC_PROG_INSTALL]) -PACKAGE=[$1] -AC_SUBST(PACKAGE) -VERSION=[$2] -AC_SUBST(VERSION) -dnl test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) -fi -ifelse([$3],, -AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) -AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) -AC_REQUIRE([AM_SANITY_CHECK]) -AC_REQUIRE([AC_ARG_PROGRAM]) -dnl FIXME This is truly gross. -missing_dir=`cd $ac_aux_dir && pwd` -AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) -AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) -AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) -AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) -AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) -AC_REQUIRE([AC_PROG_MAKE_SET])]) - -# -# Check to make sure that the build environment is sane. -# - -AC_DEFUN(AM_SANITY_CHECK, -[AC_MSG_CHECKING([whether build environment is sane]) -# Just in case -sleep 1 -echo timestamp > conftestfile -# Do `set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` - if test "[$]*" = "X"; then - # -L didn't work. - set X `ls -t $srcdir/configure conftestfile` - fi - if test "[$]*" != "X $srcdir/configure conftestfile" \ - && test "[$]*" != "X conftestfile $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken -alias in your environment]) - fi - - test "[$]2" = conftestfile - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -rm -f conftest* -AC_MSG_RESULT(yes)]) - -dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) -dnl The program must properly implement --version. -AC_DEFUN(AM_MISSING_PROG, -[AC_MSG_CHECKING(for working $2) -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if ($2 --version) < /dev/null > /dev/null 2>&1; then - $1=$2 - AC_MSG_RESULT(found) -else - $1="$3/missing $2" - AC_MSG_RESULT(missing) -fi -AC_SUBST($1)]) - -# Like AC_CONFIG_HEADER, but automatically create stamp file. - -AC_DEFUN(AM_CONFIG_HEADER, -[AC_PREREQ([2.12]) -AC_CONFIG_HEADER([$1]) -dnl When config.status generates a header, we must update the stamp-h file. -dnl This file resides in the same directory as the config header -dnl that is generated. We must strip everything past the first ":", -dnl and everything past the last "/". -AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl -ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, -<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, -<<am_indx=1 -for am_file in <<$1>>; do - case " <<$>>CONFIG_HEADERS " in - *" <<$>>am_file "*<<)>> - echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx - ;; - esac - am_indx=`expr "<<$>>am_indx" + 1` -done<<>>dnl>>) -changequote([,]))]) - -# Define a conditional. - -AC_DEFUN(AM_CONDITIONAL, -[AC_SUBST($1_TRUE) -AC_SUBST($1_FALSE) -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi]) - - -dnl AM_PROG_LEX -dnl Look for flex, lex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT -AC_DEFUN(AM_PROG_LEX, -[missing_dir=ifelse([$1],,`cd $ac_aux_dir && pwd`,$1) -AC_CHECK_PROGS(LEX, flex lex, "$missing_dir/missing flex") -AC_PROG_LEX -AC_DECL_YYTEXT]) - -# Add --enable-maintainer-mode option to configure. -# From Jim Meyering - -# serial 1 - -AC_DEFUN(AM_MAINTAINER_MODE, -[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode is disabled by default - AC_ARG_ENABLE(maintainer-mode, -[ --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer], - USE_MAINTAINER_MODE=$enableval, - USE_MAINTAINER_MODE=no) - AC_MSG_RESULT($USE_MAINTAINER_MODE) - AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) - MAINT=$MAINTAINER_MODE_TRUE - AC_SUBST(MAINT)dnl -] -) - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl subsets.m4 -dnl -dnl ACE M4 include file which contains ACE specific M4 macros -dnl that set/determine which ACE subsets to build. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - -dnl Check for thread related libraries and compiler flags -dnl Usage: ACE_CHECK_SUBSETS -AC_DEFUN(ACE_CHECK_SUBSETS, dnl -[ - -dnl Begin ACE_CHECK_SUBSETS - -dnl Assume all subsets will be built, including the full ACE library. -dnl If any of the components is explicitly enabled or disabled by the user -dnl then do NOT build the full ACE library. -AC_ARG_ENABLE(lib-all, - [ --enable-lib-all build all ACE components [default=yes]], - [ - case "${enableval}" in - yes) - ace_user_enable_lib_all=yes - ;; - no) - ace_user_enable_lib_all=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-all) - ;; - esac - ], - [ - ace_user_enable_lib_all=yes - ]) - -AC_ARG_ENABLE(lib-full, - [ --enable-lib-full build the full ACE library [default=yes]], - [ - case "${enableval}" in - yes) - ace_user_enable_lib_full=yes - ;; - no) - ace_user_enable_lib_full=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-full) - ;; - esac - ], - [ - ace_user_enable_lib_full=yes - ]) - -AC_ARG_ENABLE(lib-os, - [ --enable-lib-os build libACE_OS library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_OS - ;; - no) - ace_user_enable_lib_os=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-os) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-utils, - [ --enable-lib-utils build libACE_Utils library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_UTILS - ;; - no) - ace_user_enable_lib_utils=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-utils) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-logging, - [ --enable-lib-logging build libACE_Logging library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_LOGGING - ;; - no) - ace_user_enable_lib_logging=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-logging) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-threads, - [ --enable-lib-threads build libACE_Threads library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_THREADS - ;; - no) - ace_user_enable_lib_threads=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-threads) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-demux, - [ --enable-lib-demux build libACE_Demux library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_DEMUX - ;; - no) - ace_user_enable_lib_demux=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-demux) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-connection, - [ --enable-lib-connection build libACE_Connection library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_CONNECTION - ;; - no) - ace_user_enable_lib_connection=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-connection) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-sockets, - [ --enable-lib-sockets build libACE_Sockets library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_SOCKETS - ;; - no) - ace_user_enable_lib_sockets=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-sockets) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-ipc, - [ --enable-lib-ipc build libACE_IPC library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_IPC - ;; - no) - ace_user_enable_lib_ipc=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-ipc) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-svcconf, - [ --enable-lib-svcconf build libACE_Svcconf library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_SVCCONF - ;; - no) - ace_user_enable_lib_svcconf=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-svcconf) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-streams, - [ --enable-lib-streams build libACE_Streams library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_STREAMS - ;; - no) - ace_user_enable_lib_streams=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-streams) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-memory, - [ --enable-lib-memory build libACE_Memory library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_MEMORY - ;; - no) - ace_user_enable_lib_memory=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-memory) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-token, - [ --enable-lib-token build libACE_Token library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_TOKEN - ;; - no) - ace_user_enable_lib_token=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-token) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - -AC_ARG_ENABLE(lib-other, - [ --enable-lib-other build libACE_Other library ], - [ - case "${enableval}" in - yes) - ACE_CREATE_LIBACE_OTHER - ;; - no) - ace_user_enable_lib_other=no - ;; - *) - AC_MSG_ERROR(bad value ${enableval} for --enable-lib-other) - ;; - esac - - dnl Disable full ACE library build - ace_user_enable_lib_full=no - ],) - - -dnl If no ACE subsets were explicitly enabled or disabled then build -dnl all of them. -if test $ace_user_enable_lib_all = yes; then - - ACE_CREATE_ALL_COMPONENTS - -elif test $ace_user_enable_lib_all = no; then - - ACE_DISABLE_ALL_COMPONENTS - -fi - -if test $ace_user_enable_lib_full = no && - test $ace_user_enable_lib_os = no && - test $ace_user_enable_lib_utils = no && - test $ace_user_enable_lib_logging = no && - test $ace_user_enable_lib_threads = no && - test $ace_user_enable_lib_demux = no && - test $ace_user_enable_lib_connection = no && - test $ace_user_enable_lib_sockets = no && - test $ace_user_enable_lib_ipc = no && - test $ace_user_enable_lib_svcconf = no && - test $ace_user_enable_lib_streams = no && - test $ace_user_enable_lib_memory = no && - test $ace_user_enable_lib_token = no && - test $ace_user_enable_lib_other = no; then - - dnl If we get here then no ACE libraries will be built! - AC_MSG_ERROR(no ACE components will be built. Specify which components to build) - -fi dnl No components will be built! - -dnl Set which ACE subsets to build -AM_CONDITIONAL(BUILD_OS_FILES, - test X$ace_user_enable_lib_os = Xyes) - -AM_CONDITIONAL(BUILD_UTILS_FILES, - test X$ace_user_enable_lib_utils = Xyes) - -AM_CONDITIONAL(BUILD_LOGGING_FILES, - test X$ace_user_enable_lib_logging = Xyes) - -AM_CONDITIONAL(BUILD_THREADS_FILES, - test X$ace_user_enable_lib_threads = Xyes) - -AM_CONDITIONAL(BUILD_DEMUX_FILES, - test X$ace_user_enable_lib_demux = Xyes) - -AM_CONDITIONAL(BUILD_CONNECTION_FILES, - test X$ace_user_enable_lib_connection = Xyes) - -AM_CONDITIONAL(BUILD_SOCKETS_FILES, - test X$ace_user_enable_lib_sockets = Xyes) - -AM_CONDITIONAL(BUILD_IPC_FILES, - test X$ace_user_enable_lib_ipc = Xyes) - -AM_CONDITIONAL(BUILD_SVCCONF_FILES, - test X$ace_user_enable_lib_svcconf = Xyes) - -AM_CONDITIONAL(BUILD_STREAMS_FILES, - test X$ace_user_enable_lib_streams = Xyes) - -AM_CONDITIONAL(BUILD_MEMORY_FILES, - test X$ace_user_enable_lib_memory = Xyes) - -AM_CONDITIONAL(BUILD_TOKEN_FILES, - test X$ace_user_enable_lib_token = Xyes) - -AM_CONDITIONAL(BUILD_OTHER_FILES, - test X$ace_user_enable_lib_other = Xyes) - -AM_CONDITIONAL(BUILD_FULL_LIBRARY, - test X$ace_user_enable_lib_full = Xyes) - -dnl End ACE_CHECK_SUBSETS -]) - -dnl Set the component dependencies for the libACE_OS library -dnl Usage: ACE_CREATE_LIBACE_OS -AC_DEFUN(ACE_CREATE_LIBACE_OS, -[ - ace_user_enable_lib_os=yes -]) - -dnl Set the component dependencies for the libACE_Utils library -dnl Usage: ACE_CREATE_LIBACE_UTILS -AC_DEFUN(ACE_CREATE_LIBACE_UTILS, -[ - ace_user_enable_lib_utils=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS -]) - -dnl Set the component dependencies for the libACE_Logging library -dnl Usage: ACE_CREATE_LIBACE_Logging -AC_DEFUN(ACE_CREATE_LIBACE_LOGGING, -[ - ace_user_enable_lib_logging=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS -]) - -dnl Set the component dependencies for the libACE_Threads library -dnl Usage: ACE_CREATE_LIBACE_THREADS -AC_DEFUN(ACE_CREATE_LIBACE_THREADS, -[ - ace_user_enable_lib_threads=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS -]) - -dnl Set the component dependencies for the libACE_Demux library -dnl Usage: ACE_CREATE_LIBACE_DEMUX -AC_DEFUN(ACE_CREATE_LIBACE_DEMUX, -[ - ace_user_enable_lib_demux=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_THREADS -]) - -dnl Set the component dependencies for the libACE_Connection library -dnl Usage: ACE_CREATE_LIBACE_CONNECTION -AC_DEFUN(ACE_CREATE_LIBACE_CONNECTION, -[ - ace_user_enable_lib_connection=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_THREADS - ACE_CREATE_LIBACE_DEMUX -]) - -dnl Set the component dependencies for the libACE_Sockets library -dnl Usage: ACE_CREATE_LIBACE_SOCKETS -AC_DEFUN(ACE_CREATE_LIBACE_SOCKETS, -[ - ace_user_enable_lib_sockets=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS -]) - -dnl Set the component dependencies for the libACE_IPC library -dnl Usage: ACE_CREATE_LIBACE_IPC -AC_DEFUN(ACE_CREATE_LIBACE_IPC, -[ - ace_user_enable_lib_ipc=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_SOCKETS -]) - -dnl Set the component dependencies for the libACE_Svcconf library -dnl Usage: ACE_CREATE_LIBACE_SVCCONF -AC_DEFUN(ACE_CREATE_LIBACE_SVCCONF, -[ - ace_user_enable_lib_svcconf=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_THREADS - ACE_CREATE_LIBACE_DEMUX - ACE_CREATE_LIBACE_SOCKETS -]) - -dnl Set the component dependencies for the libACE_Streams library -dnl Usage: ACE_CREATE_LIBACE_STREAMS -AC_DEFUN(ACE_CREATE_LIBACE_STREAMS, -[ - ace_user_enable_lib_streams=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_THREADS - ACE_CREATE_LIBACE_DEMUX -]) - -dnl Set the component dependencies for the libACE_Memory library -dnl Usage: ACE_CREATE_LIBACE_MEMORY -AC_DEFUN(ACE_CREATE_LIBACE_MEMORY, -[ - ace_user_enable_lib_memory=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS -]) - -dnl Set the component dependencies for the libACE_Token library -dnl Usage: ACE_CREATE_LIBACE_TOKEN -AC_DEFUN(ACE_CREATE_LIBACE_TOKEN, -[ - ace_user_enable_lib_token=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_UTILS - ACE_CREATE_LIBACE_LOGGING - ACE_CREATE_LIBACE_THREADS - ACE_CREATE_LIBACE_DEMUX - ACE_CREATE_LIBACE_CONNECTION - ACE_CREATE_LIBACE_SOCKETS - ACE_CREATE_LIBACE_IPC - ACE_CREATE_LIBACE_SVCCONF - ACE_CREATE_LIBACE_STREAMS - ACE_CREATE_LIBACE_MEMORY - dnl ACE_CREATE_LIBACE_OTHER -]) - -dnl Set the component dependencies for the libACE_Utils library -dnl Usage: ACE_CREATE_LIBACE_OTHER -AC_DEFUN(ACE_CREATE_LIBACE_OTHER, -[ - ace_user_enable_lib_other=yes - - dnl Be careful not to go into a circular/recursive loop with these macros! - ACE_CREATE_LIBACE_OS - ACE_CREATE_LIBACE_UTILS - ACE_CREATE_LIBACE_LOGGING - ACE_CREATE_LIBACE_THREADS - ACE_CREATE_LIBACE_DEMUX - ACE_CREATE_LIBACE_CONNECTION - ACE_CREATE_LIBACE_SOCKETS - ACE_CREATE_LIBACE_IPC - ACE_CREATE_LIBACE_SVCCONF - ACE_CREATE_LIBACE_STREAMS - ACE_CREATE_LIBACE_MEMORY - dnl ACE_CREATE_LIBACE_TOKEN -]) - -dnl Build all ACE component libraries -dnl Usage: ACE_CREATE_ALL_COMPONENTS -AC_DEFUN(ACE_CREATE_ALL_COMPONENTS, -[ - ace_user_enable_lib_os=yes - ace_user_enable_lib_utils=yes - ace_user_enable_lib_logging=yes - ace_user_enable_lib_threads=yes - ace_user_enable_lib_demux=yes - ace_user_enable_lib_connection=yes - ace_user_enable_lib_sockets=yes - ace_user_enable_lib_ipc=yes - ace_user_enable_lib_svcconf=yes - ace_user_enable_lib_streams=yes - ace_user_enable_lib_memory=yes - ace_user_enable_lib_token=yes - ace_user_enable_lib_other=yes -]) - -dnl Disable all ACE component libraries -dnl Usage: ACE_CREATE_ALL_COMPONENTS -AC_DEFUN(ACE_DISABLE_ALL_COMPONENTS, -[ - ace_user_enable_lib_os=no - ace_user_enable_lib_utils=no - ace_user_enable_lib_logging=no - ace_user_enable_lib_threads=no - ace_user_enable_lib_demux=no - ace_user_enable_lib_connection=no - ace_user_enable_lib_sockets=no - ace_user_enable_lib_ipc=no - ace_user_enable_lib_svcconf=no - ace_user_enable_lib_streams=no - ace_user_enable_lib_memory=no - ace_user_enable_lib_token=no - ace_user_enable_lib_other=no -]) - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl compiler.m4 -dnl -dnl ACE M4 include file which contains ACE specific M4 macros -dnl that set/determine compiler configurations for ACE. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - -dnl Macros to set flags for a given compiler on a given platform. -dnl The flags set here are generally only useful for _KNOWN_ compilers. - -dnl ACE_SET_COMPILER_FLAGS -dnl Usage: ACE_SET_COMPILER_FLAGS -AC_DEFUN(ACE_SET_COMPILER_FLAGS, dnl -[ - AC_BEFORE([$0], [AM_PROG_LIBTOOL]) dnl - - dnl Make sure we know what C++ compiler and preprocessor we have! - AC_REQUIRE([AC_PROG_CXX]) - AC_REQUIRE([AC_PROG_CXXCPP]) - AC_REQUIRE([AC_LANG_CPLUSPLUS]) - - dnl Compiler Flag Key - dnl CXXFLAGS - C++ flags to use during the configure script run and - dnl during ACE compilation. The user may set this prior to - dnl running the configure script. As such, it is important - dnl not to replace the existing value of CXXFLAGS; rather - dnl one should only add to it. - dnl ACE_CXXFLAGS - General C++ flags the configure script should set before - dnl CXXFLAGS to allow the user override them. - dnl DCXXFLAGS - C++ debugging flags - dnl OCXXFLAGS - C++ optimization flags - - case "$target" in - *aix4.2* | *aix4.3*) - case "$CXX" in - xlC*) - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS -qtempinc -qlanglvl=ansi -qflag=w:w -qinfo" - DCXXFLAGS="-g -qcheck=nobounds:div:null" - OCXXFLAGS="-qarch=com" - ;; - *) - if test -n "$GXX"; then - ACE_CXXFLAGS="-mcpu=common" - fi - ;; - esac - ;; - *aix4.1*) - case "$CXX" in - xlC*) - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS -qxcall -qtempinc" - DCXXFLAGS="-g" - OCXXFLAGS="-qarch=ppc -qtune=604" - ;; - *) - if test -n "$GXX"; then - ACE_CXXFLAGS="-mcpu=common" - fi - ;; - esac - ;; - *chorus*) - ;; - *cray*) - ;; - *dgux*) - case "$CXX" in - ec++) - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS -relax -v -eh" - DCXXFLAGS="-g" - OCXXFLAGS="" - ;; - *) - if test -n "$GXX"; then - ACE_CXXFLAGS="$ACE_CXXFLAGS" - fi - ;; - esac - ;; - *freebsd*) - case "$CXX" in - *) - if test -n "$GXX"; then - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS -w -fno-strict-prototypes" - DCXXFLAGS="" - OCXXFLAGS="" - fi - ;; - esac - ;; - *hpux*) - case "$CXX" in - CC) - CXXFLAGS="$CXXFLAGS -pta -ti,/bin/true -tr,/bin/true" - ACE_CXXFLAGS="$ACE_CXXFLAGS -Aa -z +a1" - DCXXFLAGS="-g" - OCXXFLAGS="" - ;; - aCC) - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS +W829,302" - DCXXFLAGS="-g" - OCXXFLAGS="" - ;; - *) - if test -n "$GXX"; then - ACE_CXXFLAGS="$ACE_CXXFLAGS -w" - fi - ;; - esac - ;; - *irix*) - - ;; - *linux*) - case "$CXX" in - *) - if test -n "$GXX"; then - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS" - DCXXFLAGS="$DCXXFLAGS" - OCXXFLAGS="-O3" - fi - ;; - esac - ;; - *lynxos*) - ;; - *m88k*) - ;; - *mvs*) - ;; - *netbsd*) - ;; - *osf*) - ;; - *psos*) - ;; - *sco*) - ;; - *sunos4*) - ;; - *solaris2*) - case "$CXX" in - CC) - dnl Some flags only work with Sun C++ 4.2 - if (CC -V 2>&1 | egrep 'Compilers 4\.2' > /dev/null); then - CXXFLAGS="$CXXFLAGS -features=castop" - if test "$ace_user_enable_rtti" = yes; then - CXXFLAGS="$CXXFLAGS -features=rtti" - fi - fi - - if test "$ace_user_enable_exceptions" != yes; then - CXXFLAGS="$CXXFLAGS -noex" - fi - - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS" - DCXXFLAGS="$DCXXFLAGS -g" - OCXXFLAGS="$OCXXFLAGS -O" - LDFLAGS="$LDFLAGS -xildoff" - ;; - esac - ;; - *tandem*) - ;; - *unixware*) - ;; - *vxworks*) - ;; - *) - CXXFLAGS="$CXXFLAGS" - ACE_CXXFLAGS="$ACE_CXXFLAGS" - DCXXFLAGS="-g" - OCXXFLAGS="-O" - ;; - esac -]) - - -# serial 40 AC_PROG_LIBTOOL -AC_DEFUN(AC_PROG_LIBTOOL, -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - -# Save cache, so that ltconfig can load it -AC_CACHE_SAVE - -# Actually configure libtool. ac_aux_dir is where install-sh is found. -CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ -LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ -LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ -DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ -${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ -$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ -|| AC_MSG_ERROR([libtool configure failed]) - -# Reload cache, that may have been modified by ltconfig -AC_CACHE_LOAD - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -# Redirect the config.log output again, so that the ltconfig log is not -# clobbered by the next message. -exec 5>>./config.log -]) - -AC_DEFUN(AC_LIBTOOL_SETUP, -[AC_PREREQ(2.13)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_RANLIB])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_NM])dnl -AC_REQUIRE([AC_PROG_LN_S])dnl -dnl - -# Check for any special flags to pass to ltconfig. -libtool_flags="--cache-file=$cache_file" -test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" -test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" -test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" -test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" -test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" -ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], -[libtool_flags="$libtool_flags --enable-dlopen"]) -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[libtool_flags="$libtool_flags --enable-win32-dll"]) -AC_ARG_ENABLE(libtool-lock, - [ --disable-libtool-lock avoid locking (might break parallel builds)]) -test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" -test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case "$host" in -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case "`/usr/bin/file conftest.o`" in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; -]) -esac -]) - -# AC_LIBTOOL_DLOPEN - enable checks for dlopen support -AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - -# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's -AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - -# AC_ENABLE_SHARED - implement the --enable-shared flag -# Usage: AC_ENABLE_SHARED[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN(AC_ENABLE_SHARED, [dnl -define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(shared, -changequote(<<, >>)dnl -<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case "$enableval" in -yes) enable_shared=yes ;; -no) enable_shared=no ;; -*) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl -]) - -# AC_DISABLE_SHARED - set the default shared flag to --disable-shared -AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no)]) - -# AC_ENABLE_STATIC - implement the --enable-static flag -# Usage: AC_ENABLE_STATIC[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN(AC_ENABLE_STATIC, [dnl -define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(static, -changequote(<<, >>)dnl -<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case "$enableval" in -yes) enable_static=yes ;; -no) enable_static=no ;; -*) - enable_static=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_static=AC_ENABLE_STATIC_DEFAULT)dnl -]) - -# AC_DISABLE_STATIC - set the default static flag to --disable-static -AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no)]) - - -# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag -# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl -define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(fast-install, -changequote(<<, >>)dnl -<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case "$enableval" in -yes) enable_fast_install=yes ;; -no) enable_fast_install=no ;; -*) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl -]) - -# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install -AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no)]) - -# AC_PROG_LD - find the path to the GNU or non-GNU linker -AC_DEFUN(AC_PROG_LD, -[AC_ARG_WITH(gnu-ld, -[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], -test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -ac_prog=ld -if test "$ac_cv_prog_gcc" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) - ac_prog=`($CC -print-prog-name=ld) 2>&5` - case "$ac_prog" in - # Accept absolute paths. -changequote(,)dnl - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' -changequote([,])dnl - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(ac_cv_path_LD, -[if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - ac_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - ac_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$ac_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_SUBST(LD) -AC_PROG_LD_GNU -]) - -AC_DEFUN(AC_PROG_LD_GNU, -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then - ac_cv_prog_gnu_ld=yes -else - ac_cv_prog_gnu_ld=no -fi]) -]) - -# AC_PROG_NM - find the path to a BSD-compatible name lister -AC_DEFUN(AC_PROG_NM, -[AC_MSG_CHECKING([for BSD-compatible nm]) -AC_CACHE_VAL(ac_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - ac_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - ac_cv_path_NM="$ac_dir/nm -B" - break - elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - ac_cv_path_NM="$ac_dir/nm -p" - break - else - ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm -fi]) -NM="$ac_cv_path_NM" -AC_MSG_RESULT([$NM]) -AC_SUBST(NM) -]) - -# AC_CHECK_LIBM - check for math library -AC_DEFUN(AC_CHECK_LIBM, -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case "$host" in -*-*-beos* | *-*-cygwin*) - # These system don't have libm - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, main, LIBM="-lm") - ;; -esac -]) - -# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl convenience library, adds --enable-ltdl-convenience to -# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor -# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed -# to be `${top_builddir}/libltdl'. Make sure you start DIR with -# '${top_builddir}/' (note the single quotes!) if your package is not -# flat, and, if you're not using automake, define top_builddir as -# appropriate in the Makefiles. -AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case "$enable_ltdl_convenience" in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) -]) - -# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl installable library, and adds --enable-ltdl-install to -# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor -# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed -# to be `${top_builddir}/libltdl'. Make sure you start DIR with -# '${top_builddir}/' (note the single quotes!) if your package is not -# flat, and, if you're not using automake, define top_builddir as -# appropriate in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - INCLTDL= - fi -]) - -dnl old names -AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl -AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl -AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl -AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl -AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl -AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl -AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl - -dnl This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL])dnl - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl threads.m4 -dnl -dnl ACE M4 include file which contains ACE specific M4 macros -dnl for configuring thread support. This file is to be used -dnl with the configure script. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -dnl Make sure thread library exists -dnl We need to be careful when tests for other thread libraries are -dnl added that we don't screw up handling of "ace_user_enable_threads" -dnl Tests should probably be more platform specific later on. - -dnl Check for thread related libraries and compiler flags -dnl Usage: ACE_CHECK_THREADS -AC_DEFUN(ACE_CHECK_THREADS, dnl -[ -dnl AC_REQUIRE([AC_PROG_CXX]) -dnl AC_REQUIRE([AC_PROG_CXXCPP]) -dnl AC_REQUIRE([AC_LANG_CPLUSPLUS]) - -dnl Check if compiler accepts specific flag to enable threads - ACE_CACHE_CHECK(if compiler may need a thread flag, - ace_cv_feature_may_need_thread_flag, - [ - ACE_CHECK_THREAD_FLAGS( - [ - ace_cv_feature_may_need_thread_flag=no - ], - [ - ace_cv_feature_may_need_thread_flag=yes - ]) - ], - [ - dnl The compiler/platform has no thread support linked in by default - dnl so search for a usable compiler flag to enable thread support. - dnl If no thread flag is found then the remaining tests should still - dnl figure out how to enable thread support via library checks. - ACE_SEARCH_THREAD_FLAGS( - [mt pthread pthreads mthreads threads Kthread -thread_safe],,) - dnl NOTE: "-thread_safe" is correct, not "thread_safe." - dnl KAI C++ uses the flag "--thread_safe" which is why - dnl "-thread_safe" is passed as the flag to test. - ], - [ - dnl Do nothing - ]) - - dnl Check for UNIX International Threads -- STHREADS - ACE_SEARCH_LIBS(thr_create, thread, - [ - ace_has_sthreads=yes - AC_DEFINE(ACE_HAS_STHREADS) - ], - [ - ace_has_sthreads=no - ]) - - dnl Sometimes thr_create is actually found with explicitly linking against - dnl -lthread, so try a more "exotic" function. - ACE_SEARCH_LIBS(rwlock_destroy, thread,,) - - dnl Check for POSIX threads - dnl - dnl Check if platform provides pthreads backward compatibility macros - dnl (Some platforms may define some pthread functions such as - dnl pthread_create() as macros when using a later implementation of - dnl pthreads. For example, Digital Unix 4.0 #defines a pthread_create - dnl macro as "__pthread_create" to allow the new implemenation of - dnl pthread_create() to co-exist with the old implementation of - dnl of pthread_create().) - - ACE_CACHE_CHECK(for pthreads backward compatibility macros, - ace_cv_lib_pthread_compat_macros, - [ - AC_EGREP_CPP(ACE_PTHREAD_MACROS, - [ -#include <pthread.h> - -#if defined (pthread_create) - ACE_PTHREAD_MACROS -#endif - ], - [ - ace_cv_lib_pthread_compat_macros=yes - ], - [ - ace_cv_lib_pthread_compat_macros=no - ]) - ], - [ - dnl Check if pthread function names are mangled (e.g. DU 4.0) - dnl to maintain older Pthread Draft compatibility. - ACE_CHECK_FUNC(pthread_create, pthread.h, - [ - ace_has_pthreads=yes - AC_DEFINE(ACE_HAS_PTHREADS) - ], - [ - ACE_CHECK_LIB(pthread, pthread_create, pthread.h, dnl - [ - ace_has_pthreads=yes - dnl Since we AC_DEFINE(ACE_HAS_PTHREADS), the default behavior - dnl of adding "-lpthread" to the "LIBS" variable no longer - dnl works, so we have to add it manually. - LIBS="$LIBS -lpthread" - AC_DEFINE(ACE_HAS_PTHREADS) - ], - [ - ace_has_pthreads=yes - ]) - ]) - ], - [ - ACE_SEARCH_LIBS(pthread_create, pthread pthreads c_r gthreads, - [ - ace_has_pthreads=yes - AC_DEFINE(ACE_HAS_PTHREADS) - ], - [ - ace_has_pthreads=no - ]) - ]) - - - dnl If we don't have any thread library, then disable threading altogether! - if test "$ace_has_pthreads" != yes && - test "$ace_has_sthreads" != yes; then - ace_user_enable_threads=no - fi -]) - -dnl This macro will check that the current compiler flags do something -dnl useful in terms of thread libraries and/or functions. -dnl Usage: ACE_CHECK_THREAD_FLAGS(ACTION-IF-USABLE [, ACTION-IF-NOT-USABLE]]) -AC_DEFUN(ACE_CHECK_THREAD_FLAGS, dnl -[ -ACE_CONVERT_WARNINGS_TO_ERRORS([ -AC_TRY_LINK( -[ -#ifndef _REENTRANT -#error _REENTRANT was not defined -THROW ME AN ERROR! -#endif -] -ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus -extern "C" -#endif -]) -[ -char thr_create(); -], [ -thr_create(); -], [$1], -[ - AC_REQUIRE([AC_PROG_AWK]) - - AC_TRY_CPP( - [ -#include <pthread.h> - ], - [ - cat > conftest.$ac_ext <<EOF - -#include <pthread.h> - ACE_REAL_FUNCTION pthread_create - -EOF - - if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "ACE_REAL_FUNCTION" | - (eval "$AWK '{print \[$]2}' > conftest.awk 2>&1"); then - rm -f conftest.$ac_ext - ace_real_function=`cat conftest.awk` - rm -f conftest.awk - fi - ], - [ - ace_real_function="pthread_create" - ]) - -AC_TRY_LINK( -[ -#ifndef _REENTRANT -#error _REENTRANT was not defined -THROW ME AN ERROR! -#endif -] -ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus -extern "C" -#endif -])dnl -[ -char $ace_real_function(); -], [ -$ace_real_function(); -], [$1],[$2]) - - ]) - ]) -]) - -dnl Check what compiler thread flag may be used, if any, from the given list. -dnl The flag list is separated by white space. -dnl Usage: ACE_SEARCH_THREAD_FLAGS(THREAD-FLAG-LIST, -dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -AC_DEFUN(ACE_SEARCH_THREAD_FLAGS, dnl -[ - ACE_CACHE_CHECK(for compiler thread flag, - ace_cv_thread_flag_search, - [ - ace_save_CXXFLAGS="$CXXFLAGS" - ace_save_CFLAGS="$CFLAGS" - - for i in $1; do - CXXFLAGS="$CXXFLAGS -$i" - CFLAGS="$CFLAGS -$i" - - ACE_CHECK_THREAD_FLAGS( - [ - ace_cv_thread_flag_search="-$i" - - dnl A usable flag was found so break out of the loop. - break; - ], - [ - ace_cv_thread_flag_search=no - ]) - - dnl Reset the flags for the next flag check. - CXXFLAGS="$ace_save_CXXFLAGS" - CFLAGS="$ace_save_CFLAGS" - done - - dnl Reset the flags to a consistent state. - dnl This prevents duplicate flags from being added to - dnl the C/CXXFLAGS variable. - CXXFLAGS="$ace_save_CXXFLAGS" - CFLAGS="$ace_save_CFLAGS" - ], - [ - dnl Add the found/cached thread flag to the C/CXXFLAGS variables - CXXFLAGS="$CXXFLAGS $ace_cv_thread_flag_search" - CFLAGS="$CFLAGS $ace_cv_thread_flag_search" - - $2 - ], - [ - $3 - ]) -]) - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl features.m4 -dnl -dnl ACE M4 include file which contains ACE specific M4 macros -dnl that determine availablility of certain OS features for ACE. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -dnl Asynchronous IO check -dnl Use this macro to determine if asynchronous IO is working on a -dnl given platform. -dnl Usage: ACE_CHECK_ASYNCH_IO -AC_DEFUN(ACE_CHECK_ASYNCH_IO, dnl -[ - AC_REQUIRE([AC_PROG_CXX]) - AC_REQUIRE([AC_PROG_CXXCPP]) - AC_REQUIRE([AC_LANG_CPLUSPLUS]) - - dnl In case a library with the asynchronous libraries is found but - dnl the asynchronous IO support is not functional then save a copy - dnl of the list of libraries before the asynch IO function library - dnl is added to the list so that we can revert the list to its - dnl pre-asynch-IO check state. - ace_save_LIBS="$LIBS" - - dnl Asynchronous IO library check - dnl Some platforms, such as Solaris puts aio_read in -lposix4, for example. - dnl In some cases, the thread library must be linked to in addition to the - dnl real-time support library. As such, make sure these checks are done - dnl after the thread library checks. - ACE_SEARCH_LIBS(aio_read, aio posix4 rt, dnl - ace_has_aio_funcs=yes, ace_has_aio_funcs=no) - -if test "$ace_has_aio_funcs" = yes; then - ACE_CACHE_CHECK(for working asynchronous IO, - ace_cv_feature_aio_calls, - [ - AC_TRY_RUN( - [ -#ifndef ACE_LACKS_UNISTD_H -#include <unistd.h> -#endif -#include <fcntl.h> -#ifndef ACE_LACKS_SYS_TYPES_H -# include <sys/types.h> -#endif -#include <sys/stat.h> -#include <signal.h> -#include <string.h> -#include <errno.h> -#include <stdio.h> -#include <iostream.h> - -#include <aio.h> - -class Test_Aio -{ -public: - Test_Aio (void); - // Default constructor. - - int init (void); - // Initting the output file and the buffer. - - int do_aio (void); - // Doing the testing stuff. - - ~Test_Aio (void); - // Destructor. -private: - int out_fd_; - // Output file descriptor. - - struct aiocb *aiocb_write_; - // For writing to the file. - - struct aiocb *aiocb_read_; - // Reading stuff from the file. - - char *buffer_write_; - // The buffer to be written to the out_fd. - - char *buffer_read_; - // The buffer to be read back from the file. -}; - -Test_Aio::Test_Aio (void) - : aiocb_write_ (new struct aiocb), - aiocb_read_ (new struct aiocb), - buffer_write_ (0), - buffer_read_ (0) -{ -} - -Test_Aio::~Test_Aio (void) -{ - delete aiocb_write_; - delete aiocb_read_; - delete buffer_write_; - delete buffer_read_; -} - -// Init the output file and init the buffer. -int -Test_Aio::init (void) -{ - // Open the output file. - this->out_fd_ = open ("test_aio.log", O_RDWR | O_CREAT | O_TRUNC, 0666); - if (this->out_fd_ == 0) - { - //cout << "Error : Opening file" << endl; - return -1; - } - - // Init the buffers. - this->buffer_write_ = strdup ("Welcome to the world of AIO... AIO Rules !!!"); - // cout << "The buffer : " << this->buffer_write_ << endl; - this->buffer_read_ = new char [strlen (this->buffer_write_)]; - - return 0; -} - -// Set the necessary things for the AIO stuff. -// Write the buffer asynchly.hmm Disable signals. -// Go on aio_suspend. Wait for completion. -// Print out the result. -int -Test_Aio::do_aio (void) -{ - // = Write to the file. - - // Setup AIOCB. - this->aiocb_write_->aio_fildes = this->out_fd_; - this->aiocb_write_->aio_offset = 0; - this->aiocb_write_->aio_buf = this->buffer_write_; - this->aiocb_write_->aio_nbytes = strlen (this->buffer_write_); - this->aiocb_write_->aio_reqprio = 0; - this->aiocb_write_->aio_sigevent.sigev_notify = SIGEV_NONE; - //this->this->aiocb_.aio_sigevent.sigev_signo = SIGRTMAX; - this->aiocb_write_->aio_sigevent.sigev_value.sival_ptr = - (void *) this->aiocb_write_; - - // Fire off the aio write. - if (aio_write (this->aiocb_write_) != 0) - { - perror ("aio_write"); - return -1; - } - - // = Read from that file. - - // Setup AIOCB. - this->aiocb_read_->aio_fildes = this->out_fd_; - this->aiocb_read_->aio_offset = 0; - this->aiocb_read_->aio_buf = this->buffer_read_; - this->aiocb_read_->aio_nbytes = strlen (this->buffer_write_); - this->aiocb_read_->aio_reqprio = 0; - this->aiocb_read_->aio_sigevent.sigev_notify = SIGEV_NONE; - //this->this->aiocb_.aio_sigevent.sigev_signo = SIGRTMAX; - this->aiocb_read_->aio_sigevent.sigev_value.sival_ptr = - (void *) this->aiocb_read_; - - // Fire off the aio write. If it doesnt get queued, carry on to get - // the completion for the first one. - if (aio_read (this->aiocb_read_) < 0) - perror ("aio_read"); - - // Wait for the completion on aio_suspend. - struct aiocb *list_aiocb[2]; - list_aiocb [0] = this->aiocb_write_; - list_aiocb [1] = this->aiocb_read_; - - // Do suspend till all the aiocbs in the list are done. - int done = 0; - int return_val = 0; - while (!done) - { - return_val = aio_suspend (list_aiocb, - 2, - 0); - cerr << "Return value :" << return_val << endl; - - // Analyze return and error values. - if (aio_error (list_aiocb [0]) != EINPROGRESS) - { - if (aio_return (list_aiocb [0]) == -1) - { - perror ("aio_return"); - return -1; - } - else - { - // Successful. Store the pointer somewhere and make the - // entry NULL in the list. - this->aiocb_write_ = list_aiocb [0]; - list_aiocb [0] = 0; - } - } - else - //cout << "AIO in progress" << endl; - - if (aio_error (list_aiocb [1]) != EINPROGRESS) - { - if (aio_return (list_aiocb [1]) == -1) - { - perror ("aio_return"); - return -1; - } - else - { - // Successful. Store the pointer somewhere and make the - // entry NULL in the list. - this->aiocb_read_ = list_aiocb [1]; - list_aiocb [1] = 0; - } - } - else - //cout << "AIO in progress" << endl; - - // Is it done? - if ((list_aiocb [0] == 0) && (list_aiocb [1] == 0)) - done = 1; - } - - //cout << "Both the AIO operations done." << endl; - //cout << "The buffer is :" << this->buffer_read_ << endl; - - return 0; -} - -int -main (int argc, char **argv) -{ - Test_Aio test_aio; - - if (test_aio.init () != 0) - { - //printf ("AIOCB test failed:\n" - // "ACE_POSIX_AIOCB_PROACTOR may not work in this platform\n"); - return -1; - } - - if (test_aio.do_aio () != 0) - { - //printf ("AIOCB test failed:\n" - // "ACE_POSIX_AIOCB_PROACTOR may not work in this platform\n"); - return -1; - } - //printf ("AIOCB test successful:\n" - // "ACE_POSIX_AIOCB_PROACTOR should work in this platform\n"); - return 0; -} - ], - [ - dnl Now try another test - AC_TRY_RUN( - [ -#ifndef ACE_LACKS_UNISTD_H -#include <unistd.h> -#endif -#include <fcntl.h> -#ifndef ACE_LACKS_SYS_TYPES_H -# include <sys/types.h> -#endif -#include <sys/stat.h> -#include <signal.h> -#include <string.h> -#include <errno.h> -#include <stdio.h> - -#include <limits.h> - -#include <aio.h> - - -int file_handle = -1; -char mb1 [BUFSIZ + 1]; -char mb2 [BUFSIZ + 1]; -aiocb aiocb1, aiocb2; -sigset_t completion_signal; - -// Function prototypes. -int setup_signal_delivery (void); -int issue_aio_calls (void); -int query_aio_completions (void); -int test_aio_calls (void); -int setup_signal_handler (void); -int setup_signal_handler (int signal_number); - -int -setup_signal_delivery (void) -{ - // Make the sigset_t consisting of the completion signal. - if (sigemptyset (&completion_signal) == -1) - { - perror ("Error:Couldnt init the RT completion signal set\n"); - return -1; - } - - if (sigaddset (&completion_signal, SIGRTMIN) == -1) - { - perror ("Error:Couldnt init the RT completion signal set\n"); - return -1; - } - - // Mask them. - if (pthread_sigmask (SIG_BLOCK, &completion_signal, 0) == -1) - { - perror ("Error:Couldnt maks the RT completion signals\n"); - return -1; - } - - return setup_signal_handler (SIGRTMIN); -} - -int -issue_aio_calls (void) -{ - // Setup AIOCB. - aiocb1.aio_fildes = file_handle; - aiocb1.aio_offset = 0; - aiocb1.aio_buf = mb1; - aiocb1.aio_nbytes = BUFSIZ; - aiocb1.aio_reqprio = 0; - aiocb1.aio_sigevent.sigev_notify = SIGEV_SIGNAL; - aiocb1.aio_sigevent.sigev_signo = SIGRTMIN; - aiocb1.aio_sigevent.sigev_value.sival_ptr = (void *) &aiocb1; - - // Fire off the aio write. - if (aio_read (&aiocb1) == -1) - { - // Queueing failed. - perror ("Error:Asynch_Read_Stream: aio_read queueing failed\n"); - return -1; - } - - // Setup AIOCB. - aiocb2.aio_fildes = file_handle; - aiocb2.aio_offset = BUFSIZ + 1; - aiocb2.aio_buf = mb2; - aiocb2.aio_nbytes = BUFSIZ; - aiocb2.aio_reqprio = 0; - aiocb2.aio_sigevent.sigev_notify = SIGEV_SIGNAL; - aiocb2.aio_sigevent.sigev_signo = SIGRTMIN; - aiocb2.aio_sigevent.sigev_value.sival_ptr = (void *) &aiocb2; - - // Fire off the aio write. - if (aio_read (&aiocb2) == -1) - { - // Queueing failed. - perror ("Error:Asynch_Read_Stream: aio_read queueing failed\n"); - return -1; - } - return 0; -} - -int -query_aio_completions (void) -{ - int result = 0; - size_t number_of_compleions = 0; - for (number_of_compleions = 0; - number_of_compleions < 2; - number_of_compleions ++) - { - // Wait for <milli_seconds> amount of time. - // @@ Assigning <milli_seconds> to tv_sec. - timespec timeout; - timeout.tv_sec = INT_MAX; - timeout.tv_nsec = 0; - - // To get back the signal info. - siginfo_t sig_info; - - // Await the RT completion signal. - int sig_return = sigtimedwait (&completion_signal, - &sig_info, - &timeout); - - // Error case. - // If failure is coz of timeout, then return *0* but set - // errno appropriately. This is what the WinNT proactor - // does. - if (sig_return == -1) - { - perror ("Error:Error waiting for RT completion signals\n"); - return -1; - } - - // RT completion signals returned. - if (sig_return != SIGRTMIN) - { - //printf ("Unexpected signal (%d) has been received while waiting for RT Completion Signals\n", - // sig_return); - return -1; - } - - // @@ Debugging. - //printf ("Sig number found in the sig_info block : %d\n", - // sig_info.si_signo); - - // Is the signo returned consistent? - if (sig_info.si_signo != sig_return) - { - //printf ("Inconsistent signal number (%d) in the signal info block\n", - // sig_info.si_signo); - return -1; - } - - // @@ Debugging. - //printf ("Signal code for this signal delivery : %d\n", - // sig_info.si_code); - - // Is the signal code an aio completion one? - if ((sig_info.si_code != SI_ASYNCIO) && - (sig_info.si_code != SI_QUEUE)) - { - //printf ("Unexpected signal code (%d) returned on completion querying\n", - // sig_info.si_code); - return -1; - } - - // Retrive the aiocb. - aiocb* aiocb_ptr = (aiocb *) sig_info.si_value.sival_ptr; - - // Analyze error and return values. Return values are - // actually <errno>'s associated with the <aio_> call - // corresponding to aiocb_ptr. - int error_code = aio_error (aiocb_ptr); - if (error_code == -1) - { - perror ("Error:Invalid control block was sent to <aio_error> for compleion querying\n"); - return -1; - } - - if (error_code != 0) - { - // Error occurred in the <aio_>call. Return the errno - // corresponding to that <aio_> call. - //printf ("Error:An AIO call has failed:Error code = %d\n", - // error_code); - return -1; - } - - // No error occured in the AIO operation. - int nbytes = aio_return (aiocb_ptr); - if (nbytes == -1) - { - perror ("Error:Invalid control block was send to <aio_return>\n"); - return -1; - } - - if (number_of_compleions == 0) - // Print the buffer. - //printf ("Number of bytes transferred : %d\n The buffer : %s \n", - // nbytes, - // mb1); - else - // Print the buffer. - //printf ("Number of bytes transferred : %d\n The buffer : %s \n", - // nbytes, - // mb2); - } - return 0; -} - -int -test_aio_calls (void) -{ - // Set up the input file. - // Open file (in SEQUENTIAL_SCAN mode) - file_handle = open ("test_aiosig.cpp", O_RDONLY); - - if (file_handle == -1) - { - perror ("Error:Opening the inputfile"); - return -1; - } - - if (setup_signal_delivery () < 0) - return -1; - - if (issue_aio_calls () < 0) - return -1; - - if (query_aio_completions () < 0) - return -1; - - return 0; -} - -int -setup_signal_handler (int signal_number) -{ - // Setting up the handler(!) for these signals. - struct sigaction reaction; - sigemptyset (&reaction.sa_mask); // Nothing else to mask. - reaction.sa_flags = SA_SIGINFO; // Realtime flag. -#if defined (SA_SIGACTION) - // Lynx says, it is better to set this bit to be portable. - reaction.sa_flags &= SA_SIGACTION; -#endif /* SA_SIGACTION */ - reaction.sa_sigaction = null_handler; // Null handler. - int sigaction_return = sigaction (SIGRTMIN, - &reaction, - 0); - if (sigaction_return == -1) - { - perror ("Error:Proactor couldnt do sigaction for the RT SIGNAL"); - return -1; - } - - return 0; -} - -void -null_handler (int /* signal_number */, - siginfo_t * /* info */, - void * /* context */) -{ -} - -int -main (int, char *[]) -{ - if (test_aio_calls () == 0) - //printf ("RT SIG test successful:\n" - // "ACE_POSIX_SIG_PROACTOR should work in this platform\n"); - else - //printf ("RT SIG test failed:\n" - // "ACE_POSIX_SIG_PROACTOR may not work in this platform\n"); - return 0; -} - ], - [ - ace_cv_feature_aio_calls=yes - ], - [ - ace_cv_feature_aio_calls=no - ], - [ - dnl Don't bother doing anything for cross-compiling here - dnl since the outer run-time test will prevent this - dnl inner run-time test from ever running when cross-compiling. - dnl We just put something in here to prevent autoconf - dnl from complaining. - ace_just_a_place_holder=ignoreme - ]) - ], - [ - ace_cv_feature_aio_calls=no - ], - [ - dnl Asynchronous IO test for cross-compiled platforms - dnl This test is weaker than the above run-time tests but it will - dnl have to do. - AC_TRY_COMPILE( - [ -#include <aio.h> - ], - [ - aiocb* aiocb_ptr (void); - ], - [ - ace_cv_feature_aio_calls=yes - ], - [ - ace_cv_feature_aio_calls=no - ]) - ]) - ], AC_DEFINE(ACE_HAS_AIO_CALLS), LIBS="$ace_save_LIBS") -fi dnl test "$ace_has_aio_funcs" = yes -]) - -dnl ------------------------------------------------------------------------- -dnl $Id$ -dnl -dnl platform.m4 -dnl -dnl ACE M4 include file which contains ACE specific M4 macros -dnl that set/determine which known platform specific C++ macros -dnl to define. -dnl -dnl ------------------------------------------------------------------------- - -dnl Copyright (C) 1998, 1999 Ossama Othman -dnl -dnl All Rights Reserved -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the current ACE distribution terms. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -dnl Check for thread related libraries and compiler flags -dnl Usage: ACE_SET_PLATFORM_MACROS -AC_DEFUN(ACE_SET_PLATFORM_MACROS, dnl -[ -dnl Begin ACE_SET_PLATFORM_MACROS - -dnl At some point the below platform specific settings should be automated -dnl as much as possible! We set things manually just to get things going -dnl with the auto{conf,make}/libtool integration into the ACE source tree. - -dnl These settings need to be done _after_ the header, function and library -dnl checks! - -dnl Platform specific flags -case "$target" in - *aix3*) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - ;; - *aix4.1*) - AC_DEFINE(AIX) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - AC_DEFINE(ACE_HAS_AIX_BROKEN_SOCKET_HEADER) - ;; - *aix4.2*) - AC_DEFINE(AIX) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) -dnl AC_DEFINE(ACE_HAS_AIX_BROKEN_SOCKET_HEADER) - AC_DEFINE(ACE_TLI_TCP_DEVICE, "/dev/xti/tcp") - ;; - *cray*) - ;; - *dgux4.11*) - AC_DEFINE(ACE_DGUX) - AC_DEFINE(IP_ADD_MEMBERSHIP, 0x13) - AC_DEFINE(IP_DROP_MEMBERSHIP, 0x14) - ;; - *dgux4*) - AC_DEFINE(ACE_DGUX) - AC_DEFINE(IP_ADD_MEMBERSHIP, 0x13) - AC_DEFINE(IP_DROP_MEMBERSHIP, 0x14) - ;; - *freebsd*) - ;; - *fsu*) -dnl FIXME: "FSU" isn't a platform! We need to move this somewhere. - AC_DEFINE(PTHREAD_STACK_MIN, (1024*10)) - ;; - *hpux9*) - AC_DEFINE(HPUX) - ;; - *hpux10*) - AC_DEFINE(HPUX) - AC_DEFINE(HPUX_10) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - AC_DEFINE(ACE_TLI_TCP_DEVICE, "/dev/inet_cots") - ;; - *hpux11*) - AC_DEFINE(HPUX) - AC_DEFINE(HPUX_11) - AC_EGREP_CPP(ACE_ON_64BIT_HP, - [ -#ifdef __LP64__ - ACE_ON_64BIT_HP -#endif - ], - [ - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x0000001100000000)) - AC_DEFINE(ACE_DEFAULT_BASE_ADDRL, ((char *) 0x0000001100000000)) - ], - [ - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - ]) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *irix5.2*) - AC_DEFINE(IRIX5) - ;; - *irix5.3*) - AC_DEFINE(IRIX5) - ;; - *irix6*) - AC_DEFINE(IRIX6) - AC_DEFINE(ACE_HAS_IRIX62_THREADS) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) (1024U * 1024 * 1024))) - if test "$ace_user_enable_threads" = yes; then - AC_DEFINE(ACE_HAS_IRIX62_THREADS) - fi - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *linux*) - AC_DEFINE(ACE_DEFAULT_MAX_SOCKET_BUFSIZ, 65535) - AC_DEFINE(ACE_DEFAULT_SELECT_REACTOR_SIZE, 256) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - AC_DEFINE(ACE_HAS_BIG_FD_SET) dnl FIXME: We need a test for this! - AC_DEFINE(ACE_UINT64_FORMAT_SPECIFIER, "%Lu") - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *lynxos*) - AC_DEFINE(ACE_MALLOC_ALIGN, 8) - AC_DEFINE(ACE_MAP_PRIVATE, ACE_MAP_SHARED) - AC_DEFINE(ACE_USE_RCSID, 0) - AC_DEFINE(ACE_HAS_LYNXOS_SIGNALS) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *m88k*) - AC_DEFINE(m88k) - AC_DEFINE(__m88k__) - AC_DEFINE(IP_ADD_MEMBERSHIP, 0x13) - AC_DEFINE(IP_DROP_MEMBERSHIP, 0x14) - ;; - *mvs*) - ;; - *netbsd*) - AC_DEFINE(ACE_NETBSD) - ;; - *osf3.2*) - AC_EGREP_CPP(ACE_DEC_CXX, - [ -#if defined(__DECCXX) - ACE_DEC_CXX -#endif - ], - [ - AC_DEFINE(DEC_CXX) - ],) - ;; - *osf4.0*) -dnl We need to add checks for g++, DEC C++ and Rational C++ - AC_EGREP_CPP(ACE_DEC_CXX, - [ -#if defined(__DECCXX) - ACE_DEC_CXX -#endif - ], - [ - AC_DEFINE(DEC_CXX) - ],) -dnl Check for _POSIX_C_SOURCE macro - AC_EGREP_CPP(ACE_ON_DEC_WITH_POS_SRC, - [ - /* Include unistd.h to define _POSIX_C_SOURCE. */ -#ifndef ACE_LACKS_UNISTD_H -# include <unistd.h> -#endif - -#if defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE >= 199506L) - ACE_ON_DEC_WITH_POS_SRC -#endif - ], - [ - AC_DEFINE(DIGITAL_UNIX) - ],) - AC_DEFINE(ACE_DEFAULT_BASE_ADDR, ((char *) 0x80000000)) - AC_DEFINE(ACE_NEEDS_HUGE_THREAD_STACKSIZE, (1024 * 1024)) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *psos*) - AC_DEFINE(ACE_PSOS) - AC_DEFINE(ACE_PSOSIM) - AC_DEFINE(ACE_PSOSTBD) - dnl need ACE_HAS_TSS_EMULATION for ACE_DEFAULT_THREAD_KEYS! - AC_EGREP_CPP(ACE_TSS_EMULATION, - [ -#if defined (ACE_HAS_TSS_EMULATION) - ACE_TSS_EMULATION -#endif - ], AC_DEFINE(ACE_DEFAULT_THREAD_KEYS, 256),) - AC_DEFINE(ACE_MAIN, extern "C" void root) - AC_DEFINE(ACE_MALLOC_ALIGN, 8) - AC_DEFINE(ACE_USE_RCSID, 0) - ;; - *sco4.2*) - AC_DEFINE(SCO) - AC_DEFINE(ACE_DEFAULT_CLOSE_ALL_HANDLES, 0) - ;; - *sco5*) - AC_DEFINE(SCO) - AC_DEFINE(ACE_DEFAULT_CLOSE_ALL_HANDLES, 0) - AC_DEFINE(ACE_HAS_BIG_FD_SET) dnl FIXME: We need a test for this! - ;; - *sunos4*) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *solaris2.4*) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - AC_DEFINE(ACE_NEEDS_LWP_PRIO_SET) - ;; - *solaris2.5*) - AC_DEFINE(ACE_MALLOC_ALIGN, 8) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - AC_DEFINE(ACE_NEEDS_LWP_PRIO_SET) - ;; - *solaris2.6*) - AC_DEFINE(ACE_MALLOC_ALIGN, 8) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - AC_DEFINE(ACE_NEEDS_LWP_PRIO_SET) - ;; - *solaris2.7*) - AC_DEFINE(ACE_MALLOC_ALIGN, 8) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - AC_DEFINE(ACE_NEEDS_LWP_PRIO_SET) - ;; - *86*solaris*) - AC_DEFINE(ACE_HAS_X86_STAT_MACROS) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - AC_DEFINE(ACE_NEEDS_LWP_PRIO_SET) - ;; - *tandem*) - AC_DEFINE(ACE_TIMER_SKEW, (1000 * 10)) - ;; - *unixware2.0*) - AC_DEFINE(UNIXWARE) - AC_DEFINE(UNIXWARE_2_0) - ;; - *unixware2.1*) - AC_DEFINE(UNIXWARE) - AC_DEFINE(UNIXWARE_2_1) - ;; - *vxworks*) - AC_DEFINE(VXWORKS) - AC_DEFINE(ACE_MAIN, ace_main) - AC_DEFINE(ACE_DEFAULT_MAX_SOCKET_BUFSIZ, 32768) - dnl need ACE_HAS_TSS_EMULATION for ACE_DEFAULT_THREAD_KEYS! - AC_EGREP_CPP(ACE_TSS_EMULATION, - [ -#if defined (ACE_HAS_TSS_EMULATION) - ACE_TSS_EMULATION -#endif - ], AC_DEFINE(ACE_DEFAULT_THREAD_KEYS, 16),) - AC_DEFINE(ACE_THR_PRI_FIFO_DEF, 101) - AC_DEFINE(ACE_USE_RCSID, 0) - ;; - *cygwin32*) - ;; - *win32*) - AC_DEFINE(ACE_WIN32) - AC_DEFINE(ACE_UINT64_FORMAT_SPECIFIER, "%I64u") -dnl AC_DEFINE(ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL) - if test "$ace_u_long_long_typedef_set" != yes; then - ACE_UINT64="unsigned __int64" - ace_u_long_long_typedef_set=yes - fi dnl "$ace_u_long_long_typedef_set" != yes - ;; - *) - ;; -esac - -dnl End ACE_SET_PLATFORM_MACROS -]) - |