# # # Copyright (c) 2010 Apple Inc. All rights reserved. # # @APPLE_LICENSE_HEADER_START@ # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # 3. Neither the name of Apple Inc. ("Apple") nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # Portions of this software have been released under the following terms: # # (c) Copyright 1989-1993 OPEN SOFTWARE FOUNDATION, INC. # (c) Copyright 1989-1993 HEWLETT-PACKARD COMPANY # (c) Copyright 1989-1993 DIGITAL EQUIPMENT CORPORATION # # To anyone who acknowledges that this file is provided "AS IS" # without any express or implied warranty: # permission to use, copy, modify, and distribute this file for any # purpose is hereby granted without fee, provided that the above # copyright notices and this notice appears in all source code copies, # and that none of the names of Open Software Foundation, Inc., Hewlett- # Packard Company or Digital Equipment Corporation be used # in advertising or publicity pertaining to distribution of the software # without specific, written prior permission. Neither Open Software # Foundation, Inc., Hewlett-Packard Company nor Digital # Equipment Corporation makes any representations about the suitability # of this software for any purpose. # # Copyright (c) 2007, Novell, Inc. All rights reserved. # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # 3. Neither the name of Novell Inc. nor the names of its contributors # may be used to endorse or promote products derived from this # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # @APPLE_LICENSE_HEADER_END@ # # dnl Process this file with autoconf to produce a configure script. AC_PREREQ([2.13]) AC_INIT([DCE RPC], [1.1.0.7]) AC_CONFIG_AUX_DIR([build]) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_TARGET # reduce target_cpu case $target_cpu in i?86) target_cpu="i386";; hppa2.0*) target_cpu="hppa2.0";; esac # reduce linux* to linux-gnu for target_os # reduce hpux11.* to hpux11.11 # reduce freebsd 6.x/7.x/8.x to 6.0 case $target_os in linux*) target_os="linux-gnu";; hpux11.*) target_os="hpux11.11";; darwin*) target_os="darwin";; solaris2.1*) target_os="solaris2.10";; freebsd6.*|freebsd7.*|freebsd8.*) target_os="freebsd6.0";; esac AC_SUBST(target_cpu) AC_SUBST(target_os) if test "x$SDKROOT" = "x" ; then SDKROOT=/ fi AC_DEFINE_UNQUOTED([SDKROOT], ["$SDKROOT"], [Apple SDKROOT we are building against]) AC_SUBST(SDKROOT, $SDKROOT) AM_INIT_AUTOMAKE(dcerpc, 1.1.0.7) LT_INIT([disable-static pic-only dlopen]) # AC_PREFIX_DEFAULT(/opt/dcerpc) AC_PREFIX_DEFAULT(/usr/local) AC_CONFIG_SRCDIR([uuid/uuid.c]) AC_CONFIG_HEADER([include/config.h]) AM_DISABLE_STATIC dnl Checks for programs. AC_PROG_CC AC_PROG_CPP AC_PROG_CXX AC_PROG_AWK AM_PROG_LIBTOOL AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_SED AC_PATH_PROG(GENCAT, gencat, true) AC_CHECK_PROG(XCRUN, xcrun, [/usr/bin/xcrun], []) AC_SUBST(GENCAT) AC_OBJEXT AC_C_INLINE XAC_C_ATTRIBUTE_UNUSED AC_CHECK_PROGS([FLEX], [flex]) AC_PROG_YACC AC_PATH_PROG(BISON, bison) case $ac_cv_path_BISON in *bison) ;; *) AC_MSG_ERROR([Could not find bison]) ;; esac AX_CFLAGS_GCC_OPTION(-fno-strict-aliasing) AX_CFLAGS_GCC_OPTION(-Wall) AX_CFLAGS_GCC_OPTION(-Wextra) AX_CFLAGS_GCC_OPTION(-Wshorten-64-to-32) AX_CFLAGS_GCC_OPTION(-Wmissing-format-attribute) AX_CFLAGS_GCC_OPTION(-Wbad-function-cast) AX_CFLAGS_GCC_OPTION(-Wstrict-prototypes) AX_CFLAGS_GCC_OPTION(-Wpointer-arith) AX_CFLAGS_GCC_OPTION(-Wcast-align) AX_CFLAGS_GCC_OPTION(-Wwrite-strings) # On Linux with autoconf 2.67, passing options with an embedded '=' gives # autoconf a fit and causes it to put variable names like '31078as_VAR' # into CFLAGS. Go figure -- jpeach case $target_os in darwin*) AX_CFLAGS_GCC_OPTION(-Wformat=2) ;; esac # If we have a gcc that does stack protection, also enable # string API function checking. AX_CFLAGS_GCC_OPTION(-fstack-protector, [], [ CFLAGS="$CFLAGS -fstack-protector"; CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2"; ]) # Specify desired UNIX interface case "$target_os" in *darwin*) FEATURETEST_CFLAGS="-D_SOCKADDR_LEN" IDL_CFLAGS="$IDL_CFLAGS -D_SOCKADDR_LEN" # For Intel architectures, we need to be explicit # to make sure the compiler builds the sub architecture # we want on systems that support more than one. case $target_cpu in i386) AX_CFLAGS_GCC_OPTION(-arch i386) ;; x86_64) AX_CFLAGS_GCC_OPTION(-arch x86_64) ;; ppc|powerpc) AX_CFLAGS_GCC_OPTION(-arch ppc) ;; ppc64|powerpc64) AX_CFLAGS_GCC_OPTION(-arch ppc64) ;; esac # We need to use the generic arch headers so that we can # merge them during fat builds. target_cpu=generic ;; *freebsd*) FEATURETEST_CFLAGS="-D_SOCKADDR_LEN" IDL_CFLAGS="$IDL_CFLAGS -D_SOCKADDR_LEN" ;; *aix*) FEATURETEST_CFLAGS="-D_XOPEN_SOURCE=500 -D_ALL_SOURCE=1 -D_REENTRANT" IDL_CFLAGS="$IDL_CFLAGS -D_SOCKADDR_LEN" ;; *) FEATURETEST_CFLAGS="-D_XOPEN_SOURCE=500 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS -D_ALL_SOURCE=1 -D_REENTRANT" ;; esac AC_SUBST([FEATURETEST_CFLAGS]) AC_DEFINE([FEATURETEST_CFLAGS], [$FEATURETEST_CFLAGS], [Feature test flags]) CPPFLAGS="$CPPFLAGS $FEATURETEST_CFLAGS" # Allow libtool-specific linker flags to be passed in AC_SUBST(LTLDFLAGS) dnl Checks for libraries. AC_CHECK_LIB(socket, socket, [LIB_socket="-lsocket" AC_SUBST(LIB_socket)],,) AC_CHECK_LIB(nsl, gethostbyname, [LIB_nsl="-lnsl"],,) AC_CHECK_LIB(dl, dlopen, [LIB_dl="-ldl" AC_SUBST(LIB_dl)],,) AC_SUBST(LIB_nsl) dnl Checks for header files. AC_CHECK_HEADERS(features.h sys/cdefs.h dlfcn.h sys/time.h) AC_CHECK_HEADERS(getopt.h sys/sockio.h sys/un.h nl_types.h) AC_CHECK_HEADERS(net/if_dl.h execinfo.h sys/fd_set.h) AC_CHECK_HEADERS(CrashReporterClient.h,,, [[ #if HAVE_CRASHREPORTERCLIENT_H # include #endif ]]) AC_CHECK_FUNCS(scandir getpeereid) dnl Check for number of arguments to gethostbyname_r saved_LIBS="$LIBS" LIBS="$LIBS $LIB_nsl" AC_CHECK_FUNCS(gethostbyname_r) if test "$ac_cv_func_gethostbyname_r" = "yes"; then AC_CACHE_CHECK(number of arcuments to gethostbyname_r, xad_cv_gethostbyname_r_args, [ xad_cv_gethostbyname_r_args= AC_TRY_COMPILE([ #include ], [gethostbyname_r(0, 0, 0, 0, 0, 0);], [xad_cv_gethostbyname_r_args=6], [ AC_TRY_COMPILE([ #include ], [gethostbyname_r(0, 0, 0, 0, 0);], [xad_cv_gethostbyname_r_args=5], [xad_cv_gethostbyname_r_args=3])]) ]) fi AC_DEFINE_UNQUOTED(GETHOSTBYNAME_R_ARGS, $xad_cv_gethostbyname_r_args, Number of arguments to gethostbyname_r) LIBS="$saved_LIBS" dnl Checks for typedefs, structures, and compiler characteristics. dnl Checks for library functions. dnl _GNU_SOURCE pulls in the definition of _pthread_push_defer AC_DEFINE(__EXTENSIONS__, 1, Ask for extension api) AC_DEFINE(_REENTRANT, 1, Ask for re-entrant api) AC_DEFINE(_GNU_SOURCE, 1, Ask for gnu extensions) AC_DEFINE(_BSD, 1, Tell libc that we want BSD things) RPC_ARG_DEFINE(debug, DEBUG, yes, [Compile with debugging support]) RPC_ARG_DEFINE(dcom, ENABLE_DCOM, no,[Enable experimental DCOM support]) AM_CONDITIONAL(ENABLE_DCOM, test x$rpc_arg_dcom = yes) AM_CONDITIONAL(TARGET_OS_LINUX, test x$target_os = xlinux-gnu) AM_CONDITIONAL(TARGET_OS_DARWIN, test x$target_os = xdarwin) AC_CHECK_FUNCS(pthread_setugid_np) AC_CHECK_HEADERS(sys/kauth.h sys/syscall.h) AC_CHECK_FUNCS(strlcpy strlcat) if test x"$localstatedir" = x"/var"; then rpccachedir="$localstatedir/lib/likewise" else rpccachedir="$localstatedir" fi AS_AC_EXPAND(rpc_dir, ["$rpccachedir/rpc"]) AC_CACHE_CHECK([for named pipes directory], [rpcd_cv_rpc_c_np_dir], [rpcd_cv_rpc_c_np_dir="$rpc_dir"]) AC_CACHE_CHECK([for unix domain sockets directory], [rpcd_cv_rpc_c_uxd_dir], [rpcd_cv_rpc_c_uxd_dir="$rpc_dir"]) AC_DEFINE_UNQUOTED([RPC_C_NP_DIR], ["$rpcd_cv_rpc_c_np_dir"], [named pipes directory]) AC_DEFINE_UNQUOTED([RPC_C_UXD_DIR], ["$rpcd_cv_rpc_c_uxd_dir"], [unix domain sockets directory]) ##################################################################### ## COMPONENT: threads AC_MSG_CHECKING(pthread library and requirements) AC_MSG_RESULT() AC_ARG_WITH(pthread-ext-dir, [ --with-pthread-ext-dir=DIR base directory of pthread extension library]) AC_ARG_WITH(pthread-ext-libdir, [ --with-pthread-ext-libdir=DIR directory of pthread extension library. (defaults to --with-pthread-ext-dir/lib)]) if test -n "$with_pthread_ext_dir"; then CPPFLAGS="$CPPFLAGS -I$with_pthread_ext_dir/include" LDFLAGS="$LDFLAGS -L$with_pthread_ext_dir/lib" if test -z "$with_pthread_ext_libdir"; then with_pthread_ext_libdir="$with_pthread_ext_dir/lib" fi fi if test -n "$with_pthread_ext_libdir"; then LDFLAGS="$LDFLAGS -L$with_pthread_ext_libdir" fi AC_ARG_WITH(pthread-ext-rpath, [ --with-pthread-ext-rpath=DIR directory where the pthread extension will be installed at runtime. Defaults to --with-pthread-ext-libdir value.], [pthread_ext_rpath="$withval"], [pthread_ext_rpath="$with_pthread_ext_libdir"]) if test -n "$pthread_ext_rpath"; then LIBTOOLFLAGS="$LIBTOOLFLAGS -rpath $pthread_ext_rpath" fi AC_CHECK_HEADERS(pthread.h) if test -n "$with_pthread_ext_dir"; then AC_CHECK_HEADERS(pthread_ext.h) fi AC_CHECK_LIB(pthread, pthread_create, [LIB_pthread="-lpthread" AC_SUBST(LIB_pthread)],,) PTHREAD_MODE="none" AC_CHECK_LIB(rt, sched_yield, [LIB_rt="-lrt" AC_SUBST(LIB_rt)],,) dcethreads_save_LIBS="$LIBS" LIBS="$LIBS $LIB_pthread $LIB_rt" AC_CHECK_FUNCS(pthread_atfork) AC_CHECK_FUNCS(pthread_get_expiration_np) AC_CHECK_FUNCS(pthread_delay_np) AC_CHECK_FUNCS(pthread_lock_global_np) AC_CHECK_FUNCS(pthread_unlock_global_np) AC_CHECK_FUNCS(pthread_getunique_np) AC_CHECK_FUNCS(pthread_ismultithreaded_np) AC_CHECK_FUNCS(pthread_kill_other_threads_np) AC_CHECK_FUNCS(pthread_mutexattr_getkind_np) AC_CHECK_FUNCS(pthread_mutexattr_setkind_np) AC_CHECK_FUNCS(pthread_yield) AC_CHECK_FUNCS(sched_yield) AC_CHECK_FUNCS(vasprintf) AC_SUBST(DCETHREADINCLUDES) LIBS="$dcepthreads_save_LIBS" AC_CHECK_FUNCS(backtrace backtrace_symbols backtrace_symbols_fd) ##################################################################### ## COMPONENT: uuid AC_MSG_CHECKING(UUID library and tool requirements) AC_MSG_RESULT() AC_CHECK_HEADERS([uuid/uuid.h], [], [AC_MSG_ERROR([Could not find uuid.h])]) AC_CHECK_HEADERS([sys/sysctl.h net/if_arp.h]) AC_CHECK_FUNCS(gettimeofday socket) ##################################################################### ## COMPONENT: include if test "x$ENABLE_DCOM" = "xyes" ; then include_dcom_idl="objex.idl obase.idl remact.idl wtypes.idl" else include_dcom_idl="" fi AC_SUBST(include_dcom_idl) ##################################################################### ## COMPONENT: idl/idl_compiler RPC_ARG_DEFINE(idldumpers, DUMPERS, no, [Enable DUMPERS for debugging dceidl]) AC_CHECK_FUNCS(catopen) dnl IDL needs to set these flags when it compiles stuff IDL_CFLAGS="$IDL_CFLAGS -D_GNU_SOURCE -D_REENTRANT -D_POSIX_C_SOURCE=3" AC_SUBST(IDL_CFLAGS) dnl For DCOM, default to C++ compiler for now if test "x$ENABLE_DCOM" = "xyes" ; then IDL_CC=" $CXX" else IDL_CC=" $CC" fi dnl If using GCC, we need to add -x c-header to force it to treat idl files dnl as C headers; otherwise it tries to do something wierd... if test "x${ac_cv_prog_gcc}" = "xyes" ; then IDL_CPP="$CPP -x c-header" else IDL_CPP="$CPP" fi # On Darwin, we default the IDL compiler to the default toolchain so that you # can do "configure CC=~/bin/cc" and still use xcrun for building the IDL. case $target_os in darwin*) IDL_CPP="${XCRUN} cc -E -x c-header" if test "x$ENABLE_DCOM" = "xyes" ; then IDL_CC="${XCRUN} c++" else IDL_CC="${XCRUN} cc" fi ;; esac AC_SUBST(IDL_CPP) AC_SUBST(IDL_CC) ##################################################################### ## COMPONENT: AUTH PLUGINS ## ## gss_negotiate AC_ARG_WITH( gssapi-dir, [ --with-gssapi-dir= look for gssapi libraries in ], [ GSSAPI_INCLUDES="-I$withval/include" GSSAPI_LDFLAGS="-L$withval/`basename $libdir`" ], ) AC_ARG_WITH( gssapi-libdir, [ --with-gssapi-libdir= look for gssapi libraries in ], [ GSSAPI_LDFLAGS="-L$withval" ], ) AX_CHECK_FRAMEWORK(GSS, [rpc_have_gss_framework=yes], []) AX_CHECK_FRAMEWORK(Kerberos, [rpc_have_kerberos_framework=yes], []) AC_SUBST(GSSAPI_INCLUDES) AC_SUBST(GSSAPI_LDFLAGS) AC_SUBST(GSSAPI_LIBS) AC_CHECK_HEADERS(krb5.h gssapi/gssapi.h gssapi/gssapi_krb5.h gssapi/gssapi_ext.h) tmp_LDFLAGS="$LDFLAGS" LDFLAGS="$GSSAPI_LDFLAGS $LDFLAGS" AC_CHECK_LIB(gssapi_krb5, gss_wrap, [GSSAPI_LIBS="-lgssapi_krb5"], []) LDFLAGS="$tmp_LDFLAGS" ## ## schannel AC_ARG_WITH( schannel-dir, [ --with-schannel-dir= look for libschannel in ], [ SCHANNEL_INCLUDES="-I$withval/include" SCHANNEL_LDFLAGS="-L$withval/`basename $libdir`" ], ) AC_ARG_WITH( schannel-libdir, [ --with-schannel-libdir= look for libschannel libraries in ], [ SCHANNEL_LDFLAGS="-L$withval" ], ) AC_SUBST(SCHANNEL_INCLUDES) AC_SUBST(SCHANNEL_LDFLAGS) AC_SUBST(SCHANNEL_LIBS) tmp_LDFLAGS="$LDFLAGS" LDFLAGS="$SCHANNEL_LDFLAGS $LDFLAGS" AC_CHECK_LIB(schannel, schn_wrap, [SCHANNEL_LIBS="-lschannel"]) LDFLAGS="$tmp_LDFLAGS" ##################################################################### ## COMPONENT: ncklib # Keep track of whether we have a library that will provide a ncacn_np # transport. rpc_have_np_transport=no # # Check to see whether SMBClient framework is available or not # rpc_have_smbclient_framework=yes RPC_SMBCLIENT_FRAMEWORK(NAF_NP_CPPFLAGS, NAF_NP_LDFLAGS, NAF_NP_LIBS, rpc_have_smbclient_framework=no) AM_CONDITIONAL(HAVE_SMBCLIENT_FRAMEWORK, test x${rpc_have_smbclient_framework} = xyes) if test x${rpc_have_smbclient_framework} = xyes ; then rpc_have_np_transport=yes AC_DEFINE(HAVE_SMBCLIENT_FRAMEWORK, 1, [whether the SMBClient.framework API is available]) fi # Check whether the Likewise SMB named pipe client library is available. If so, # we need to link it for named pipe support. AC_CHECK_HEADERS([lwio/lwio.h]) AC_CHECK_LIB(lwioclient, LwNtCtxCreateNamedPipeFile, [ NAF_NP_LIBS="-llwioclient" rpc_have_likewise_lwio=yes rpc_have_np_transport=yes AC_DEFINE(HAVE_LIKEWISE_LWIO, 1, [whether the Likewise lwioclient API is available]) ], [ rpc_have_likewise_lwio=no ]) AM_CONDITIONAL(HAVE_LIKEWISE_LWIO, test x${rpc_have_likewise_lwio} = xyes) AC_SUBST(NAF_NP_CPPFLAGS) AC_SUBST(NAF_NP_LDFLAGS) AC_SUBST(NAF_NP_LIBS) RPC_ARG_DEFINE(ncacn, PROT_NCACN, yes,Support connection based transports) if test x"$rpc_arg_ncacn" = xyes then AC_DEFINE([ENABLE_PROT_NCACN], [], [Enable NCACN protocol sequence]) fi AM_CONDITIONAL(PROT_NCACN, test x${rpc_arg_ncacn} = xyes) RPC_ARG_DEFINE(ncadg, PROT_NCADG, yes,Support connectionless transports) if test x"$rpc_arg_ncadg" = xyes then AC_DEFINE([ENABLE_PROT_NCADG], [], [Enable NCADG protocol sequence]) fi AM_CONDITIONAL(PROT_NCADG, test x${rpc_arg_ncadg} = xyes) RPC_ARG_DEFINE(dummyauth, AUTH_DUMMY, no,Include the DCE dummy auth service) AM_CONDITIONAL(AUTH_DUMMY, test x${rpc_arg_dummyauth} = xyes) if test "x${rpc_arg_dummyauth}" = "xyes" ; then AUTH_DUMMY_EXTRAS="" test "x${rpc_arg_ncacn}" = "xyes" && AUTH_DUMMY_EXTRAS="$AUTH_DUMMY_EXTRAS noauthcn.c" test "x${rpc_arg_ncadg}" = "xyes" && AUTH_DUMMY_EXTRAS="$AUTH_DUMMY_EXTRAS noauthdg.c" AC_SUBST(AUTH_DUMMY_EXTRAS) fi # If we have anything that looks like GSSAPI libraries, default the # gss_negotiate auth module to yes. Otherwise, default it to no and # let the user override the default. if test "x${rpc_have_gss_framework}" = "xyes" -o \ "x${ac_cv_lib_gssapi_krb5_gss_wrap}" = "xyes" ; then rpc_default_gss_negotiate=yes else rpc_default_gss_negotiate=no fi RPC_ARG_DEFINE(gss_negotiate, AUTH_GSS_NEGOTIATE, ${rpc_default_gss_negotiate}, Include the DCE gss_negotiate auth service) if test x"$rpc_arg_gss_negotiate" = xyes then AC_DEFINE([ENABLE_AUTH_GSS_NEGOTIATE], [], [Enable GSS negotiate auth mechanism]) fi AM_CONDITIONAL(AUTH_GSS_NEGOTIATE, test x${rpc_arg_gss_negotiate} = xyes) # If we found libschannel, build it by default, otherwise disable it by # default. RPC_ARG_DEFINE(schannel, AUTH_SCHANNEL, ${ac_cv_lib_schannel_schn_wrap}, Include the schannel auth service) if test x"$rpc_arg_schannel" = xyes then AC_DEFINE([ENABLE_AUTH_SCHANNEL], [], [Enable schannel auth mechanism]) fi AM_CONDITIONAL(AUTH_SCHANNEL, test x${rpc_arg_schannel} = xyes) # Make sure that we actually have libschannel if it was force-enabled. if test "x${rpc_arg_schannel}" = "xyes" -a \ "x${ac_cv_lib_schannel_schn_wrap}" != "xyes" ; then AC_MSG_ERROR([Could not find libschannel]) fi RPC_ARG_DEFINE(codeset, BUILD_CODESET, no,Support for the codeset registry (untested)) AM_CONDITIONAL(BUILD_CODESET, test x${rpc_arg_codeset} = xyes) RPC_ARG_DEFINE(rpc-ns-ldap, BUILD_RPC_NS_LDAP, no,Support for the LDAP nameservice (untested)) AM_CONDITIONAL(BUILD_RPC_NS_LDAP, test x${rpc_arg_rpc_ns_ldap} = xyes) AC_CHECK_FUNCS(scandir) RPC_ARG_DEFINE(afip, NAF_IP, yes,IP network address family support) if test x"$rpc_arg_afip" = xyes then AC_DEFINE([ENABLE_NAF_IP], [], [Enable IP address family support]) fi AM_CONDITIONAL(NAF_IP, test x${rpc_arg_afip} = xyes) RPC_ARG_DEFINE(afnp, NAF_NP,yes,Named Pipes network address family support) if test x"$rpc_arg_afnp" = xyes then AC_DEFINE([ENABLE_NAF_NP], [], [Enable named pipe address family support]) fi AM_CONDITIONAL(NAF_NP, test x${rpc_arg_afnp} = xyes) if test "x${rpc_arg_afnp}" = "xyes" -a \ "x${rpc_have_np_transport}" != "xyes" ; then AC_MSG_WARN(Enabling the named pipe transport without SMB pipe support) fi RPC_ARG_DEFINE(afuxd, NAF_UXD,no,AF_LOCAL network address family support (untested)) AM_CONDITIONAL(NAF_UXD, test x${rpc_arg_afuxd} = xyes) RPC_ARG_DEFINE(ifloopback, USE_LOOPBACK, yes,Include loopback interface support) # Check whether the Likewise lwmapsecurity library is available for # access token support AC_CHECK_HEADERS([lw/base.h, lwmapsecurity/lwmapsecurity.h]) AC_CHECK_LIB(lwmapsecurity, LwMapSecurityInitialize, [ rpc_have_likewise_lwmapsecurity=yes AC_DEFINE(HAVE_LIKEWISE_LWMAPSECURITY, 1, [whether the Likewise lwmapsecurity API is available]) ], [ rpc_have_likewise_lwmapsecurity=no ]) AM_CONDITIONAL(HAVE_LIKEWISE_LWMAPSECURITY, test x${rpc_have_likewise_lwmapsecurity} = xyes) ##################################################################### ## COMPONENT: rpcd AS_AC_EXPAND(SBINDIR, ["${sbindir}"]) AC_CHECK_FUNCS(setpgrp) if test "$ac_cv_func_setpgrp" = "yes"; then AC_CACHE_CHECK(whether setpgrp() takes 2 arguments, rpcd_cv_setpgrp_args, [ AC_TRY_COMPILE([#include ], [setpgrp(0, 0);], [rpcd_cv_setpgrp_args=2], [rpcd_cv_setpgrp_args=0])]) AC_DEFINE_UNQUOTED(SETPGRP_ARGS, $rpcd_cv_setpgrp_args, Number of arguments to setgrp()) fi ##################################################################### ## COMPONENT: demos RPC_ARG_DEFINE(demoprogs, DEMO_PROGS, yes,Build demo programs) ##################################################################### ##### ## Unit tests ##### # Check for moonunit bits AC_CHECK_HEADERS([moonunit/moonunit.h], [HAVE_MOONUNIT_H=true], [HAVE_MOONUNIT_H=false]) AC_CHECK_LIB(moonunit, Mu_Interface_Result, [HAVE_MOONUNIT_LIB=true], [HAVE_MOONUNIT_LIB=false]) AC_CHECK_PROG(MOONUNIT_STUB, moonunit-stub, moonunit-stub, false) if test "${MOONUNIT_STUB}" = "moonunit-stub" && $HAVE_MOONUNIT_H && $HAVE_MOONUNIT_LIB then HAVE_MOONUNIT="true" LIB_moonunit="-lmoonunit" AC_DEFINE([HAVE_MOONUNIT], [], [Have MoonUnit]) else HAVE_MOONUNIT="false" fi AC_SUBST(LIB_moonunit) AM_CONDITIONAL(HAVE_MOONUNIT, $HAVE_MOONUNIT) AC_OUTPUT( Makefile dnl freedce.spec libdcethread/Makefile uuid/Makefile include/Makefile include/compat/Makefile include/dce/Makefile include/dce/dce.h include/dce/dce_error.h include/dce/dce_utils.h include/dce/marshall.h include/dce/ndr_rep.h include/dce/ndrtypes.h include/dce/sec_authn.h include/dce/aix5.2.0.0/Makefile include/dce/darwin/Makefile include/dce/linux-gnu/Makefile include/dce/freebsd6.0/Makefile include/dce/solaris2.8/Makefile include/dce/solaris2.9/Makefile include/dce/solaris2.10/Makefile include/dce/hpux11.11/Makefile include/dce/generic/Makefile include/dce/i386/Makefile include/dce/hppa2.0/Makefile include/dce/powerpc/Makefile include/dce/powerpc64/Makefile include/dce/s390/Makefile include/dce/s390x/Makefile include/dce/sparc/Makefile include/dce/x86_64/Makefile include/dce/ia64/Makefile idl_compiler/Makefile idl_compiler/sysdep.h idl_lib/Makefile ncklib/Makefile dcelib/Makefile ncklib/include/aix5.2.0.0/Makefile ncklib/include/linux-gnu/Makefile ncklib/include/freebsd6.0/Makefile ncklib/include/solaris2.8/Makefile ncklib/include/solaris2.9/Makefile ncklib/include/solaris2.10/Makefile ncklib/include/darwin/Makefile ncklib/include/hpux11.11/Makefile ncklib/include/Makefile rpcd/Makefile rpcd/dcerpcd.reg demos/Makefile demos/echo_server/Makefile demos/echo_number/Makefile demos/echo_union/Makefile demos/samr_test/Makefile demos/access/Makefile perf/Makefile tools/Makefile )