| 1 |
dnl Use autoconf on this directory to produce configure script |
| 2 |
dnl Use autoheader on this file to produce config.h.in |
| 3 |
dnl Then use configure script to generate makefile from Makefile.in |
| 4 |
|
| 5 |
AC_INIT(sockstream.h) dnl a distinct socket++ file |
| 6 |
AC_CONFIG_HEADER(config.h) |
| 7 |
|
| 8 |
dnl check for programs |
| 9 |
AC_PROG_MAKE_SET |
| 10 |
AC_PROG_CC |
| 11 |
AC_PROG_CXX |
| 12 |
AC_PROG_RANLIB |
| 13 |
AC_CHECK_PROG(MAKEDEPEND, makedepend, makedepend, :) dnl not a smiley :( |
| 14 |
AC_PROG_CPP dnl later macros will use it |
| 15 |
AC_PROG_CXXCPP dnl later macros will use it |
| 16 |
AC_AIX |
| 17 |
|
| 18 |
dnl check for libraries |
| 19 |
AC_CHECK_LIB(nsl, t_accept, NETWORK_LIBS="$NETWORK_LIBS -lnsl") |
| 20 |
AC_CHECK_LIB(socket, socket, NETWORK_LIBS="$NETWORK_LIBS -lsocket") |
| 21 |
AC_SUBST(NETWORK_LIBS) |
| 22 |
|
| 23 |
dnl check for header files |
| 24 |
AC_LANG_SAVE |
| 25 |
AC_LANG_CPLUSPLUS |
| 26 |
AC_CHECK_HEADERS(builtin.h string.h memory.h) |
| 27 |
AC_CHECK_HEADER(_G_config.h, AC_DEFINE(_S_LIBGXX)) |
| 28 |
AC_LANG_RESTORE |
| 29 |
AC_HEADER_SYS_WAIT |
| 30 |
|
| 31 |
dnl check for typedefs |
| 32 |
AC_PID_T |
| 33 |
|
| 34 |
dnl check for structures |
| 35 |
|
| 36 |
dnl check for compiler characteristics |
| 37 |
AC_SUBST(CFLAGS) |
| 38 |
AC_SUBST(CXXFLAGS) |
| 39 |
AC_SUBST(LDFLAGS) |
| 40 |
|
| 41 |
dnl check for library functions and global variables |
| 42 |
AC_RETSIGTYPE |
| 43 |
AC_FUNC_VFORK |
| 44 |
AC_HAVE_FUNCS(select) |
| 45 |
|
| 46 |
AC_MSG_CHECKING(for sys_siglist) |
| 47 |
AC_CACHE_VAL(socketxx_cv_siglist, [ |
| 48 |
AC_TRY_LINK([ |
| 49 |
# include <unistd.h> |
| 50 |
# include <sys/signal.h> |
| 51 |
], [ |
| 52 |
#ifndef _sys_siglist |
| 53 |
extern char* _sys_siglist[]; |
| 54 |
#endif |
| 55 |
puts(*_sys_siglist); |
| 56 |
], |
| 57 |
socketxx_cv_siglist=_sys_siglist, |
| 58 |
socketxx_cv_siglist=sys_siglist) ]) |
| 59 |
|
| 60 |
AC_DEFINE_UNQUOTED(SYS_SIGLIST, $socketxx_cv_siglist) |
| 61 |
AC_MSG_RESULT($socketxx_cv_siglist) |
| 62 |
|
| 63 |
dnl the following check was provided by |
| 64 |
dnl Blair Zajac <blair@olympia.gps.caltech.edu> |
| 65 |
AC_MSG_CHECKING(if extern \"C\" wrappers are needed) |
| 66 |
AC_CACHE_VAL(bz_cv_cplusplus_needexternCwrapper, [ |
| 67 |
AC_LANG_SAVE |
| 68 |
AC_LANG_CPLUSPLUS |
| 69 |
AC_TRY_LINK([ |
| 70 |
# include <string.h> |
| 71 |
# include <stdio.h> |
| 72 |
], [ |
| 73 |
char buf[100]; |
| 74 |
strcpy(buf, "Hello world\n"); |
| 75 |
], |
| 76 |
bz_cv_cplusplus_needexternCwrapper=no, |
| 77 |
bz_cv_cplusplus_needexternCwrapper=yes) |
| 78 |
]) |
| 79 |
AC_LANG_RESTORE |
| 80 |
|
| 81 |
if test $bz_cv_cplusplus_needexternCwrapper = no; then |
| 82 |
AC_DEFINE(EXTERN_C_BEGIN,) |
| 83 |
AC_DEFINE(EXTERN_C_END,) |
| 84 |
else |
| 85 |
AC_DEFINE(EXTERN_C_BEGIN, extern "C" {) |
| 86 |
AC_DEFINE(EXTERN_C_END, }) |
| 87 |
fi |
| 88 |
AC_MSG_RESULT($bz_cv_cplusplus_needexternCwrapper) |
| 89 |
|
| 90 |
dnl check for system |
| 91 |
|
| 92 |
dnl generate output files |
| 93 |
AC_OUTPUT(Makefile test/Makefile) |