## -*- autoconf -*- dnl This file is part of the KDE libraries/packages dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) dnl This file is free software; you can redistribute it and/or dnl modify it under the terms of the GNU Library General Public dnl License as published by the Free Software Foundation; either dnl version 2 of the License, or (at your option) any later version. 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. See the GNU dnl Library General Public License for more details. dnl You should have received a copy of the GNU Library General Public License dnl along with this library; see the file COPYING.LIB. If not, write to dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330, dnl Boston, MA 02111-1307, USA. dnl IMPORTANT NOTE: dnl Please do not modify this file unless you expect your modifications to be dnl carried into every other module in the repository. If you decide that you dnl really want to modify it, contact coolo@kde.org mentioning that you have dnl and that the modified file should be committed to every module. dnl dnl Single-module modifications are best placed in configure.in for kdelibs dnl and kdebase or configure.in.in if present. dnl ------------------------------------------------------------------------ dnl Find a file (or one of more files in a list of dirs) dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_FIND_FILE, [ $3=NO for i in $2; do for j in $1; do if test -r "$i/$j"; then $3=$i break 2 fi done done ]) dnl KDE_FIND_PATH(programm-name, variable-name, list of directories, dnl if-not-found, test-parameter) AC_DEFUN(KDE_FIND_PATH, [ AC_MSG_CHECKING([for $1]) if test -n "$$2"; then kde_cv_path="$$2"; else kde_cache=`echo $1 | sed 'y%./+-%__p_%'` AC_CACHE_VAL(kde_cv_path_$kde_cache, [ kde_cv_path="NONE" dirs="$3" kde_save_IFS=$IFS IFS=':' for dir in $PATH; do dirs="$dirs $dir" done IFS=$kde_save_IFS for dir in $dirs; do if test -x "$dir/$1"; then if test -n "$5" then evalstr="$dir/$1 $5 2>&1 " if eval $evalstr; then kde_cv_path="$dir/$1" break fi else kde_cv_path="$dir/$1" break fi fi done eval "kde_cv_path_$kde_cache=$kde_cv_path" ]) eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" fi if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then AC_MSG_RESULT(not found) $4 else AC_MSG_RESULT($kde_cv_path) $2=$kde_cv_path fi ]) AC_DEFUN(KDE_MOC_ERROR_MESSAGE, [ AC_MSG_ERROR([No Qt meta object compiler (moc) found! Please check whether you installed Qt correctly. You need to have a running moc binary. configure tried to run $ac_cv_path_moc and the test didn't succeed. If configure shouldn't have tried this one, set the environment variable MOC to the right one before running configure. ]) ]) AC_DEFUN(KDE_UIC_ERROR_MESSAGE, [ AC_MSG_WARN([No Qt ui compiler (uic) found! Please check whether you installed Qt correctly. You need to have a running uic binary. configure tried to run $ac_cv_path_uic and the test didn't succeed. If configure shouldn't have tried this one, set the environment variable UIC to the right one before running configure. ]) ]) dnl ------------------------------------------------------------------------ dnl Find the meta object compiler and the ui compiler in the PATH, dnl in $QTDIR/bin, and some more usual places dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_PATH_QT_MOC_UIC, [ qt_bindirs="" for dir in $kde_qt_dirs; do qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" done qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" if test ! "$ac_qt_bindir" = "NO"; then qt_bindirs="$ac_qt_bindir $qt_bindirs" fi KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC="" ; KDE_UIC_ERROR_MESSAGE]) if test -z "$UIC" ; then if test -z "$UIC_NOT_NEEDED" ; then exit 1 else UIC="echo uic not available: " fi fi AC_SUBST(MOC) AC_SUBST(UIC) ]) AC_DEFUN(KDE_1_CHECK_PATHS, [ KDE_1_CHECK_PATH_HEADERS KDE_TEST_RPATH= if test -n "$USE_RPATH"; then if test -n "$kde_libraries"; then KDE_TEST_RPATH="-R $kde_libraries" fi if test -n "$qt_libraries"; then KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" fi if test -n "$x_libraries"; then KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" fi KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" fi AC_MSG_CHECKING([for KDE libraries installed]) ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' if AC_TRY_EVAL(ac_link) && test -s conftest; then AC_MSG_RESULT(yes) else AC_MSG_ERROR([your system fails at linking a small KDE application! Check, if your compiler is installed correctly and if you have used the same compiler to compile Qt and kdelibs as you did use now. For more details about this problem, look at the end of config.log.]) fi if eval `KDEDIR= ./conftest 2>&5`; then kde_result=done else kde_result=problems fi KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log kde_have_all_paths=yes KDE_SET_PATHS($kde_result) ]) AC_DEFUN(KDE_SET_PATHS, [ kde_cv_all_paths="kde_have_all_paths=\"yes\" \ kde_htmldir=\"$kde_htmldir\" \ kde_appsdir=\"$kde_appsdir\" \ kde_icondir=\"$kde_icondir\" \ kde_sounddir=\"$kde_sounddir\" \ kde_datadir=\"$kde_datadir\" \ kde_locale=\"$kde_locale\" \ kde_cgidir=\"$kde_cgidir\" \ kde_confdir=\"$kde_confdir\" \ kde_mimedir=\"$kde_mimedir\" \ kde_toolbardir=\"$kde_toolbardir\" \ kde_wallpaperdir=\"$kde_wallpaperdir\" \ kde_templatesdir=\"$kde_templatesdir\" \ kde_bindir=\"$kde_bindir\" \ kde_servicesdir=\"$kde_servicesdir\" \ kde_servicetypesdir=\"$kde_servicetypesdir\" \ kde_moduledir=\"$kde_moduledir\" \ kde_result=$1" ]) AC_DEFUN(KDE_SET_DEFAULT_PATHS, [ if test "$1" = "default"; then if test -z "$kde_htmldir"; then kde_htmldir='\${prefix}/share/doc/HTML' fi if test -z "$kde_appsdir"; then kde_appsdir='\${prefix}/share/applnk' fi if test -z "$kde_icondir"; then kde_icondir='\${prefix}/share/icons' fi if test -z "$kde_sounddir"; then kde_sounddir='\${prefix}/share/sounds' fi if test -z "$kde_datadir"; then kde_datadir='\${prefix}/share/apps' fi if test -z "$kde_locale"; then kde_locale='\${prefix}/share/locale' fi if test -z "$kde_cgidir"; then kde_cgidir='\${exec_prefix}/cgi-bin' fi if test -z "$kde_confdir"; then kde_confdir='\${prefix}/share/config' fi if test -z "$kde_mimedir"; then kde_mimedir='\${prefix}/share/mimelnk' fi if test -z "$kde_toolbardir"; then kde_toolbardir='\${prefix}/share/toolbar' fi if test -z "$kde_wallpaperdir"; then kde_wallpaperdir='\${prefix}/share/wallpapers' fi if test -z "$kde_templatesdir"; then kde_templatesdir='\${prefix}/share/templates' fi if test -z "$kde_bindir"; then kde_bindir='\${exec_prefix}/bin' fi if test -z "$kde_servicesdir"; then kde_servicesdir='\${prefix}/share/services' fi if test -z "$kde_servicetypesdir"; then kde_servicetypesdir='\${prefix}/share/servicetypes' fi if test -z "$kde_moduledir"; then kde_moduledir='\${prefix}/lib/kde2' fi KDE_SET_PATHS(defaults) else if test $kde_qtver = 1; then AC_MSG_RESULT([compiling]) KDE_1_CHECK_PATHS else AC_MSG_ERROR([path checking not yet supported for KDE 2]) fi fi ]) AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS, [ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || test -z "$kde_icondir" || test -z "$kde_sounddir" || test -z "$kde_datadir" || test -z "$kde_locale" || test -z "$kde_cgidir" || test -z "$kde_confdir" || test -z "$kde_mimedir" || test -z "$kde_toolbardir" || test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || test -z "$kde_bindir" || test -z "$kde_servicesdir" || test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || test "$kde_have_all_paths" != "yes"; then kde_have_all_paths=no fi ]) AC_DEFUN(KDE_MISSING_PROG_ERROR, [ AC_MSG_ERROR([The important program $1 was not found! Please check whether you installed KDE correctly. ]) ]) AC_DEFUN(KDE_SUBST_PROGRAMS, [AC_REQUIRE([AC_CREATE_KFSSTND])dnl kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde2/bin /usr/kde/bin /usr/local/kde/bin" if test -n "$KDEDIRS"; then kde_save_IFS=$IFS IFS=: for dir in $KDEDIRS; do kde_default_bindirs="$dir/bin $kde_default_bindirs " done IFS=$kde_save_IFS fi kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs" KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)]) KDE_FIND_PATH(kdb2html, KDB2HTML, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kdb2html)]) KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)]) KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)]) DCOP_DEPENDENCIES='$(DCOPIDL)' AC_SUBST(DCOPIDL) AC_SUBST(DCOPIDL2CPP) AC_SUBST(DCOP_DEPENDENCIES) AC_SUBST(MCOPIDL) AC_SUBST(KDB2HTML) AC_SUBST(ARTSCCONFIG) AC_SUBST(KDECONFIG) if test -x "$KDECONFIG"; then # it can be "compiled" kde_libs_prefix=`$KDECONFIG --prefix` if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. This means it has been moved since you installed it. This won't work. Please recompile kdelibs for the new prefix. ]) fi kde_libs_htmldir=`$KDECONFIG --install html --expandvars` else kde_libs_prefix='$(prefix)' kde_libs_htmldir='$(kde_htmldir)' fi AC_SUBST(kde_libs_prefix) AC_SUBST(kde_libs_htmldir) ])dnl AC_DEFUN(AC_CREATE_KFSSTND, [ AC_REQUIRE([AC_CHECK_RPATH]) AC_MSG_CHECKING([for KDE paths]) kde_result="" kde_cached_paths=yes AC_CACHE_VAL(kde_cv_all_paths, [ KDE_SET_DEFAULT_PATHS($1) kde_cached_paths=no ]) eval "$kde_cv_all_paths" KDE_CHECK_PATHS_FOR_COMPLETENESS if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then # wrong values were cached, may be, we can set better ones kde_result= kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= kde_have_all_paths= KDE_SET_DEFAULT_PATHS($1) eval "$kde_cv_all_paths" KDE_CHECK_PATHS_FOR_COMPLETENESS kde_result="$kde_result (cache overridden)" fi if test "$kde_have_all_paths" = "no"; then AC_MSG_ERROR([configure could not run a little KDE program to test the environment. Since it had compiled and linked before, it must be a strange problem on your system. Look at config.log for details. If you are not able to fix this, look at http://www.kde.org/faq/installation.html or any www.kde.org mirror. (If you're using an egcs version on Linux, you may update binutils!) ]) else rm -f conftest* AC_MSG_RESULT($kde_result) fi bindir=$kde_bindir KDE_SUBST_PROGRAMS ]) AC_DEFUN(AC_SUBST_KFSSTND, [ AC_SUBST(kde_htmldir) AC_SUBST(kde_appsdir) AC_SUBST(kde_icondir) AC_SUBST(kde_sounddir) AC_SUBST(kde_datadir) AC_SUBST(kde_locale) AC_SUBST(kde_confdir) AC_SUBST(kde_mimedir) AC_SUBST(kde_wallpaperdir) AC_SUBST(kde_bindir) dnl for KDE 2 AC_SUBST(kde_templatesdir) AC_SUBST(kde_servicesdir) AC_SUBST(kde_servicetypesdir) AC_SUBST(kde_moduledir) if test "$kde_qtver" = 1; then kde_minidir="$kde_icondir/mini" else # for KDE 1 - this breaks KDE2 apps using minidir, but # that's the plan ;-/ kde_minidir="/dev/null" fi dnl AC_SUBST(kde_minidir) dnl AC_SUBST(kde_cgidir) dnl AC_SUBST(kde_toolbardir) ]) AC_DEFUN(KDE_MISC_TESTS, [ AC_LANG_C dnl Checks for libraries. AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for FreeBSD AC_SUBST(LIBCOMPAT) kde_have_crypt= AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ AC_MSG_WARN([you have no crypt in either libcrypt or libc. You should install libcrypt from another source or configure with PAM support]) kde_have_crypt=no ])) AC_SUBST(LIBCRYPT) if test $kde_have_crypt = yes; then AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) fi AC_CHECK_KSIZE_T AC_LANG_C AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) if test $ac_cv_lib_dnet_dnet_ntoa = no; then AC_CHECK_LIB(dnet_stub, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) fi AC_CHECK_FUNC(inet_ntoa) if test $ac_cv_func_inet_ntoa = no; then AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") fi AC_CHECK_FUNC(connect) if test $ac_cv_func_connect = no; then AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , $X_EXTRA_LIBS) fi AC_CHECK_FUNC(remove) if test $ac_cv_func_remove = no; then AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") fi # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. AC_CHECK_FUNC(shmat, , AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) # Solaris 2.6 needs -lresolv for res_init AC_CHECK_FUNC(res_init, , AC_CHECK_LIB(resolv, res_init, X_EXTRA_LIBS="$X_EXTRA_LIBS -lresolv")) LIBSOCKET="$X_EXTRA_LIBS" AC_SUBST(LIBSOCKET) AC_SUBST(X_EXTRA_LIBS) AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 AC_SUBST(LIBUCB) case $host in dnl this *is* LynxOS specific *-*-lynxos* ) AC_MSG_CHECKING([LynxOS header file wrappers]) [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] AC_MSG_RESULT(disabled) AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS ;; esac KDE_CHECK_TYPES KDE_CHECK_LIBDL ]) dnl ------------------------------------------------------------------------ dnl Find the header files and libraries for X-Windows. Extended the dnl macro AC_PATH_X dnl ------------------------------------------------------------------------ dnl AC_DEFUN(K_PATH_X, [ AC_REQUIRE([AC_PROG_CPP])dnl AC_REQUIRE([KDE_MISC_TESTS])dnl AC_MSG_CHECKING(for X) AC_LANG_SAVE AC_LANG_C AC_CACHE_VAL(kde_cv_have_x, [# One or both of the vars are not set, and there is no cached value. if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then kde_x_includes=NO else kde_x_includes=$x_includes fi if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then kde_x_libraries=NO else kde_x_libraries=$x_libraries fi # below we use the standard autoconf calls ac_x_libraries=$kde_x_libraries ac_x_includes=$kde_x_includes AC_PATH_X_DIRECT dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. dnl Unfortunately, if compiling with the N32 ABI, this is not the correct dnl location. The correct location is /usr/lib32 or an undefined value dnl (the linker is smart enough to pick the correct default library). dnl Things work just fine if you use just AC_PATH_X_DIRECT. case "$host" in mips-sgi-irix6*) ;; *) AC_PATH_X_XMKMF if test -z "$ac_x_includes"; then ac_x_includes="." fi if test -z "$ac_x_libraries"; then ac_x_libraries="/usr/lib" fi esac #from now on we use our own again # when the user already gave --x-includes, we ignore # what the standard autoconf macros told us. if test "$kde_x_includes" = NO; then kde_x_includes=$ac_x_includes fi # for --x-libraries too if test "$kde_x_libraries" = NO; then kde_x_libraries=$ac_x_libraries fi if test "$kde_x_includes" = NO; then AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) fi if test "$kde_x_libraries" = NO; then AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) fi # Record where we found X for the cache. kde_cv_have_x="have_x=yes \ kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" ])dnl eval "$kde_cv_have_x" if test "$have_x" != yes; then AC_MSG_RESULT($have_x) no_x=yes else AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) fi if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then X_INCLUDES="" x_includes="."; dnl better than nothing :- else x_includes=$kde_x_includes X_INCLUDES="-I$x_includes" fi if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then X_LDFLAGS="" x_libraries="/usr/lib"; dnl better than nothing :- else x_libraries=$kde_x_libraries X_LDFLAGS="-L$x_libraries" fi all_includes="$X_INCLUDES" all_libraries="$X_LDFLAGS" AC_SUBST(X_INCLUDES) AC_SUBST(X_LDFLAGS) AC_SUBST(x_libraries) AC_SUBST(x_includes) # Check for libraries that X11R6 Xt/Xaw programs need. ac_save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $X_LDFLAGS" # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to # check for ICE first), but we must link in the order -lSM -lICE or # we get undefined symbols. So assume we have SM if we have ICE. # These have to be linked with before -lX11, unlike the other # libraries we check for below, so use a different variable. # --interran@uluru.Stanford.EDU, kb@cs.umb.edu. AC_CHECK_LIB(ICE, IceConnectionNumber, [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) AC_SUBST(LIBSM) LDFLAGS="$ac_save_LDFLAGS" AC_SUBST(X_PRE_LIBS) LIB_X11='-lX11 $(LIBSOCKET)' AC_SUBST(LIB_X11) AC_MSG_CHECKING(for libXext) AC_CACHE_VAL(kde_cv_have_libXext, [ kde_ldflags_safe="$LDFLAGS" kde_libs_safe="$LIBS" LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" LIBS="-lXext -lX11 $LIBSOCKET" AC_TRY_LINK([ #include ], [ printf("hello Xext\n"); ], kde_cv_have_libXext=yes, kde_cv_have_libXext=no ) LDFLAGS=$kde_ldflags_safe LIBS=$kde_libs_safe ]) AC_MSG_RESULT($kde_cv_have_libXext) if test "$kde_cv_have_libXext" = "no"; then AC_MSG_ERROR([We need a working libXext to proceed. Since configure can't find it itself, we stop here assuming that make wouldn't find them either.]) fi ]) AC_LANG_RESTORE ]) AC_DEFUN(KDE_PRINT_QT_PROGRAM, [ AC_REQUIRE([KDE_USE_QT]) cat > conftest.$ac_ext < #include #include #include EOF if test "$kde_qtver" = "2"; then cat >> conftest.$ac_ext < #include #include EOF if test $kde_qtsubver -gt 0; then cat >> conftest.$ac_ext < EOF fi fi echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC cat conftest.$ac_ext >&AC_FD_CC fi rm -f conftest* CXXFLAGS="$ac_cxxflags_safe" LDFLAGS="$ac_ldflags_safe" LIBS="$ac_libs_safe" LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" export LD_LIBRARY_PATH LIBRARY_PATH="$ac_LIBRARY_PATH" export LIBRARY_PATH AC_LANG_RESTORE ]) if test "$kde_cv_qt_direct" = "yes"; then AC_MSG_RESULT(yes) $1 else AC_MSG_RESULT(no) $2 fi ]) dnl ------------------------------------------------------------------------ dnl Try to find the Qt headers and libraries. dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_PATH_QT_1_3, [ AC_REQUIRE([K_PATH_X]) AC_REQUIRE([KDE_USE_QT]) dnl ------------------------------------------------------------------------ dnl Add configure flag to enable linking to MT version of Qt library. dnl ------------------------------------------------------------------------ AC_ARG_ENABLE( mt, [ --enable-mt link to threaded Qt (experimental)], kde_use_qt_mt=$enableval, kde_use_qt_mt=no ) USING_QT_MT="" dnl ------------------------------------------------------------------------ dnl If we got --enable-qt-mt then adjust some vars for the host. dnl ------------------------------------------------------------------------ if test "x$kde_use_qt_mt" = "xyes"; then case $host in *-*-linux-*) if test "x$GCC" = "xyes"; then CPPFLAGS="$CPPFLAGS -DQT_THREAD_SUPPORT -pthread" X_EXTRA_LIBS="$X_EXTRA_LIBS -pthread" else AC_MSG_WARN([Compiler is not gcc. MT support disabled.]) fi ;; *) AC_MSG_WARN([MT not yet supported on $host - disabled.]) ;; esac fi kde_qt_was_given=yes dnl ------------------------------------------------------------------------ dnl If we haven't been told how to link to Qt, we work it out for ourselves. dnl ------------------------------------------------------------------------ if test -z "$LIBQT_GLOB"; then LIBQT_GLOB="libqt.*" fi if test -z "$LIBQT"; then LIBQT="-lqt" kde_int_qt="-lqt" dnl ------------------------------------------------------------------------ dnl If we got --enable-qt-mt then adjust the Qt library name for the host. dnl ------------------------------------------------------------------------ if test "x$kde_use_qt_mt" = "xyes"; then case $host in *-*-linux-*) if test "x$GCC" = "xyes"; then LIBQT="-lqt-mt" kde_int_qt="-lqt-mt" LIBQT_GLOB="libqt-mt.*" USING_QT_MT="using -mt" fi ;; esac fi kde_qt_was_given=no else kde_int_qt="$LIBQT" fi if test $kde_qtver = 2; then AC_REQUIRE([AC_FIND_PNG]) AC_REQUIRE([AC_FIND_JPEG]) LIBQT="$LIBQT $LIBPNG $LIBJPEG" fi AC_MSG_CHECKING([for Qt]) LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO qt_libraries="" qt_includes="" AC_ARG_WITH(qt-dir, [ --with-qt-dir=DIR where the root of Qt is installed ], [ ac_qt_includes="$withval"/include ac_qt_libraries="$withval"/lib ac_qt_bindir="$withval"/bin ]) AC_ARG_WITH(qt-includes, [ --with-qt-includes=DIR where the Qt includes are. ], [ ac_qt_includes="$withval" ]) kde_qt_libs_given=no AC_ARG_WITH(qt-libraries, [ --with-qt-libraries=DIR where the Qt library is installed.], [ ac_qt_libraries="$withval" kde_qt_libs_given=yes ]) AC_CACHE_VAL(ac_cv_have_qt, [#try to guess Qt locations qt_incdirs="" for dir in $kde_qt_dirs; do qt_incdirs="$qt_incdirs $dir/include $dir" done qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt $x_includes" if test ! "$ac_qt_includes" = "NO"; then qt_incdirs="$ac_qt_includes $qt_incdirs" fi if test "$kde_qtver" = "2"; then kde_qt_header=qstyle.h else kde_qt_header=qglobal.h fi AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) ac_qt_includes="$qt_incdir" qt_libdirs="" for dir in $kde_qt_dirs; do qt_libdirs="$qt_libdirs $dir/lib $dir" done qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" if test ! "$ac_qt_libraries" = "NO"; then qt_libdir=$ac_qt_libraries else qt_libdirs="$ac_qt_libraries $qt_libdirs" # if the Qt was given, the chance is too big that libqt.* doesn't exist qt_libdir=NONE for dir in $qt_libdirs; do try="ls -1 $dir/${LIBQT_GLOB}" if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi done fi ac_qt_libraries="$qt_libdir" AC_LANG_SAVE AC_LANG_CPLUSPLUS ac_cxxflags_safe="$CXXFLAGS" ac_ldflags_safe="$LDFLAGS" ac_libs_safe="$LIBS" CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS" LIBS="$LIBS $LIBQT" KDE_PRINT_QT_PROGRAM if AC_TRY_EVAL(ac_link) && test -s conftest; then rm -f conftest* else echo "configure: failed program was:" >&AC_FD_CC cat conftest.$ac_ext >&AC_FD_CC ac_qt_libraries="NO" fi rm -f conftest* CXXFLAGS="$ac_cxxflags_safe" LDFLAGS="$ac_ldflags_safe" LIBS="$ac_libs_safe" AC_LANG_RESTORE if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then ac_cv_have_qt="have_qt=no" ac_qt_notfound="" if test "$ac_qt_includes" = NO; then if test "$ac_qt_libraries" = NO; then ac_qt_notfound="(headers and libraries)"; else ac_qt_notfound="(headers)"; fi else ac_qt_notfound="(libraries)"; fi AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! For more details about this problem, look at the end of config.log.]) else have_qt="yes" fi ]) eval "$ac_cv_have_qt" if test "$have_qt" != yes; then AC_MSG_RESULT([$have_qt]); else ac_cv_have_qt="have_qt=yes \ ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) qt_libraries="$ac_qt_libraries" qt_includes="$ac_qt_includes" fi if test ! "$kde_qt_libs_given" = "yes"; then KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) fi AC_SUBST(qt_libraries) AC_SUBST(qt_includes) if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then QT_INCLUDES=""; else QT_INCLUDES="-I$qt_includes" all_includes="$QT_INCLUDES $all_includes" fi if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then QT_LDFLAGS="" else QT_LDFLAGS="-L$qt_libraries" all_libraries="$all_libraries $QT_LDFLAGS" fi AC_SUBST(QT_INCLUDES) AC_SUBST(QT_LDFLAGS) AC_PATH_QT_MOC_UIC LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)' AC_SUBST(LIB_QT) ]) AC_DEFUN(AC_PATH_QT, [ AC_PATH_QT_1_3 ]) AC_DEFUN(KDE_CHECK_FINAL, [ AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)], kde_use_final=$enableval, kde_use_final=no) KDE_COMPILER_REPO if test "x$kde_use_final" = "xyes"; then KDE_USE_FINAL_TRUE="" KDE_USE_FINAL_FALSE="#" else KDE_USE_FINAL_TRUE="#" KDE_USE_FINAL_FALSE="" fi AC_SUBST(KDE_USE_FINAL_TRUE) AC_SUBST(KDE_USE_FINAL_FALSE) AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation], kde_use_closure=$enableval, kde_use_closure=yes) if test "x$kde_use_closure" = "xyes"; then KDE_USE_CLOSURE_TRUE="" KDE_USE_CLOSURE_FALSE="#" # CXXFLAGS="$CXXFLAGS $REPO" else KDE_USE_CLOSURE_TRUE="#" KDE_USE_CLOSURE_FALSE="" fi AC_SUBST(KDE_USE_CLOSURE_TRUE) AC_SUBST(KDE_USE_CLOSURE_FALSE) ]) dnl ------------------------------------------------------------------------ dnl Now, the same with KDE dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) dnl and $(kde_includes) will be the kdehdrlocation (if needed) dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_BASE_PATH_KDE, [ AC_PREREQ([2.13]) AC_REQUIRE([AC_PATH_QT])dnl AC_CHECK_RPATH AC_MSG_CHECKING([for KDE]) if test "${prefix}" != NONE; then kde_includes=${prefix}/include ac_kde_includes=$prefix/include if test "${exec_prefix}" != NONE; then kde_libraries=${exec_prefix}/lib ac_kde_libraries=$exec_prefix/lib else kde_libraries=${prefix}/lib ac_kde_libraries=$prefix/lib fi else ac_kde_includes= ac_kde_libraries= kde_libraries="" kde_includes="" fi AC_CACHE_VAL(ac_cv_have_kde, [#try to guess kde locations if test "$kde_qtver" = 1; then kde_check_header="ksock.h" kde_check_lib="libkdecore.la" else kde_check_header="ksharedptr.h" kde_check_lib="libkio.la" fi if test -z "$1"; then kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/kde/include /usr/include/kde /usr/include /opt/kde2/include /opt/kde/include $x_includes $qt_includes" test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" kde_incdirs="$ac_kde_includes $kde_incdirs" AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) ac_kde_includes="$kde_incdir" if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then AC_MSG_ERROR([ in the prefix, you've chosen, are no KDE headers installed. This will fail. So, check this please and use another prefix!]) fi kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib /usr/X11R6/lib /opt/kde2/lib /opt/kde/lib /usr/X11R6/kde/lib" test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs" kde_libdirs="$ac_kde_libraries $kde_libdirs" AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) ac_kde_libraries="$kde_libdir" if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then AC_MSG_ERROR([ in the prefix, you've chosen, are no KDE libraries installed. This will fail. So, check this please and use another prefix!]) fi ac_kde_libraries="$kde_libdir" if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then ac_cv_have_kde="have_kde=no" else ac_cv_have_kde="have_kde=yes \ ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" fi else dnl test -z $1 ac_cv_have_kde="have_kde=no" fi ])dnl eval "$ac_cv_have_kde" if test "$have_kde" != "yes"; then if test "${prefix}" = NONE; then ac_kde_prefix="$ac_default_prefix" else ac_kde_prefix="$prefix" fi if test "$exec_prefix" = NONE; then ac_kde_exec_prefix="$ac_kde_prefix" AC_MSG_RESULT([will be installed in $ac_kde_prefix]) else ac_kde_exec_prefix="$exec_prefix" AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) fi kde_libraries="${ac_kde_exec_prefix}/lib" kde_includes=${ac_kde_prefix}/include else ac_cv_have_kde="have_kde=yes \ ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) kde_libraries="$ac_kde_libraries" kde_includes="$ac_kde_includes" fi AC_SUBST(kde_libraries) AC_SUBST(kde_includes) if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" ; then KDE_INCLUDES="" else KDE_INCLUDES="-I$kde_includes" all_includes="$KDE_INCLUDES $all_includes" fi KDE_LDFLAGS="-L$kde_libraries" if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then all_libraries="$all_libraries $KDE_LDFLAGS" fi AC_SUBST(KDE_LDFLAGS) AC_SUBST(KDE_INCLUDES) AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) all_libraries="$all_libraries $USER_LDFLAGS" all_includes="$all_includes $USER_INCLUDES" AC_SUBST(all_includes) AC_SUBST(all_libraries) AC_SUBST(AUTODIRS) ]) AC_DEFUN(KDE_CHECK_EXTRA_LIBS, [ AC_MSG_CHECKING(for extra includes) AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR adds non standard include paths], kde_use_extra_includes="$withval", kde_use_extra_includes=NONE ) kde_extra_includes= if test -n "$kde_use_extra_includes" && \ test "$kde_use_extra_includes" != "NONE"; then ac_save_ifs=$IFS IFS=':' for dir in $kde_use_extra_includes; do kde_extra_includes="$kde_extra_includes $dir" USER_INCLUDES="$USER_INCLUDES -I$dir" done IFS=$ac_save_ifs kde_use_extra_includes="added" else kde_use_extra_includes="no" fi AC_SUBST(USER_INCLUDES) AC_MSG_RESULT($kde_use_extra_includes) kde_extra_libs= AC_MSG_CHECKING(for extra libs) AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], kde_use_extra_libs=$withval, kde_use_extra_libs=NONE ) if test -n "$kde_use_extra_libs" && \ test "$kde_use_extra_libs" != "NONE"; then ac_save_ifs=$IFS IFS=':' for dir in $kde_use_extra_libs; do kde_extra_libs="$kde_extra_libs $dir" KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" USER_LDFLAGS="$USER_LDFLAGS -L$dir" done IFS=$ac_save_ifs kde_use_extra_libs="added" else kde_use_extra_libs="no" fi AC_SUBST(USER_LDFLAGS) AC_MSG_RESULT($kde_use_extra_libs) ]) AC_DEFUN(KDE_1_CHECK_PATH_HEADERS, [ AC_MSG_CHECKING([for KDE headers installed]) AC_LANG_SAVE AC_LANG_CPLUSPLUS cat > conftest.$ac_ext < #include "confdefs.h" #include int main() { printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); printf("kde_wallpaperdir=\\"%s\\"\n", KApplication::kde_wallpaperdir().data()); printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); printf("kde_moduledir=\\"/tmp/dummy\\"\n"); return 0; } EOF ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext' if AC_TRY_EVAL(ac_compile); then AC_MSG_RESULT(yes) else AC_MSG_ERROR([your system is not able to compile a small KDE application! Check, if you installed the KDE header files correctly. For more details about this problem, look at the end of config.log.]) fi AC_LANG_RESTORE ]) AC_DEFUN(KDE_CHECK_KDEQTADDON, [ AC_MSG_CHECKING(for kde-qt-addon) AC_CACHE_VAL(kde_cv_have_kdeqtaddon, [ kde_ldflags_safe="$LDFLAGS" kde_libs_safe="$LIBS" kde_cxxflags_safe="$CXXFLAGS" LIBS="-lkde-qt-addon $LIBQT $LIBS" CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" AC_TRY_LINK([ #include ], [ QDomDocument doc; ], kde_cv_have_kdeqtaddon=yes, kde_cv_have_kdeqtaddon=no ) LDFLAGS=$kde_ldflags_safe LIBS=$kde_libs_safe kde_cxxflags_safe="$CXXFLAGS" ]) AC_MSG_RESULT($kde_cv_have_kdeqtaddon) if test "$kde_cv_have_kdeqtaddon" = "no"; then AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. It is a separate package (and CVS module) named kde-qt-addon.]) fi ]) AC_DEFUN(KDE_CHECK_KIMGIO, [ AC_REQUIRE([AC_BASE_PATH_KDE]) AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) AC_REQUIRE([AC_FIND_TIFF]) AC_REQUIRE([AC_FIND_JPEG]) AC_REQUIRE([AC_FIND_PNG]) AC_REQUIRE([KDE_CREATE_LIBS_ALIASES]) if test "$1" = "existance"; then AC_LANG_SAVE AC_LANG_CPLUSPLUS kde_save_LIBS="$LIBS" LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm" AC_CHECK_LIB(kimgio, kimgioRegister, [ LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no) LIBS="$kde_save_LIBS" AC_LANG_RESTORE else LIBKIMGIO_EXISTS=yes fi if test "$LIBKIMGIO_EXISTS" = "yes"; then LIB_KIMGIO='-lkimgio' else LIB_KIMGIO='' fi AC_SUBST(LIB_KIMGIO) ]) AC_DEFUN(KDE_CREATE_LIBS_ALIASES, [ AC_REQUIRE([KDE_MISC_TESTS]) AC_REQUIRE([KDE_CHECK_LIBDL]) AC_REQUIRE([K_PATH_X]) if test $kde_qtver = 2; then LIB_KDECORE='-lkdecore' AC_SUBST(LIB_KDECORE) LIB_KDEUI='-lkdeui' AC_SUBST(LIB_KDEUI) LIB_KFORMULA='-lkformula' AC_SUBST(LIB_KFORMULA) LIB_KIO='-lkio' AC_SUBST(LIB_KIO) LIB_KSYCOCA='-lksycoca' AC_SUBST(LIB_KSYCOCA) LIB_SMB='-lsmb' AC_SUBST(LIB_SMB) LIB_KFILE='-lkfile' AC_SUBST(LIB_KFILE) LIB_KAB='-lkab' AC_SUBST(LIB_KAB) LIB_KHTML='-lkhtml' AC_SUBST(LIB_KHTML) LIB_KSPELL='-lkspell' AC_SUBST(LIB_KSPELL) LIB_KPARTS='-lkparts' AC_SUBST(LIB_KPARTS) LIB_KWRITE='-lkwrite' AC_SUBST(LIB_KWRITE) else LIB_KDECORE='-lkdecore -lXext $(LIB_QT)' AC_SUBST(LIB_KDECORE) LIB_KDEUI='-lkdeui $(LIB_KDECORE)' AC_SUBST(LIB_KDEUI) LIB_KFM='-lkfm $(LIB_KDECORE)' AC_SUBST(LIB_KFM) LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)' AC_SUBST(LIB_KFILE) LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)' AC_SUBST(LIB_KAB) fi ]) AC_DEFUN(AC_PATH_KDE, [ AC_BASE_PATH_KDE AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install], [ if test "$enableval" = "no"; then ac_use_path_checking="default" else ac_use_path_checking="" fi ], [ if test "$kde_qtver" = 1; then ac_use_path_checking="" else ac_use_path_checking="default" fi ] ) AC_CREATE_KFSSTND($ac_use_path_checking) AC_SUBST_KFSSTND KDE_CREATE_LIBS_ALIASES ]) dnl obsolete AC_DEFUN(AC_CHECK_SETENV, [ AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl AC_CHECK_FUNCS([setenv unsetenv]) ]) AC_DEFUN(AC_CHECK_GETDOMAINNAME, [ AC_MSG_CHECKING(for getdomainname) AC_CACHE_VAL(ac_cv_func_getdomainname, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS save_CXXFLAGS="$CXXFLAGS" kde_safe_LIBS="$LIBS" LIBS="$LIBS $X_EXTRA_LIBS" if test "$GCC" = "yes"; then CXXFLAGS="$CXXFLAGS -pedantic-errors" fi AC_TRY_COMPILE([ #include #include ], [ char buffer[200]; getdomainname(buffer, 200); ], ac_cv_func_getdomainname=yes, ac_cv_func_getdomainname=no) CXXFLAGS="$save_CXXFLAGS" LIBS=$kde_safe_LIBS AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_func_getdomainname) AC_MSG_CHECKING([if getdomainname needs custom prototype]) AC_CACHE_VAL(ac_cv_proto_getdomainname, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then ac_cv_proto_getdomainname=no else kde_safe_libs=$LIBS LIBS="$LIBS $X_EXTRA_LIBS" AC_TRY_LINK([ #include #include extern "C" int getdomainname (char *, int); ], [ char buffer[200]; getdomainname(buffer, 200); ], ac_cv_func_getdomainname=yes ac_cv_proto_getdomainname=yes, AC_MSG_RESULT([fatal error]) AC_MSG_ERROR([getdomainname unavailable])) fi LIBS=$kde_safe_libs AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_proto_getdomainname) if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname]) fi if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1, [Define if you have getdomainname prototype]) fi ]) AC_DEFUN(AC_CHECK_GETHOSTNAME, [ AC_MSG_CHECKING([for gethostname]) AC_CACHE_VAL(ac_cv_func_gethostname, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS save_CXXFLAGS="$CXXFLAGS" if test "$GCC" = "yes"; then CXXFLAGS="$CXXFLAGS -pedantic-errors" fi AC_TRY_LINK([ #include #include ], [ char buffer[200]; gethostname(buffer, 200); ], ac_cv_func_gethostname=yes, ac_cv_func_gethostname=no) CXXFLAGS="$save_CXXFLAGS" AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_func_gethostname) AC_MSG_CHECKING([if gethostname needs custom prototype]) AC_CACHE_VAL(ac_cv_proto_gethostname, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then ac_cv_proto_gethostname=no else AC_TRY_LINK([ #include #include extern "C" int gethostname (char *, int); ], [ char buffer[200]; gethostname(buffer, 200); ], ac_cv_func_gethostname=yes ac_cv_proto_gethostname=yes, AC_MSG_RESULT([fatal error]) AC_MSG_ERROR(gethostname unavailable)) fi AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_proto_gethostname) if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1, [Define if you have gethostname prototype]) fi if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have getdomainname]) fi ]) AC_DEFUN(AC_CHECK_USLEEP, [ AC_MSG_CHECKING([for usleep]) AC_CACHE_VAL(ac_cv_func_usleep, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS ac_libs_safe="$LIBS" LIBS="$LIBS $LIBUCB" AC_TRY_LINK([ #include #include ], [ usleep(200); ], ac_cv_func_usleep=yes, ac_cv_func_usleep=no) LIBS="$ac_libs_safe" AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_func_usleep) if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function]) fi ]) AC_DEFUN(AC_CHECK_RANDOM, [ AC_MSG_CHECKING([for random]) AC_CACHE_VAL(ac_cv_func_random, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS ac_libs_safe="$LIBS" LIBS="$LIBS $LIBUCB" AC_TRY_LINK([ #include ], [ random(); ], ac_cv_func_random=yes, ac_cv_func_random=no) LIBS="$ac_libs_safe" AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_func_random) if eval "test \"`echo $ac_cv_func_random`\" = yes"; then AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random]) fi ]) AC_DEFUN(AC_FIND_GIF, [AC_MSG_CHECKING([for giflib]) AC_CACHE_VAL(ac_cv_lib_gif, [ac_save_LIBS="$LIBS" LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" AC_TRY_LINK(dnl [ #ifdef __cplusplus extern "C" { #endif int GifLastError(void); #ifdef __cplusplus } #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ ], [return GifLastError();], eval "ac_cv_lib_gif=yes", eval "ac_cv_lib_gif=no") LIBS="$ac_save_LIBS" ])dnl if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then AC_MSG_RESULT(yes) AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) else AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) fi ]) AC_DEFUN(KDE_FIND_JPEG_HELPER, [ AC_MSG_CHECKING([for libjpeg$2]) AC_CACHE_VAL(ac_cv_lib_jpeg_$1, [ AC_LANG_C ac_save_LIBS="$LIBS" LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" ac_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" AC_TRY_LINK( [/* Override any gcc2 internal prototype to avoid an error. */ struct jpeg_decompress_struct; typedef struct jpeg_decompress_struct * j_decompress_ptr; typedef int size_t; #ifdef __cplusplus extern "C" { #endif void jpeg_CreateDecompress(j_decompress_ptr cinfo, int version, size_t structsize); #ifdef __cplusplus } #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ ], [jpeg_CreateDecompress(0L, 0, 0);], eval "ac_cv_lib_jpeg_$1=-ljpeg$2", eval "ac_cv_lib_jpeg_$1=no") LIBS="$ac_save_LIBS" CFLAGS="$ac_save_CFLAGS" ]) if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then LIBJPEG="$ac_cv_lib_jpeg_$1" AC_MSG_RESULT($ac_cv_lib_jpeg_$1) else AC_MSG_RESULT(no) $3 fi ]) AC_DEFUN(AC_FIND_JPEG, [ dnl first look for libraries KDE_FIND_JPEG_HELPER(6b, 6b, KDE_FIND_JPEG_HELPER(normal, [], [ dnl what to do, if the normal way fails: if test -f "$kde_libraries/libjpeg.so"; then test -f ./libjpegkde.so || $LN_S $kde_libraries/libjpeg.so ./libjpegkde.so ac_cv_lib_jpeg="-L\${topdir} -ljpegkde" else if test -f "$kde_libraries/libjpeg.sl"; then test -f ./libjpegkde.sl ||$LN_S $kde_libraries/libjpeg.sl ./libjpegkde.sl ac_cv_lib_jpeg="-L\${topdir} -ljpegkde" else if test -f "$kde_libraries/libjpeg.a"; then test -f ./libjpegkde.a || $LN_S $kde_libraries/libjpeg.a ./libjpegkde.a ac_cv_lib_jpeg="-L\${topdir} -ljpegkde" else ac_cv_lib_jpeg= fi fi fi LIBJPEG=$ac_cv_lib_jpeg ])) dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h dnl requires system dependent includes loaded before it) jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes" AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) test "x$jpeg_incdir" = xNO && jpeg_incdir= dnl if headers _and_ libraries are missing, this is no error, and we dnl continue with a warning (the user will get no jpeg support in khtml) dnl if only one is missing, it means a configuration error, but we still dnl only warn if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) else if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then AC_MSG_WARN([ There is an installation error in jpeg support. You seem to have only one of either the headers _or_ the libraries installed. You may need to either provide correct --with-extra-... options, or the development package of libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ Disabling JPEG support. ]) else AC_MSG_WARN([libjpeg not found. disable JPEG support.]) fi jpeg_incdir= LIBJPEG= fi AC_SUBST(LIBJPEG) ]) AC_DEFUN(AC_FIND_ZLIB, [ AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) AC_MSG_CHECKING([for libz]) AC_CACHE_VAL(ac_cv_lib_z, [ AC_LANG_C kde_save_LIBS="$LIBS" LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" kde_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" AC_TRY_LINK(dnl [ #include ], [return (zlibVersion() == ZLIB_VERSION); ], eval "ac_cv_lib_z='-lz'", eval "ac_cv_lib_z=no") LIBS="$kde_save_LIBS" CFLAGS="$kde_save_CFLAGS" ])dnl if test ! "$ac_cv_lib_z" = no; then AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) LIBZ="$ac_cv_lib_z" AC_SUBST(LIBZ) AC_MSG_RESULT($ac_cv_lib_z) else AC_MSG_ERROR(not found. Check your installation and look into config.log) LIBZ="" AC_SUBST(LIBZ) fi ]) AC_DEFUN(KDE_TRY_TIFFLIB, [ AC_MSG_CHECKING([for libtiff $1]) AC_CACHE_VAL(kde_cv_libtiff_$1, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS kde_save_LIBS="$LIBS" LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" kde_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" AC_TRY_LINK(dnl [ #include ], [return (TIFFOpen( "", "r") == 0); ], [ kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" ], [ kde_cv_libtiff_$1=no ]) LIBS="$kde_save_LIBS" CXXFLAGS="$kde_save_CXXFLAGS" AC_LANG_RESTORE ]) if test "$kde_cv_libtiff_$1" = "no"; then AC_MSG_RESULT(no) LIBTIFF="" $3 else LIBTIFF="$kde_cv_libtiff_$1" AC_MSG_RESULT(yes) AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) $2 fi ]) AC_DEFUN(AC_FIND_TIFF, [ AC_REQUIRE([K_PATH_X]) AC_REQUIRE([AC_FIND_ZLIB]) AC_REQUIRE([AC_FIND_JPEG]) AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) KDE_TRY_TIFFLIB(tiff, [], KDE_TRY_TIFFLIB(tiff34)) AC_SUBST(LIBTIFF) ]) AC_DEFUN(AC_FIND_PNG, [ AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) AC_REQUIRE([AC_FIND_ZLIB]) AC_MSG_CHECKING([for libpng]) AC_CACHE_VAL(ac_cv_lib_png, [ kde_save_LIBS="$LIBS" LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" kde_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" AC_LANG_C AC_TRY_LINK(dnl [ #include ], [ png_structp png_ptr = png_create_read_struct( /* image ptr */ PNG_LIBPNG_VER_STRING, 0, 0, 0 ); return( png_ptr != 0 ); ], eval "ac_cv_lib_png='-lpng $LIBZ -lm'", eval "ac_cv_lib_png=no" ) LIBS="$kde_save_LIBS" CFLAGS="$kde_save_CFLAGS" ])dnl if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) LIBPNG="$ac_cv_lib_png" AC_SUBST(LIBPNG) AC_MSG_RESULT($ac_cv_lib_png) else AC_MSG_RESULT(no) LIBPNG="" AC_SUBST(LIBPNG) fi ]) AC_DEFUN(AC_CHECK_BOOL, [ AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) ]) AC_DEFUN(AC_CHECK_GNU_EXTENSIONS, [ AC_MSG_CHECKING(if you need GNU extensions) AC_CACHE_VAL(ac_cv_gnu_extensions, [ cat > conftest.c << EOF #include #ifdef __GNU_LIBRARY__ yes #endif EOF if (eval "$ac_cpp conftest.c") 2>&5 | egrep "yes" >/dev/null 2>&1; then rm -rf conftest* ac_cv_gnu_extensions=yes else ac_cv_gnu_extensions=no fi ]) AC_MSG_RESULT($ac_cv_gnu_extensions) if test "$ac_cv_gnu_extensions" = "yes"; then AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) fi ]) AC_DEFUN(KDE_CHECK_COMPILER_FLAG, [ AC_REQUIRE([AC_CHECK_COMPILERS]) AC_MSG_CHECKING(whether $CXX supports -$1) kde_cache=`echo $1 | sed 'y%.=/+-%___p_%'` AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, [ echo 'int main() { return 0; }' >conftest.cc eval "kde_cv_prog_cxx_$kde_cache=no" if test -z "`$CXX -$1 -c conftest.cc 2>&1`"; then if test -z "`$CXX -$1 -o conftest conftest.o 2>&1`"; then eval "kde_cv_prog_cxx_$kde_cache=yes" fi fi rm -f conftest* ]) if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then AC_MSG_RESULT(yes) : $2 else AC_MSG_RESULT(no) : $3 fi ]) AC_DEFUN(KDE_PROG_CC_PG, [ AC_CACHE_CHECK(whether ${CC-cc} accepts -pg, kde_cv_prog_cc_pg, [echo 'void f(){}' > conftest.c if test -z "`${CC-cc} -pg -c conftest.c 2>&1`"; then kde_cv_prog_cc_pg=yes else kde_cv_prog_cc_pg=no fi rm -f conftest* ])]) AC_DEFUN(KDE_PROG_CXX_PG, [ AC_CACHE_CHECK(whether ${CXX-g++} accepts -pg, kde_cv_prog_cxx_pg, [echo 'void f(){}' > conftest.cc if test -z "`${CXX-g++} -pg -c conftest.cc 2>&1`"; then kde_cv_prog_cxx_pg=yes else kde_cv_prog_cxx_pg=no fi rm -f conftest* ])]) dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) dnl it's all white-space separated AC_DEFUN(AC_REMOVE_FORBIDDEN, [ __val=$$1 __forbid=" $2 " if test -n "$__val"; then __new="" ac_save_IFS=$IFS IFS=" " for i in $__val; do case "$__forbid" in *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; *) # Careful to not add spaces, where there were none, because otherwise # libtool gets confused, if we change e.g. CXX if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; esac done IFS=$ac_save_IFS $1=$__new fi ]) dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given AC_DEFUN(AC_VALIDIFY_CXXFLAGS, [dnl AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) ]) AC_DEFUN(AC_CHECK_COMPILERS, [ dnl this is somehow a fat lie, but prevents other macros from double checking AC_PROVIDE([AC_PROG_CC]) AC_PROVIDE([AC_PROG_CPP]) AC_PROVIDE([AC_PROG_CXX]) AC_PROVIDE([AC_PROG_CXXCPP]) AC_ARG_ENABLE(debug,[ --enable-debug enables debug symbols [default=no]], [ if test $enableval = "no"; dnl then kde_use_debug_code="no" kde_use_debug_define=yes else kde_use_debug_code="yes" kde_use_debug_define=no fi ], [kde_use_debug_code="no" kde_use_debug_define=no ]) dnl Just for configure --help AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[]) AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)], [ if test $enableval = "no"; then kde_use_strict_options="no" else kde_use_strict_options="yes" fi ], [kde_use_strict_options="no"]) AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]], [kde_use_profiling=$enableval], [kde_use_profiling="no"] ) dnl this was AC_PROG_CC. I had to include it manualy, since I had to patch it AC_MSG_CHECKING(for a C-Compiler) dnl if there is one, print out. if not, don't matter AC_MSG_RESULT($CC) if test -z "$CC"; then AC_CHECK_PROG(CC, gcc, gcc) fi if test -z "$CC"; then AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc) fi if test -z "$CC"; then AC_CHECK_PROG(CC, xlc, xlc) fi test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH]) AC_PROG_CC_WORKS AC_PROG_CC_GNU if test $ac_cv_prog_gcc = yes; then GCC=yes else GCC= fi USER_CFLAGS=$CFLAGS CFLAGS= if test -z "$CFLAGS"; then if test "$kde_use_debug_code" = "yes"; then AC_PROG_CC_G if test $ac_cv_prog_cc_g = yes; then CFLAGS="-g" case $host in *-*-linux-gnu) CFLAGS="$CFLAGS -ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE -D_BSD_SOURCE" ;; esac fi else if test "$GCC" = "yes"; then CFLAGS="-O2" else CFLAGS="" fi if test "$kde_use_debug_define" = "yes"; then CFLAGS="$CFLAGS -DNDEBUG" dnl damn buggy compilers :-( dnl if test "$GCC" = "yes"; then dnl CFLAGS="$CFLAGS -fomit-frame-pointer" dnl CXXFLAGS="$CXXFLAGS -fomit-frame-pointer" dnl fi fi fi if test "$kde_use_profiling" = yes; then KDE_PROG_CC_PG if test "$kde_cv_prog_cc_pg" = yes; then CFLAGS="$CFLAGS -pg" fi fi if test "$GCC" = "yes"; then CFLAGS="$CFLAGS" if test "$kde_use_strict_options" = "yes"; then CFLAGS="$CFLAGS -W -Wall -ansi -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings" fi fi fi case "$host" in *-*-sysv4.2uw*) CFLAGS="$CFLAGS -D_UNIXWARE";; *-*-sysv5uw7*) CFLAGS="$CFLAGS -D_UNIXWARE7";; esac if test -n "$USER_CFLAGS"; then CFLAGS="$CFLAGS $USER_CFLAGS" fi if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then LDFLAGS="" fi dnl this is AC_PROG_CPP. I had to include it here, since autoconf checks dnl dependecies between AC_PROG_CPP and AC_PROG_CC (or is it automake?) AC_MSG_CHECKING(how to run the C preprocessor) # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then AC_CACHE_VAL(ac_cv_prog_CPP, [ # This must be in double quotes, not single quotes, because CPP may get # substituted into the Makefile and "${CC-cc}" will confuse make. CPP="${CC-cc} -E" # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. dnl Use a header file that comes with gcc, so configuring glibc dnl with a fresh cross-compiler works. AC_TRY_CPP([#include Syntax Error], , CPP="${CC-cc} -E -traditional-cpp" AC_TRY_CPP([#include Syntax Error], , CPP=/lib/cpp)) ac_cv_prog_CPP="$CPP"])dnl CPP="$ac_cv_prog_CPP" else ac_cv_prog_CPP="$CPP" fi AC_MSG_RESULT($CPP) AC_SUBST(CPP)dnl AC_MSG_CHECKING(for a C++-Compiler) dnl if there is one, print out. if not, don't matter AC_MSG_RESULT($CXX) if test -z "$CXX"; then AC_CHECK_PROG(CXX, g++, g++) fi if test -z "$CXX"; then AC_CHECK_PROG(CXX, CC, CC) fi if test -z "$CXX"; then AC_CHECK_PROG(CXX, xlC, xlC) fi if test -z "$CXX"; then AC_CHECK_PROG(CXX, DCC, DCC) fi test -z "$CXX" && AC_MSG_ERROR([no acceptable C++-compiler found in \$PATH]) AC_PROG_CXX_WORKS AC_PROG_CXX_GNU if test $ac_cv_prog_gxx = yes; then GXX=yes fi USER_CXXFLAGS=$CXXFLAGS CXXFLAGS="" if test -z "$CXXFLAGS"; then if test "$kde_use_debug_code" = "yes"; then AC_PROG_CXX_G if test $ac_cv_prog_cxx_g = yes; then CXXFLAGS="-g" case $host in dnl *-*-linux-gnu) CXXFLAGS="$CXXFLAGS -ansi -D_XOPEN_SOURCE -D_BSD_SOURCE -Wbad-function-cast -Wcast-align -Wundef -Wconversion" ;; esac fi else if test "$GXX" = "yes"; then CXXFLAGS="-O2" fi if test "$kde_use_debug_define" = "yes"; then CXXFLAGS="$CXXFLAGS -DNDEBUG" fi fi if test "$kde_use_profiling" = yes; then KDE_PROG_CXX_PG if test "$kde_cv_prog_cxx_pg" = yes; then CXXFLAGS="$CXXFLAGS -pg" fi fi KDE_CHECK_COMPILER_FLAG(fno-exceptions, [ CXXFLAGS="$CXXFLAGS -fno-exceptions" ]) dnl WABA: Nothing wrong with RTTI, keep it on. dnl KDE_CHECK_COMPILER_FLAG(fno-rtti, dnl [ dnl CXXFLAGS="$CXXFLAGS -fno-rtti" dnl ]) KDE_CHECK_COMPILER_FLAG(fno-check-new, [ CXXFLAGS="$CXXFLAGS -fno-check-new" ]) if test "$GXX" = "yes"; then CXXFLAGS="$CXXFLAGS" if test true || test "$kde_use_debug_code" = "yes"; then CXXFLAGS="$CXXFLAGS -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings" KDE_CHECK_COMPILER_FLAG(Wno-long-long, [ CXXFLAGS="$CXXFLAGS -Wno-long-long" ]) KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor, [ CXXFLAGS="$CXXFLAGS -Wnon-virtual-dtor" ]) KDE_CHECK_COMPILER_FLAG(fno-builtin, [ CXXFLAGS="$CXXFLAGS -fno-builtin" ]) fi if test "$kde_use_strict_options" = "yes"; then CXXFLAGS="$CXXFLAGS -Wcast-qual -Wbad-function-cast -Wshadow -Wcast-align" fi if test "$kde_very_strict" = "yes"; then CXXFLAGS="$CXXFLAGS -Wold-style-cast -Wredundant-decls -Wconversion" fi fi fi KDE_CHECK_COMPILER_FLAG(fexceptions, [ USE_EXCEPTIONS="-fexceptions" ], USE_EXCEPTIONS= ) AC_SUBST(USE_EXCEPTIONS) KDE_CHECK_COMPILER_FLAG(frtti, [ USE_RTTI="-frtti" ], USE_RTTI= ) AC_SUBST(USE_RTTI) case "$host" in *-*-irix*) test "$GXX" = yes && CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS" ;; *-*-sysv4.2uw*) CXXFLAGS="$CXXFLAGS -D_UNIXWARE";; *-*-sysv5uw7*) CXXFLAGS="$CXXFLAGS -D_UNIXWARE7";; *-*-solaris*) if test "$GXX" = yes; then libstdcpp=`gcc -print-file-name=libstdc++.so` if test ! -f $libstdcpp; then AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) fi fi ;; esac if test -n "$USER_CXXFLAGS"; then CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS" fi AC_VALIDIFY_CXXFLAGS AC_MSG_CHECKING(how to run the C++ preprocessor) if test -z "$CXXCPP"; then AC_CACHE_VAL(ac_cv_prog_CXXCPP, [ AC_LANG_SAVE[]dnl AC_LANG_CPLUSPLUS[]dnl CXXCPP="${CXX-g++} -E" AC_TRY_CPP([#include ], , CXXCPP=/lib/cpp) ac_cv_prog_CXXCPP="$CXXCPP" AC_LANG_RESTORE[]dnl ])dnl CXXCPP="$ac_cv_prog_CXXCPP" fi AC_MSG_RESULT($CXXCPP) AC_SUBST(CXXCPP)dnl # the following is to allow programs, that are known to # have problems when compiled with -O2 if test -n "$CXXFLAGS"; then kde_safe_IFS=$IFS IFS=" " NOOPT_CXXFLAGS="" for i in $CXXFLAGS; do case $i in -O*) ;; *) NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i" ;; esac done IFS=$kde_safe_IFS fi AC_SUBST(NOOPT_CXXFLAGS) KDE_CHECK_FINAL ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) KDE_CXXFLAGS= AC_SUBST(KDE_CXXFLAGS) ]) AC_DEFUN(KDE_ADD_DEPENDENCIES, [ [A]M_DEPENDENCIES(CC) [A]M_DEPENDENCIES(CXX) ]) dnl just a wrapper to clean up configure.in AC_DEFUN(KDE_PROG_LIBTOOL, [ AC_REQUIRE([AC_CHECK_COMPILERS]) AC_REQUIRE([AC_ENABLE_SHARED]) AC_REQUIRE([AC_ENABLE_STATIC]) AC_REQUIRE([AC_LIBTOOL_DLOPEN]) AC_LANG_SAVE AC_LANG_C AC_OBJEXT AC_EXEEXT AC_LANG_RESTORE AM_PROG_LIBTOOL AC_LIBTOOL_CXX LIBTOOL_SHELL="/bin/sh ./libtool" # LIBTOOL="$LIBTOOL --silent" KDE_PLUGIN="-avoid-version -module -no-undefined" AC_SUBST(KDE_PLUGIN) ]) AC_DEFUN(KDE_CHECK_TYPES, [ AC_CHECK_SIZEOF(int, 4)dnl AC_CHECK_SIZEOF(long, 4)dnl AC_CHECK_SIZEOF(char *, 4)dnl ])dnl AC_DEFUN(KDE_DO_IT_ALL, [ AC_CANONICAL_SYSTEM AC_ARG_PROGRAM AM_INIT_AUTOMAKE($1, $2) AM_DISABLE_LIBRARIES AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) AC_CHECK_COMPILERS KDE_PROG_LIBTOOL AM_KDE_WITH_NLS AC_PATH_KDE ]) AC_DEFUN(AC_CHECK_RPATH, [ AC_MSG_CHECKING(for rpath) AC_ARG_ENABLE(rpath, [ --disable-rpath do not use the rpath feature of ld], USE_RPATH=$enableval, USE_RPATH=yes) if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then KDE_RPATH="-R \$(kde_libraries)" if test -n "$qt_libraries"; then KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" fi dnl $x_libraries is set to /usr/lib in case if test -n "$X_LDFLAGS"; then KDE_RPATH="$KDE_RPATH -R \$(x_libraries)" fi if test -n "$KDE_EXTRA_RPATH"; then KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" fi fi AC_SUBST(KDE_EXTRA_RPATH) AC_SUBST(KDE_RPATH) AC_MSG_RESULT($USE_RPATH) ]) dnl Check for the type of the third argument of getsockname AC_DEFUN(AC_CHECK_KSIZE_T, [AC_MSG_CHECKING(for the third argument of getsockname) AC_CACHE_VAL(ac_cv_ksize_t, AC_LANG_SAVE AC_LANG_CPLUSPLUS [AC_TRY_COMPILE([ #include #include ],[ socklen_t a=0; getsockname(0,(struct sockaddr*)0, &a); ], ac_cv_ksize_t=socklen_t, ac_cv_ksize_t=) if test -z "$ac_cv_ksize_t"; then ac_safe_cxxflags="$CXXFLAGS" if test "$GCC" = "yes"; then CXXFLAGS="-Werror $CXXFLAGS" fi AC_TRY_COMPILE([ #include #include ],[ int a=0; getsockname(0,(struct sockaddr*)0, &a); ], ac_cv_ksize_t=int, ac_cv_ksize_t=size_t) CXXFLAGS="$ac_safe_cxxflags" fi AC_LANG_RESTORE ]) if test -z "$ac_cv_ksize_t"; then ac_cv_ksize_t=int fi AC_MSG_RESULT($ac_cv_ksize_t) AC_DEFINE_UNQUOTED(ksize_t, $ac_cv_ksize_t, [Define the type of the third argument for getsockname] ) ]) dnl This is a merge of some macros out of the gettext aclocal.m4 dnl since we don't need anything, I took the things we need dnl the copyright for them is: dnl > dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. dnl This Makefile.in 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 for this file it is relicensed under LGPL AC_DEFUN(AM_KDE_WITH_NLS, [ dnl If we use NLS figure out what method AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) GMSGFMT=":" fi MSGFMT=$GMSGFMT AC_SUBST(GMSGFMT) AC_SUBST(MSGFMT) AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is no GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext programs is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi AC_SUBST(XGETTEXT) ]) # Search path for a program which passes the given test. # Ulrich Drepper , 1996. # serial 1 # Stephan Kulow: I appended a _KDE against name conflicts dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE, [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test -n "[$]$1"; then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # Check whether LC_MESSAGES is available in . # Ulrich Drepper , 1995. # serial 1 AC_DEFUN(AM_LC_MESSAGES, [if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES]) fi fi]) dnl From Jim Meyering. dnl FIXME: migrate into libit. AC_DEFUN(AM_FUNC_OBSTACK, [AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, [AC_TRY_LINK([#include "obstack.h"], [struct obstack *mem;obstack_free(mem,(char *) 0)], am_cv_func_obstack=yes, am_cv_func_obstack=no)]) if test $am_cv_func_obstack = yes; then AC_DEFINE(HAVE_OBSTACK) else LIBOBJS="$LIBOBJS obstack.o" fi ]) dnl From Jim Meyering. Use this if you use the GNU error.[ch]. dnl FIXME: Migrate into libit AC_DEFUN(AM_FUNC_ERROR_AT_LINE, [AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], am_cv_lib_error_at_line=yes, am_cv_lib_error_at_line=no)]) if test $am_cv_lib_error_at_line = no; then LIBOBJS="$LIBOBJS error.o" fi AC_SUBST(LIBOBJS)dnl ]) # Macro to add for using GNU gettext. # Ulrich Drepper , 1995. # serial 1 # Stephan Kulow: I put a KDE in it to avoid name conflicts AC_DEFUN(AM_KDE_GNU_GETTEXT, [AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AC_PROG_RANLIB])dnl AC_REQUIRE([AC_HEADER_STDC])dnl AC_REQUIRE([AC_TYPE_OFF_T])dnl AC_REQUIRE([AC_TYPE_SIZE_T])dnl AC_REQUIRE([AC_FUNC_ALLOCA])dnl AC_REQUIRE([AC_FUNC_MMAP])dnl AC_REQUIRE([AM_KDE_WITH_NLS])dnl AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h]) AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \ __argz_count __argz_stringify __argz_next]) AC_MSG_CHECKING(for stpcpy) AC_CACHE_VAL(kde_cv_func_stpcpy, [ kde_safe_cxxflags=$CXXFLAGS CXXFLAGS="-Wmissing-prototypes -Werror" AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_TRY_COMPILE([ #include ], [ char buffer[200]; stpcpy(buffer, buffer); ], kde_cv_func_stpcpy=yes, kde_cv_func_stpcpy=no) AC_LANG_RESTORE CXXFLAGS=$kde_safe_cxxflags ]) AC_MSG_RESULT($kde_cv_func_stpcpy) if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) fi AM_LC_MESSAGES if test "x$CATOBJEXT" != "x"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for lang in ${LINGUAS=$ALL_LINGUAS}; do case "$ALL_LINGUAS" in *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; esac done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi ]) AC_DEFUN(AC_HAVE_XPM, [AC_REQUIRE_CPP()dnl AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= test -z "$XPM_INCLUDE" && XPM_INCLUDE= AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests], xpm_test=$withval, xpm_test="yes") if test "x$xpm_test" = xno; then ac_cv_have_xpm=no else AC_MSG_CHECKING(for XPM) AC_CACHE_VAL(ac_cv_have_xpm, [ AC_LANG_C ac_save_ldflags="$LDFLAGS" ac_save_cflags="$CFLAGS" LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" AC_TRY_LINK([#include ],[], ac_cv_have_xpm="yes",ac_cv_have_xpm="no") LDFLAGS="$ac_save_ldflags" CFLAGS="$ac_save_cflags" ])dnl if test "$ac_cv_have_xpm" = no; then AC_MSG_RESULT(no) XPM_LDFLAGS="" XPMINC="" $2 else AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) if test "$XPM_LDFLAGS" = ""; then XPMLIB='-lXpm $(LIB_X11)' else XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' fi if test "$XPM_INCLUDE" = ""; then XPMINC="" else XPMINC="-I$XPM_INCLUDE" fi AC_MSG_RESULT(yes) $1 fi fi AC_SUBST(XPMINC) AC_SUBST(XPMLIB) ]) AC_DEFUN(AC_HAVE_DPMS, [AC_REQUIRE_CPP()dnl AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= DPMS_LIB= AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving], dpms_test=$withval, dpms_test="yes") if test "x$dpms_test" = xno; then ac_cv_have_dpms=no else AC_MSG_CHECKING(for DPMS) dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". AC_CACHE_VAL(ac_cv_have_dpms, [ AC_LANG_C ac_save_ldflags="$LDFLAGS" ac_save_cflags="$CFLAGS" ac_save_libs="$LIBS" LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" CFLAGS="$CFLAGS $X_INCLUDES" test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" AC_TRY_LINK([ #include #include #include #include int foo_test_dpms() { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], ac_cv_have_dpms="yes", [ LDFLAGS="$ac_save_ldflags" CFLAGS="$ac_save_cflags" LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET" LIBS="$LIBS -lXdpms" CFLAGS="$CFLAGS $X_INCLUDES" test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" AC_TRY_LINK([ #include #include #include #include int foo_test_dpms() { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], [ ac_cv_have_dpms="-lXdpms" ],ac_cv_have_dpms="no") ]) LDFLAGS="$ac_save_ldflags" CFLAGS="$ac_save_cflags" LIBS="$ac_save_libs" ])dnl if test "$ac_cv_have_dpms" = no; then AC_MSG_RESULT(no) DPMS_LDFLAGS="" DPMSINC="" $2 else AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) if test "$ac_cv_have_dpms" = "-lXdpms"; then DPMS_LIB="-lXdpms" fi if test "$DPMS_LDFLAGS" = ""; then DPMSLIB="$DPMS_LIB "'$(LIB_X11)' else DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' fi if test "$DPMS_INCLUDE" = ""; then DPMSINC="" else DPMSINC="-I$DPMS_INCLUDE" fi AC_MSG_RESULT(yes) $1 fi fi AC_SUBST(DPMSINC) AC_SUBST(DPMSLIB) ]) AC_DEFUN(AC_HAVE_GL, [AC_REQUIRE_CPP()dnl AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) test -z "$GL_LDFLAGS" && GL_LDFLAGS= test -z "$GL_INCLUDE" && GL_INCLUDE= AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes], gl_test=$withval, gl_test="yes") if test "x$gl_test" = xno; then ac_cv_have_gl=no else AC_MSG_CHECKING(for GL) AC_CACHE_VAL(ac_cv_have_gl, [ AC_LANG_C ac_save_ldflags="$LDFLAGS" ac_save_cflags="$CFLAGS" LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU -lX11 -lXext -lm $LIBSOCKET" CFLAGS="$CFLAGS $X_INCLUDES" test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" AC_TRY_LINK([#include #include ], [], ac_cv_have_gl="mesa", ac_cv_have_gl="no") if test "x$ac_cv_have_gl" = "xno"; then LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU -lX11 -lXext -lm $LIBSOCKET" CFLAGS="$ac_save_cflags $X_INCLUDES" test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" AC_TRY_LINK([#include #include ], [], ac_cv_have_gl="yes", ac_cv_have_gl="no") fi LDFLAGS="$ac_save_ldflags" CFLAGS="$ac_save_cflags" ])dnl if test "$ac_cv_have_gl" = "no"; then AC_MSG_RESULT(no) GL_LDFLAGS="" GLINC="" $2 else AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) if test "$GL_LDFLAGS" = ""; then if test "$ac_cv_have_gl" = "mesa"; then GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)' else GLLIB='-lGL -lGLU $(LIB_X11)' fi else if test "$ac_cv_have_gl" = "mesa"; then GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)' else GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)' fi fi if test "$GL_INCLUDE" = ""; then GLINC="" else GLINC="-I$GL_INCLUDE" fi AC_MSG_RESULT($ac_cv_have_gl) $1 fi fi AC_SUBST(GLINC) AC_SUBST(GLLIB) ]) dnl PAM pam dnl Should test for PAM (Pluggable Authentication Modules) AC_DEFUN(AC_PATH_PAM_DIRECT, [ test -z "$pam_direct_test_library" && pam_direct_test_library=pam test -z "$pam_direct_test_include" && pam_direct_test_include=security/pam_appl.h for ac_dir in \ \ /usr/local/include \ /usr/include \ /usr/unsupported/include \ /opt/include \ /usr/pam/include \ /usr/local/pam/include \ /usr/lib/pam/include \ \ $extra_include \ ; \ do if test -r "$ac_dir/$pam_direct_test_include"; then no_pam= ac_pam_includes=$ac_dir break fi done # First see if replacing the include by lib works. for ac_dir in `echo "$ac_pam_includes" | sed s/include/lib/` \ \ /lib \ /usr/lib \ /usr/local/lib \ /usr/unsupported/lib \ /lib/security \ /usr/security/lib \ $extra_lib \ ; \ do for ac_extension in a so sl; do if test -r $ac_dir/lib${pam_direct_test_library}.$ac_extension; then no_pam= ac_pam_libraries=$ac_dir break 2 fi done done ]) AC_DEFUN(AC_PATH_PAM, [ AC_REQUIRE([KDE_CHECK_LIBDL]) AC_REQUIRE_CPP()dnl dnl AC_CHECK_LIB(pam_misc, main, [PAM_MISC_LIB="-lpam_misc" dnl AC_DEFINE_UNQUOTED(HAVE_PAM_MISC, 1, [Define if you have a PAM implementation with the pam_misc library])], [], [-lpam $LIBDL]) AC_MSG_CHECKING(for PAM) AC_ARG_WITH(pam, [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]], [ if test "x$withval" = "xyes"; then no_pam= default_pam=yes elif test "x$withval" = "xno"; then no_pam=yes else no_pam= pam_service="$withval" if test -z "$pam_service"; then default_pam=yes else default_pam= fi fi ], no_pam=yes ) if test ! "$no_pam" = yes; then AC_CACHE_VAL(ac_cv_path_pam, [ ac_pam_includes=NONE ac_pam_libraries=NONE if test -z "$pam_libraries"; then pam_libraries=NONE fi if test -z "$pam_includes"; then pam_includes=NONE fi AC_PATH_PAM_DIRECT test "x$pam_includes" = xNONE && pam_includes=$ac_pam_includes test "x$pam_libraries" = xNONE && pam_libraries=$ac_pam_libraries if test ! "x$pam_includes" = xNONE && test ! "x$pam_libraries" = xNONE; then ac_pam_libs="-lpam $PAM_MISC_LIB $LIBDL" ac_cv_path_pam="no_pam= ac_pam_includes=$ac_pam_includes ac_pam_libraries=$ac_pam_libraries ac_pam_libs=\"$ac_pam_libs\"" else ac_cv_path_pam="no_pam=yes" fi ]) eval "$ac_cv_path_pam" fi if test "$no_pam" = yes; then AC_MSG_RESULT(no) else AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules); Redhat-Users!]) PAMLIBS="$ac_pam_libs" test "x$pam_includes" = xNONE && pam_includes=$ac_pam_includes test "x$pam_libraries" = xNONE && pam_libraries=$ac_pam_libraries AC_MSG_RESULT([libraries $pam_libraries, headers $pam_includes]) if test "$default_pam" = yes; then AC_MSG_RESULT(["default pam service name will be used"]) else AC_DEFINE_UNQUOTED(KDE_PAM_SERVICE,"$pam_service", [Define to change the default name of the PAM service used by KDE]) AC_MSG_RESULT(["pam service name will be: " $pam_service]) fi dnl test whether struct pam_message is const (Linux) or not (Sun) pam_appl_h="$ac_pam_includes/security/pam_appl.h" AC_MSG_CHECKING(for const pam_message) AC_EGREP_HEADER([struct pam_message], $pam_appl_h, [ AC_EGREP_HEADER([const struct pam_message], $pam_appl_h, [AC_MSG_RESULT(["const: Linux-type PAM"]) ], [AC_MSG_RESULT(["nonconst: Sun-type PAM"]) AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] )], [AC_MSG_RESULT(["not found - assume const, Linux-type PAM"])] ) fi if test "x$pam_libraries" != x && test "x$pam_libraries" != xNONE ; then PAMLIBPATHS="-L$pam_libraries" fi if test "x$pam_includes" != x && test "x$pam_includes" != xNONE ; then PAMINC="-I$pam_includes" fi AC_SUBST(PAMINC) AC_SUBST(PAMLIBS) AC_SUBST(PAMLIBPATHS) ]) AC_DEFUN(KDE_CHECK_LIBDL, [ AC_CHECK_LIB(dl, dlopen, [ LIBDL="-ldl" ac_cv_have_dlfcn=yes ]) AC_CHECK_LIB(dld, shl_unload, [ LIBDL="-ldld" ac_cv_have_shload=yes ]) AC_SUBST(LIBDL) ]) AC_DEFUN(KDE_CHECK_DLOPEN, [ KDE_CHECK_LIBDL AC_CHECK_HEADERS(dlfcn.h dl.h) if test "$ac_cv_header_dlfcn_h" = "no"; then ac_cv_have_dlfcn=no fi if test "$ac_cv_header_dl_h" = "no"; then ac_cv_have_shload=no fi dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE dnl (MM) AC_ARG_ENABLE(dlopen, [ --disable-dlopen link statically [default=no]] , enable_dlopen=$enableval, enable_dlopen=yes) # override the user's opinion, if we know it better ;) if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then enable_dlopen=no fi if test "$ac_cv_have_dlfcn" = "yes"; then AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) fi if test "$ac_cv_have_shload" = "yes"; then AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) fi if test "$enable_dlopen" = no ; then test -n "$1" && eval $1 else test -n "$2" && eval $2 fi ]) AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING, [ KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) KDE_PROG_LIBTOOL AC_MSG_CHECKING([dynamic loading]) eval "`egrep '^build_libtool_libs=' libtool`" if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then dynamic_loading=yes AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) else dynamic_loading=no fi AC_MSG_RESULT($dynamic_loading) if test "$dynamic_loading" = "yes"; then $1 else $2 fi ]) AC_DEFUN(KDE_ADD_INCLUDES, [ if test -z "$1"; then test_include="Pix.h" else test_include="$1" fi AC_MSG_CHECKING([for libg++ ($test_include)]) AC_CACHE_VAL(kde_cv_libgpp_includes, [ kde_cv_libgpp_includes=no for ac_dir in \ \ /usr/include/g++ \ /usr/include \ /usr/unsupported/include \ /opt/include \ $extra_include \ ; \ do if test -r "$ac_dir/$test_include"; then kde_cv_libgpp_includes=$ac_dir break fi done ]) AC_MSG_RESULT($kde_cv_libgpp_includes) if test "$kde_cv_libgpp_includes" != "no"; then all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" fi ]) ]) AC_DEFUN(KDE_CHECK_MICO, [ AC_REQUIRE([KDE_CHECK_LIBDL]) AC_REQUIRE([KDE_MISC_TESTS]) AC_MSG_CHECKING(for MICO) if test -z "$MICODIR"; then kde_micodir=/usr/local else kde_micodir="$MICODIR" fi AC_ARG_WITH(micodir, [ --with-micodir=micodir where mico is installed ], kde_micodir=$withval, kde_micodir=$kde_micodir ) AC_CACHE_VAL(kde_cv_mico_incdir, [ mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) ]) kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` if test ! -r $kde_micodir/include/CORBA.h; then AC_MSG_ERROR([No CORBA.h found, specify another micodir]) fi AC_MSG_RESULT($kde_micodir) MICO_INCLUDES=-I$kde_micodir/include AC_SUBST(MICO_INCLUDES) MICO_LDFLAGS=-L$kde_micodir/lib AC_SUBST(MICO_LDFLAGS) micodir=$kde_micodir AC_SUBST(micodir) AC_MSG_CHECKING([for MICO version]) AC_CACHE_VAL(kde_cv_mico_version, [ AC_LANG_C cat >conftest.$ac_ext < #include int main() { printf("MICO_VERSION=%s\n",MICO_VERSION); return (0); } EOF ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' if AC_TRY_EVAL(ac_compile); then if eval `./conftest 2>&5`; then kde_cv_mico_version=$MICO_VERSION else AC_MSG_ERROR([your system is not able to execute a small application to find MICO version! Check $kde_micodir/include/mico/version.h]) fi else AC_MSG_ERROR([your system is not able to compile a small application to find MICO version! Check $kde_micodir/include/mico/version.h]) fi ]) dnl installed MICO version mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` if test "x$1" = "x"; then req_version="2.3.0" else req_version=$1 fi dnl required MICO version req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` if test "$mico_v_maj" -lt "$req_v_maj" || \ ( test "$mico_v_maj" -eq "$req_v_maj" && \ test "$mico_v_mid" -lt "$req_v_mid" ) || \ ( test "$mico_v_mid" -eq "$req_v_mid" && \ test "$mico_v_min" -lt "$req_v_min" ) then AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ at least is required. You should upgrade MICO.]) else AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) fi LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" AC_SUBST(LIBMICO) if test -z "$IDL"; then IDL='$(kde_bindir)/cuteidl' fi AC_SUBST(IDL) IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' AC_SUBST(IDL_DEPENDENCIES) idldir="\$(includedir)/idl" AC_SUBST(idldir) ]) AC_DEFUN(KDE_CHECK_MINI_STL, [ AC_REQUIRE([KDE_CHECK_MICO]) AC_MSG_CHECKING(if we use mico's mini-STL) AC_CACHE_VAL(kde_cv_have_mini_stl, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS kde_save_cxxflags="$CXXFLAGS" CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" AC_TRY_COMPILE( [ #include ], [ #ifdef HAVE_MINI_STL #error "nothing" #endif ], kde_cv_have_mini_stl=no, kde_cv_have_mini_stl=yes) CXXFLAGS="$kde_save_cxxflags" AC_LANG_RESTORE ]) if test "x$kde_cv_have_mini_stl" = "xyes"; then AC_MSG_RESULT(yes) $1 else AC_MSG_RESULT(no) $2 fi ]) ]) AC_DEFUN(KDE_CHECK_LIBPTHREAD, [ AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] ) AC_SUBST(LIBPTHREAD) ]) AC_DEFUN(KDE_CHECK_PTHREAD_OPTION, [ AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.], kde_use_kernthreads=$enableval, kde_use_kernthreads=no) if test "$kde_use_kernthreads" = "yes"; then ac_save_CXXFLAGS="$CXXFLAGS" ac_save_CFLAGS="$CXXFLAGS" CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS" CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS" AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h) CXXFLAGS="$ac_save_CXXFLAGS" CFLAGS="$ac_save_CFLAGS" if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then kde_use_kernthreads=no else dnl Add proper -I and -l statements AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD if test "x$LIBPTHREAD" = "x"; then kde_use_kernthreads=no else USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads" fi fi else USE_THREADS="" if test -z "$LIBPTHREAD"; then KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] ) fi fi case $host_os in solaris*) KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS" echo "Setting Solaris pthread compilation options" ;; freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" echo "Setting FreeBSD pthread compilation options" ;; aix*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" LIBPTHREAD="$LIBPTHREAD -lc_r" echo "Setting AIX pthread compilation options" ;; linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" USE_THREADS="$USE_THREADS -DPIC -fPIC" echo "Setting Linux pthread compilation options" ;; *) ;; esac AC_SUBST(USE_THREADS) AC_SUBST(LIBPTHREAD) ]) AC_DEFUN(KDE_CHECK_THREADING, [ AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) dnl default is yes if libpthread is found and no if no libpthread is available if test -z "$LIBPTHREAD"; then kde_check_threading_default=no else kde_check_threading_default=yes fi AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ], kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) if test "x$kde_use_threading" = "xyes"; then AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) fi ]) AC_DEFUN(KDE_TRY_LINK_PYTHON, [ if test "$kde_python_link_found" = no; then if test "$1" = normal; then AC_MSG_CHECKING(if a Python application links) else AC_MSG_CHECKING(if Python depends on $2) fi AC_CACHE_VAL(kde_cv_try_link_python_$1, [ AC_LANG_SAVE AC_LANG_C kde_save_cflags="$CFLAGS" CFLAGS="$CFLAGS $PYTHONINC" kde_save_libs="$LIBS" LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" kde_save_ldflags="$LDFLAGS" LDFLAGS="$LDFLAGS $PYTHONLIB" AC_TRY_LINK( [ #include ],[ PySys_SetArgv(1, 0); ], [kde_cv_try_link_python_$1=yes], [kde_cv_try_link_python_$1=no] ) CFLAGS="$kde_save_cflags" LIBS="$kde_save_libs" LDFLAGS="$kde_save_ldflags" ]) if test "$kde_cv_try_link_python_$1" = "yes"; then AC_MSG_RESULT(yes) kde_python_link_found=yes if test ! "$1" = normal; then LIBPYTHON="$LIBPYTHON $2" fi $3 else AC_MSG_RESULT(no) $4 fi AC_LANG_RESTORE fi ]) AC_DEFUN(KDE_CHECK_PYTHON, [ AC_REQUIRE([KDE_CHECK_LIBDL]) AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) AC_MSG_CHECKING([for Python directory]) AC_CACHE_VAL(kde_cv_pythondir, [ if test -z "$PYTHONDIR"; then kde_cv_pythondir=/usr/local else kde_cv_pythondir="$PYTHONDIR" fi ]) AC_ARG_WITH(pythondir, [ --with-pythondir=pythondir use python installed in pythondir ], [ ac_python_dir=$withval ], ac_python_dir=$kde_cv_pythondir ) AC_MSG_RESULT($ac_python_dir) if test -z "$1"; then version="1.5" else version="$1" fi AC_MSG_CHECKING([for Python$version]) python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) if test ! -r $python_incdir/Python.h; then AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) python_incdir=$python_incdir/python$version if test ! -r $python_incdir/Python.h; then AC_MSG_ERROR(Python.h not found.) fi fi PYTHONINC=-I$python_incdir python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) if test ! -r $python_libdir/libpython$version.a; then AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) python_libdir=$python_libdir/python$version/config if test ! -r $python_libdir/libpython$version.a; then AC_MSG_ERROR(libpython$version.a not found.) fi fi PYTHONLIB=-L$python_libdir if test -z "$LIBPYTHON"; then LIBPYTHON=-lpython$version fi python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs" AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) python_moddir=$python_moddir/python$version if test ! -r $python_moddir/copy.py; then AC_MSG_ERROR(python module directory not found.) fi PYTHONMODDIR=$python_moddir AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) dnl Note: this test is very weak kde_python_link_found=no KDE_TRY_LINK_PYTHON(normal) KDE_TRY_LINK_PYTHON(m, -lm) KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) KDE_TRY_LINK_PYTHON(tcl, -ltcl) KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm], [], [AC_MSG_WARN([it seems, Python depends on another library. Pleae use \"make LIBPTYHON='-lpython$version -lotherlib'\" to fix this and contact the authors to let them know about this problem]) ]) LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" AC_SUBST(PYTHONINC) AC_SUBST(PYTHONLIB) AC_SUBST(LIBPYTHON) AC_SUBST(PYTHONMODDIR) ]) AC_DEFUN(KDE_CHECK_STL_SGI, [ AC_MSG_CHECKING([if STL implementation is SGI like]) AC_CACHE_VAL(kde_cv_stl_type_sgi, [ AC_TRY_COMPILE([ #include using namespace std; ],[ string astring="Hallo Welt."; astring.erase(0, 6); // now astring is "Welt" return 0; ], kde_cv_stl_type_sgi=yes, kde_cv_stl_type_sgi=no) ]) AC_MSG_RESULT($kde_cv_stl_type_sgi) if test "$kde_cv_stl_type_sgi" = "yes"; then AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) fi ]) AC_DEFUN(KDE_CHECK_STL_HP, [ AC_MSG_CHECKING([if STL implementation is HP like]) AC_CACHE_VAL(kde_cv_stl_type_hp, [ AC_TRY_COMPILE([ #include using namespace std; ],[ string astring="Hello World"; astring.remove(0, 6); // now astring is "World" return 0; ], kde_cv_stl_type_hp=yes, kde_cv_stl_type_hp=no) ]) AC_MSG_RESULT($kde_cv_stl_type_hp) if test "$kde_cv_stl_type_hp" = "yes"; then AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by SGI]) fi ]) AC_DEFUN(KDE_CHECK_STL, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" KDE_CHECK_STL_SGI if test "$kde_cv_stl_type_sgi" = "no"; then KDE_CHECK_STL_HP if test "$kde_cv_stl_type_hp" = "no"; then AC_MSG_ERROR("no known STL type found") fi fi CXXFLAGS="$ac_save_CXXFLAGS" AC_LANG_RESTORE ]) AC_DEFUN(AC_FIND_QIMGIO, [AC_REQUIRE([AC_FIND_JPEG]) AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) AC_MSG_CHECKING([for qimgio]) AC_CACHE_VAL(ac_cv_lib_qimgio, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS ac_save_LIBS="$LIBS" ac_save_CXXFLAGS="$CXXFLAGS" LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" AC_TRY_RUN(dnl [ #include #include int main() { QString t = "hallo"; t.fill('t'); qInitImageIO(); } ], ac_cv_lib_qimgio=yes, ac_cv_lib_qimgio=no, ac_cv_lib_qimgio=no) LIBS="$ac_save_LIBS" CXXFLAGS="$ac_save_CXXFLAGS" AC_LANG_RESTORE ])dnl if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" AC_MSG_RESULT(yes) AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) AC_SUBST(LIBQIMGIO) else AC_MSG_RESULT(not found) fi ]) AC_DEFUN(KDE_CHECK_ANSI, [ ]) AC_DEFUN(KDE_CHECK_INSURE, [ AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], [ if test $enableval = "no"; dnl then ac_use_insure="no" else ac_use_insure="yes" fi ], [ac_use_insure="no"]) AC_MSG_CHECKING(if we will use Insure++ to debug) AC_MSG_RESULT($ac_use_insure) if test "$ac_use_insure" = "yes"; dnl then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? fi ]) AC_DEFUN(AM_DISABLE_LIBRARIES, [ AC_PROVIDE([AM_ENABLE_STATIC]) AC_PROVIDE([AM_ENABLE_SHARED]) enable_static=no enable_shared=yes ]) AC_DEFUN(AC_CHECK_UTMP_FILE, [ AC_MSG_CHECKING([for utmp file]) AC_CACHE_VAL(kde_cv_utmp_file, [ kde_cv_utmp_file=no for ac_file in \ \ /var/run/utmp \ /var/adm/utmp \ /etc/utmp \ ; \ do if test -r "$ac_file"; then kde_cv_utmp_file=$ac_file break fi done ]) if test "$kde_cv_utmp_file" != "no"; then AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) $1 AC_MSG_RESULT($kde_cv_utmp_file) else $2 AC_MSG_RESULT([non found]) fi ]) AC_DEFUN(KDE_CREATE_SUBDIRSLIST, [ DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" if test ! -s $srcdir/subdirs; then dnl Note: Makefile.common creates subdirs, so this is just a fallback TOPSUBDIRS="" files=`cd $srcdir && ls -1` dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` for i in $dirs; do echo $i >> $srcdir/subdirs done fi if test -s $srcdir/inst-apps; then ac_topsubdirs="`cat $srcdir/inst-apps`" else ac_topsubdirs="`cat $srcdir/subdirs`" fi for i in $ac_topsubdirs; do AC_MSG_CHECKING([if $i should be compiled]) if test -d $srcdir/$i; then install_it="yes" for j in $DO_NOT_COMPILE; do if test $i = $j; then install_it="no" fi done else install_it="no" fi AC_MSG_RESULT($install_it) if test $install_it = "yes"; then TOPSUBDIRS="$TOPSUBDIRS $i" fi done AC_SUBST(TOPSUBDIRS) ]) AC_DEFUN(KDE_CHECK_NAMESPACES, [ AC_MSG_CHECKING(whether C++ compiler supports namespaces) AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_TRY_COMPILE([ ], [ namespace Foo { extern int i; namespace Bar { extern int i; } } int Foo::i = 0; int Foo::Bar::i = 1; ],[ AC_MSG_RESULT(yes) AC_DEFINE(HAVE_NAMESPACES) ], [ AC_MSG_RESULT(no) ]) AC_LANG_RESTORE ]) AC_DEFUN(KDE_CHECK_NEWLIBS, [ ]) dnl ------------------------------------------------------------------------ dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_CHECK_S_ISSOCK, [ AC_MSG_CHECKING(for S_ISSOCK) AC_CACHE_VAL(ac_cv_have_s_issock, [ AC_LANG_SAVE AC_LANG_C AC_TRY_LINK( [ #include ], [ struct stat buff; int b = S_ISSOCK( buff.st_mode ); ], ac_cv_have_s_issock=yes, ac_cv_have_s_issock=no) AC_LANG_RESTORE ]) AC_MSG_RESULT($ac_cv_have_s_issock) if test "$ac_cv_have_s_issock" = "yes"; then AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) fi ]) dnl ------------------------------------------------------------------------ dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org dnl ------------------------------------------------------------------------ dnl AC_DEFUN(AC_CHECK_KDEMAXPATHLEN, [ AC_MSG_CHECKING(for MAXPATHLEN) AC_CACHE_VAL(ac_cv_maxpathlen, [ AC_LANG_C cat > conftest.$ac_ext < #include #ifndef MAXPATHLEN #define MAXPATHLEN 1024 #endif KDE_HELLO MAXPATHLEN EOF ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" if AC_TRY_EVAL(ac_try) && test -s conftest.out; then ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` else ac_cv_maxpathlen=1024 fi rm conftest.* ]) AC_MSG_RESULT($ac_cv_maxpathlen) AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) ]) dnl ------------------------------------------------------------------------- dnl See if the compiler supports a template repository bero@redhat.de dnl ------------------------------------------------------------------------- AC_DEFUN(KDE_COMPILER_REPO, [ REPO="" NOREPO="" KDE_CHECK_COMPILER_FLAG(frepo, [ REPO="-frepo" NOREPO="-fno-repo" ]) if test -z "$REPO"; then KDE_CHECK_COMPILER_FLAG(instances=explicit, [ REPO="-instances=explicit" NOREPO="-instances=extern" ]) fi if test -n "$REPO"; then AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1, [C++ compiler supports template repository]) $1 fi AC_SUBST(REPO) AC_SUBST(NOREPO) ]) AC_DEFUN(KDE_CHECK_HEADER, [ AC_LANG_SAVE kde_safe_cppflags=$CPPFLAGS CPPFLAGS="$CPPFLAGS $all_includes" AC_LANG_CPLUSPLUS AC_CHECK_HEADER($1, $2, $3) CPPFLAGS=$kde_safe_cppflags AC_LANG_RESTORE ]) AC_DEFUN(KDE_CHECK_QWSPRITEFIELD, [ KDE_CHECK_HEADER(QwSpriteField.h, , [ AC_MSG_WARN([you don't have QwSpriteField.h somewhere. Please install QwSpriteField out of kdesupport.]) $1 ]) ]) AC_DEFUN(KDE_FAST_CONFIGURE, [ dnl makes configure fast (needs perl) AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)], with_fast_perl=$enableval, with_fast_perl=yes) ]) AC_DEFUN(KDE_CONF_FILES, [ val= if test -f $srcdir/configure.files ; then val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` fi CONF_FILES= if test -n "$val" ; then for i in $val ; do CONF_FILES="$CONF_FILES $i" done fi AC_SUBST(CONF_FILES) ])dnl AC_DEFUN(KDE_SET_PREFIX, [ unset CDPATH dnl make $KDEDIR the default for the installation AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) if test "x$prefix" = "xNONE"; then prefix=$ac_default_prefix ac_configure_args="$ac_configure_args --prefix $prefix" fi KDE_FAST_CONFIGURE KDE_CONF_FILES ]) pushdef([AC_PROG_INSTALL], [ dnl our own version, testing for a -p flag popdef([AC_PROG_INSTALL]) dnl as AC_PROG_INSTALL works as it works we first have dnl to save if the user didn't specify INSTALL, as the dnl autoconf one overwrites INSTALL and we have no chance to find dnl out afterwards test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT AC_PROG_INSTALL if test -z "$kde_save_INSTALL_given" ; then # OK, user hasn't given any INSTALL, autoconf found one for us # now we test, if it supports the -p flag AC_MSG_CHECKING(for -p flag to install) rm -f confinst.$$.* > /dev/null 2>&1 echo "Testtest" > confinst.$$.orig ac_res=no if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then if test -f confinst.$$.new ; then # OK, -p seems to do no harm to install INSTALL="${INSTALL} -p" ac_res=yes fi fi rm -f confinst.$$.* AC_MSG_RESULT($ac_res) fi dnl the following tries to resolve some signs and wonders coming up dnl with different autoconf/automake versions dnl e.g.: dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the dnl install-@DIR@PROGRAMS targets to explicitly use that flag dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from dnl automake (due to broken Makefile.am or whatever) to install programs, dnl and so does not see the -s flag in automake > 1.4 dnl to clean up that mess we: dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG dnl which cleans KDE's program with automake > 1.4; dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems dnl with automake<=1.4 dnl note that dues to this sometimes two '-s' flags are used (if KDE dnl properly uses install-@DIR@PROGRAMS, but I don't care dnl dnl And to all this comes, that I even can't write in comments variable dnl names used by automake, because it is so stupid to think I wanted to dnl _use_ them, therefor I have written A_M_... instead of AM_ dnl hmm, I wanted to say something ... ahh yes: Arghhh. if test -z "$kde_save_INSTALL_PROGRAM_given" ; then INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' fi if test -z "$kde_save_INSTALL_SCRIPT_given" ; then INSTALL_SCRIPT='${INSTALL}' fi ])dnl AC_DEFUN(KDE_LANG_CPLUSPLUS, [AC_LANG_CPLUSPLUS ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) ]) pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS ]) AC_DEFUN(KDE_CHECK_LONG_LONG, [ AC_MSG_CHECKING(for long long) AC_CACHE_VAL(kde_cv_c_long_long, [ AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_TRY_LINK([], [ long long foo = 0; foo = foo+1; ], kde_cv_c_long_long=yes, kde_cv_c_long_long=no) ]) AC_MSG_RESULT($kde_cv_c_long_long) if test "$kde_cv_c_long_long" = yes; then AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) fi ])