annotate kdiff3/admin/acinclude.m4.in @ 6:a23681732506

Files have moved into the src directory.
author joachim99
date Mon, 06 Oct 2003 18:32:37 +0000
parents 53b8ecbce0cb
children 415083d043f3
rev   line source
joachim99@2 1 ## -*- autoconf -*-
joachim99@2 2
joachim99@2 3 dnl This file is part of the KDE libraries/packages
joachim99@2 4 dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu)
joachim99@2 5 dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org)
joachim99@2 6
joachim99@2 7 dnl This file is free software; you can redistribute it and/or
joachim99@2 8 dnl modify it under the terms of the GNU Library General Public
joachim99@2 9 dnl License as published by the Free Software Foundation; either
joachim99@2 10 dnl version 2 of the License, or (at your option) any later version.
joachim99@2 11
joachim99@2 12 dnl This library is distributed in the hope that it will be useful,
joachim99@2 13 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
joachim99@2 14 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
joachim99@2 15 dnl Library General Public License for more details.
joachim99@2 16
joachim99@2 17 dnl You should have received a copy of the GNU Library General Public License
joachim99@2 18 dnl along with this library; see the file COPYING.LIB. If not, write to
joachim99@2 19 dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
joachim99@2 20 dnl Boston, MA 02111-1307, USA.
joachim99@2 21
joachim99@2 22 dnl IMPORTANT NOTE:
joachim99@2 23 dnl Please do not modify this file unless you expect your modifications to be
joachim99@2 24 dnl carried into every other module in the repository. If you decide that you
joachim99@2 25 dnl really want to modify it, contact coolo@kde.org mentioning that you have
joachim99@2 26 dnl and that the modified file should be committed to every module.
joachim99@2 27 dnl
joachim99@2 28 dnl Single-module modifications are best placed in configure.in for kdelibs
joachim99@2 29 dnl and kdebase or configure.in.in if present.
joachim99@2 30
joachim99@2 31 dnl ------------------------------------------------------------------------
joachim99@2 32 dnl Forward compatibility macros (make autoconf 2.13 look like 2.50),
joachim99@2 33 dnl thanks to Raja R Harinath.
joachim99@2 34 dnl ------------------------------------------------------------------------
joachim99@2 35 dnl
joachim99@2 36 ifdef([_AC_PATH_X_XMKMF],[],
joachim99@2 37 [AC_DEFUN([_AC_PATH_X_XMKMF],[AC_PATH_X_XMKMF])])
joachim99@2 38 ifdef([AC_OUTPUT_SUBDIRS],[],
joachim99@2 39 [AC_DEFUN([AC_OUTPUT_SUBDIRS],[subdirs=$1; _AC_OUTPUT_SUBDIRS])])
joachim99@2 40
joachim99@2 41 # KDE_PATH_X_DIRECT
joachim99@2 42 dnl Internal subroutine of AC_PATH_X.
joachim99@2 43 dnl Set ac_x_includes and/or ac_x_libraries.
joachim99@2 44 AC_DEFUN(KDE_PATH_X_DIRECT,
joachim99@2 45 [if test "$ac_x_includes" = NO; then
joachim99@2 46 # Guess where to find include files, by looking for this one X11 .h file.
joachim99@2 47 test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h
joachim99@2 48
joachim99@2 49 # First, try using that file with no special directory specified.
joachim99@2 50 AC_TRY_CPP([#include <$x_direct_test_include>],
joachim99@2 51 [# We can compile using X headers with no special include directory.
joachim99@2 52 ac_x_includes=],
joachim99@2 53 [# Look for the header file in a standard set of common directories.
joachim99@2 54 # Check X11 before X11Rn because it is often a symlink to the current release.
joachim99@2 55 for ac_dir in \
joachim99@2 56 /usr/X11/include \
joachim99@2 57 /usr/X11R6/include \
joachim99@2 58 /usr/X11R5/include \
joachim99@2 59 /usr/X11R4/include \
joachim99@2 60 \
joachim99@2 61 /usr/include/X11 \
joachim99@2 62 /usr/include/X11R6 \
joachim99@2 63 /usr/include/X11R5 \
joachim99@2 64 /usr/include/X11R4 \
joachim99@2 65 \
joachim99@2 66 /usr/local/X11/include \
joachim99@2 67 /usr/local/X11R6/include \
joachim99@2 68 /usr/local/X11R5/include \
joachim99@2 69 /usr/local/X11R4/include \
joachim99@2 70 \
joachim99@2 71 /usr/local/include/X11 \
joachim99@2 72 /usr/local/include/X11R6 \
joachim99@2 73 /usr/local/include/X11R5 \
joachim99@2 74 /usr/local/include/X11R4 \
joachim99@2 75 \
joachim99@2 76 /usr/X386/include \
joachim99@2 77 /usr/x386/include \
joachim99@2 78 /usr/XFree86/include/X11 \
joachim99@2 79 \
joachim99@2 80 /usr/include \
joachim99@2 81 /usr/local/include \
joachim99@2 82 /usr/unsupported/include \
joachim99@2 83 /usr/athena/include \
joachim99@2 84 /usr/local/x11r5/include \
joachim99@2 85 /usr/lpp/Xamples/include \
joachim99@2 86 \
joachim99@2 87 /usr/openwin/include \
joachim99@2 88 /usr/openwin/share/include \
joachim99@2 89 ; \
joachim99@2 90 do
joachim99@2 91 if test -r "$ac_dir/$x_direct_test_include"; then
joachim99@2 92 ac_x_includes=$ac_dir
joachim99@2 93 break
joachim99@2 94 fi
joachim99@2 95 done])
joachim99@2 96 fi # $ac_x_includes = NO
joachim99@2 97
joachim99@2 98 if test "$ac_x_libraries" = NO; then
joachim99@2 99 # Check for the libraries.
joachim99@2 100
joachim99@2 101 test -z "$x_direct_test_library" && x_direct_test_library=Xt
joachim99@2 102 test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc
joachim99@2 103
joachim99@2 104 # See if we find them without any special options.
joachim99@2 105 # Don't add to $LIBS permanently.
joachim99@2 106 ac_save_LIBS="$LIBS"
joachim99@2 107 LIBS="-l$x_direct_test_library $LIBS"
joachim99@2 108 AC_TRY_LINK(, [${x_direct_test_function}()],
joachim99@2 109 [LIBS="$ac_save_LIBS"
joachim99@2 110 # We can link X programs with no special library path.
joachim99@2 111 ac_x_libraries=],
joachim99@2 112 [LIBS="$ac_save_LIBS"
joachim99@2 113 # First see if replacing the include by lib works.
joachim99@2 114 # Check X11 before X11Rn because it is often a symlink to the current release.
joachim99@2 115 for ac_dir in `echo "$ac_x_includes" | sed s/include/lib/` \
joachim99@2 116 /usr/X11/lib \
joachim99@2 117 /usr/X11R6/lib \
joachim99@2 118 /usr/X11R5/lib \
joachim99@2 119 /usr/X11R4/lib \
joachim99@2 120 \
joachim99@2 121 /usr/lib/X11 \
joachim99@2 122 /usr/lib/X11R6 \
joachim99@2 123 /usr/lib/X11R5 \
joachim99@2 124 /usr/lib/X11R4 \
joachim99@2 125 \
joachim99@2 126 /usr/local/X11/lib \
joachim99@2 127 /usr/local/X11R6/lib \
joachim99@2 128 /usr/local/X11R5/lib \
joachim99@2 129 /usr/local/X11R4/lib \
joachim99@2 130 \
joachim99@2 131 /usr/local/lib/X11 \
joachim99@2 132 /usr/local/lib/X11R6 \
joachim99@2 133 /usr/local/lib/X11R5 \
joachim99@2 134 /usr/local/lib/X11R4 \
joachim99@2 135 \
joachim99@2 136 /usr/X386/lib \
joachim99@2 137 /usr/x386/lib \
joachim99@2 138 /usr/XFree86/lib/X11 \
joachim99@2 139 \
joachim99@2 140 /usr/lib \
joachim99@2 141 /usr/local/lib \
joachim99@2 142 /usr/unsupported/lib \
joachim99@2 143 /usr/athena/lib \
joachim99@2 144 /usr/local/x11r5/lib \
joachim99@2 145 /usr/lpp/Xamples/lib \
joachim99@2 146 /lib/usr/lib/X11 \
joachim99@2 147 \
joachim99@2 148 /usr/openwin/lib \
joachim99@2 149 /usr/openwin/share/lib \
joachim99@2 150 ; \
joachim99@2 151 do
joachim99@2 152 dnl Don't even attempt the hair of trying to link an X program!
joachim99@2 153 for ac_extension in a so sl; do
joachim99@2 154 if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then
joachim99@2 155 ac_x_libraries=$ac_dir
joachim99@2 156 break 2
joachim99@2 157 fi
joachim99@2 158 done
joachim99@2 159 done])
joachim99@2 160 fi # $ac_x_libraries = NO
joachim99@2 161 ])
joachim99@2 162
joachim99@2 163
joachim99@2 164 dnl ------------------------------------------------------------------------
joachim99@2 165 dnl Find a file (or one of more files in a list of dirs)
joachim99@2 166 dnl ------------------------------------------------------------------------
joachim99@2 167 dnl
joachim99@2 168 AC_DEFUN(AC_FIND_FILE,
joachim99@2 169 [
joachim99@2 170 $3=NO
joachim99@2 171 for i in $2;
joachim99@2 172 do
joachim99@2 173 for j in $1;
joachim99@2 174 do
joachim99@2 175 echo "configure: __oline__: $i/$j" >&AC_FD_CC
joachim99@2 176 if test -r "$i/$j"; then
joachim99@2 177 echo "taking that" >&AC_FD_CC
joachim99@2 178 $3=$i
joachim99@2 179 break 2
joachim99@2 180 fi
joachim99@2 181 done
joachim99@2 182 done
joachim99@2 183 ])
joachim99@2 184
joachim99@2 185 dnl KDE_FIND_PATH(programm-name, variable-name, list of directories,
joachim99@2 186 dnl if-not-found, test-parameter)
joachim99@2 187 AC_DEFUN(KDE_FIND_PATH,
joachim99@2 188 [
joachim99@2 189 AC_MSG_CHECKING([for $1])
joachim99@2 190 if test -n "$$2"; then
joachim99@2 191 kde_cv_path="$$2";
joachim99@2 192 else
joachim99@2 193 kde_cache=`echo $1 | sed 'y%./+-%__p_%'`
joachim99@2 194
joachim99@2 195 AC_CACHE_VAL(kde_cv_path_$kde_cache,
joachim99@2 196 [
joachim99@2 197 kde_cv_path="NONE"
joachim99@2 198 dirs="$3"
joachim99@2 199 kde_save_IFS=$IFS
joachim99@2 200 IFS=':'
joachim99@2 201 for dir in $PATH; do
joachim99@2 202 dirs="$dirs $dir"
joachim99@2 203 done
joachim99@2 204 IFS=$kde_save_IFS
joachim99@2 205
joachim99@2 206 for dir in $dirs; do
joachim99@2 207 if test -x "$dir/$1"; then
joachim99@2 208 if test -n "$5"
joachim99@2 209 then
joachim99@2 210 evalstr="$dir/$1 $5 2>&1 "
joachim99@2 211 if eval $evalstr; then
joachim99@2 212 kde_cv_path="$dir/$1"
joachim99@2 213 break
joachim99@2 214 fi
joachim99@2 215 else
joachim99@2 216 kde_cv_path="$dir/$1"
joachim99@2 217 break
joachim99@2 218 fi
joachim99@2 219 fi
joachim99@2 220 done
joachim99@2 221
joachim99@2 222 eval "kde_cv_path_$kde_cache=$kde_cv_path"
joachim99@2 223
joachim99@2 224 ])
joachim99@2 225
joachim99@2 226 eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\""
joachim99@2 227
joachim99@2 228 fi
joachim99@2 229
joachim99@2 230 if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then
joachim99@2 231 AC_MSG_RESULT(not found)
joachim99@2 232 $4
joachim99@2 233 else
joachim99@2 234 AC_MSG_RESULT($kde_cv_path)
joachim99@2 235 $2=$kde_cv_path
joachim99@2 236
joachim99@2 237 fi
joachim99@2 238 ])
joachim99@2 239
joachim99@2 240 AC_DEFUN(KDE_MOC_ERROR_MESSAGE,
joachim99@2 241 [
joachim99@2 242 AC_MSG_ERROR([No Qt meta object compiler (moc) found!
joachim99@2 243 Please check whether you installed Qt correctly.
joachim99@2 244 You need to have a running moc binary.
joachim99@2 245 configure tried to run $ac_cv_path_moc and the test didn't
joachim99@2 246 succeed. If configure shouldn't have tried this one, set
joachim99@2 247 the environment variable MOC to the right one before running
joachim99@2 248 configure.
joachim99@2 249 ])
joachim99@2 250 ])
joachim99@2 251
joachim99@2 252 AC_DEFUN(KDE_UIC_ERROR_MESSAGE,
joachim99@2 253 [
joachim99@2 254 AC_MSG_WARN([No Qt ui compiler (uic) found!
joachim99@2 255 Please check whether you installed Qt correctly.
joachim99@2 256 You need to have a running uic binary.
joachim99@2 257 configure tried to run $ac_cv_path_uic and the test didn't
joachim99@2 258 succeed. If configure shouldn't have tried this one, set
joachim99@2 259 the environment variable UIC to the right one before running
joachim99@2 260 configure.
joachim99@2 261 ])
joachim99@2 262 ])
joachim99@2 263
joachim99@2 264 dnl ------------------------------------------------------------------------
joachim99@2 265 dnl Find the meta object compiler and the ui compiler in the PATH,
joachim99@2 266 dnl in $QTDIR/bin, and some more usual places
joachim99@2 267 dnl ------------------------------------------------------------------------
joachim99@2 268 dnl
joachim99@2 269 AC_DEFUN(AC_PATH_QT_MOC_UIC,
joachim99@2 270 [
joachim99@2 271 qt_bindirs=""
joachim99@2 272 for dir in $kde_qt_dirs; do
joachim99@2 273 qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc"
joachim99@2 274 done
joachim99@2 275 qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin"
joachim99@2 276 if test ! "$ac_qt_bindir" = "NO"; then
joachim99@2 277 qt_bindirs="$ac_qt_bindir $qt_bindirs"
joachim99@2 278 fi
joachim99@2 279
joachim99@2 280 KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE])
joachim99@2 281 if test -z "$UIC_NOT_NEEDED"; then
joachim99@2 282 KDE_FIND_PATH(uic, UIC, [$qt_bindirs], [UIC=""])
joachim99@2 283 if test -z "$UIC" ; then
joachim99@2 284 KDE_UIC_ERROR_MESSAGE
joachim99@2 285 exit 1
joachim99@2 286 fi
joachim99@2 287 else
joachim99@2 288 UIC="echo uic not available: "
joachim99@2 289 fi
joachim99@2 290
joachim99@2 291 AC_SUBST(MOC)
joachim99@2 292 AC_SUBST(UIC)
joachim99@2 293
joachim99@2 294 UIC_TR="i18n"
joachim99@2 295 if test $kde_qtver = 3; then
joachim99@2 296 UIC_TR="tr2i18n"
joachim99@2 297 fi
joachim99@2 298
joachim99@2 299 AC_SUBST(UIC_TR)
joachim99@2 300 ])
joachim99@2 301
joachim99@2 302 AC_DEFUN(KDE_1_CHECK_PATHS,
joachim99@2 303 [
joachim99@2 304 KDE_1_CHECK_PATH_HEADERS
joachim99@2 305
joachim99@2 306 KDE_TEST_RPATH=
joachim99@2 307
joachim99@2 308 if test -n "$USE_RPATH"; then
joachim99@2 309
joachim99@2 310 if test -n "$kde_libraries"; then
joachim99@2 311 KDE_TEST_RPATH="-R $kde_libraries"
joachim99@2 312 fi
joachim99@2 313
joachim99@2 314 if test -n "$qt_libraries"; then
joachim99@2 315 KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries"
joachim99@2 316 fi
joachim99@2 317
joachim99@2 318 if test -n "$x_libraries"; then
joachim99@2 319 KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries"
joachim99@2 320 fi
joachim99@2 321
joachim99@2 322 KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH"
joachim99@2 323 fi
joachim99@2 324
joachim99@2 325 AC_MSG_CHECKING([for KDE libraries installed])
joachim99@2 326 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'
joachim99@2 327
joachim99@2 328 if AC_TRY_EVAL(ac_link) && test -s conftest; then
joachim99@2 329 AC_MSG_RESULT(yes)
joachim99@2 330 else
joachim99@2 331 AC_MSG_ERROR([your system fails at linking a small KDE application!
joachim99@2 332 Check, if your compiler is installed correctly and if you have used the
joachim99@2 333 same compiler to compile Qt and kdelibs as you did use now.
joachim99@2 334 For more details about this problem, look at the end of config.log.])
joachim99@2 335 fi
joachim99@2 336
joachim99@2 337 if eval `KDEDIR= ./conftest 2>&5`; then
joachim99@2 338 kde_result=done
joachim99@2 339 else
joachim99@2 340 kde_result=problems
joachim99@2 341 fi
joachim99@2 342
joachim99@2 343 KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log
joachim99@2 344 kde_have_all_paths=yes
joachim99@2 345
joachim99@2 346 KDE_SET_PATHS($kde_result)
joachim99@2 347
joachim99@2 348 ])
joachim99@2 349
joachim99@2 350 AC_DEFUN(KDE_SET_PATHS,
joachim99@2 351 [
joachim99@2 352 kde_cv_all_paths="kde_have_all_paths=\"yes\" \
joachim99@2 353 kde_htmldir=\"$kde_htmldir\" \
joachim99@2 354 kde_appsdir=\"$kde_appsdir\" \
joachim99@2 355 kde_icondir=\"$kde_icondir\" \
joachim99@2 356 kde_sounddir=\"$kde_sounddir\" \
joachim99@2 357 kde_datadir=\"$kde_datadir\" \
joachim99@2 358 kde_locale=\"$kde_locale\" \
joachim99@2 359 kde_cgidir=\"$kde_cgidir\" \
joachim99@2 360 kde_confdir=\"$kde_confdir\" \
joachim99@2 361 kde_mimedir=\"$kde_mimedir\" \
joachim99@2 362 kde_toolbardir=\"$kde_toolbardir\" \
joachim99@2 363 kde_wallpaperdir=\"$kde_wallpaperdir\" \
joachim99@2 364 kde_templatesdir=\"$kde_templatesdir\" \
joachim99@2 365 kde_bindir=\"$kde_bindir\" \
joachim99@2 366 kde_servicesdir=\"$kde_servicesdir\" \
joachim99@2 367 kde_servicetypesdir=\"$kde_servicetypesdir\" \
joachim99@2 368 kde_moduledir=\"$kde_moduledir\" \
joachim99@2 369 kde_styledir=\"$kde_styledir\" \
joachim99@2 370 kde_widgetdir=\"$kde_widgetdir\" \
joachim99@2 371 kde_result=$1"
joachim99@2 372 ])
joachim99@2 373
joachim99@2 374 AC_DEFUN(KDE_SET_DEFAULT_PATHS,
joachim99@2 375 [
joachim99@2 376 if test "$1" = "default"; then
joachim99@2 377
joachim99@2 378 if test -z "$kde_htmldir"; then
joachim99@2 379 kde_htmldir='\${prefix}/share/doc/HTML'
joachim99@2 380 fi
joachim99@2 381 if test -z "$kde_appsdir"; then
joachim99@2 382 kde_appsdir='\${prefix}/share/applnk'
joachim99@2 383 fi
joachim99@2 384 if test -z "$kde_icondir"; then
joachim99@2 385 kde_icondir='\${prefix}/share/icons'
joachim99@2 386 fi
joachim99@2 387 if test -z "$kde_sounddir"; then
joachim99@2 388 kde_sounddir='\${prefix}/share/sounds'
joachim99@2 389 fi
joachim99@2 390 if test -z "$kde_datadir"; then
joachim99@2 391 kde_datadir='\${prefix}/share/apps'
joachim99@2 392 fi
joachim99@2 393 if test -z "$kde_locale"; then
joachim99@2 394 kde_locale='\${prefix}/share/locale'
joachim99@2 395 fi
joachim99@2 396 if test -z "$kde_cgidir"; then
joachim99@2 397 kde_cgidir='\${exec_prefix}/cgi-bin'
joachim99@2 398 fi
joachim99@2 399 if test -z "$kde_confdir"; then
joachim99@2 400 kde_confdir='\${prefix}/share/config'
joachim99@2 401 fi
joachim99@2 402 if test -z "$kde_mimedir"; then
joachim99@2 403 kde_mimedir='\${prefix}/share/mimelnk'
joachim99@2 404 fi
joachim99@2 405 if test -z "$kde_toolbardir"; then
joachim99@2 406 kde_toolbardir='\${prefix}/share/toolbar'
joachim99@2 407 fi
joachim99@2 408 if test -z "$kde_wallpaperdir"; then
joachim99@2 409 kde_wallpaperdir='\${prefix}/share/wallpapers'
joachim99@2 410 fi
joachim99@2 411 if test -z "$kde_templatesdir"; then
joachim99@2 412 kde_templatesdir='\${prefix}/share/templates'
joachim99@2 413 fi
joachim99@2 414 if test -z "$kde_bindir"; then
joachim99@2 415 kde_bindir='\${exec_prefix}/bin'
joachim99@2 416 fi
joachim99@2 417 if test -z "$kde_servicesdir"; then
joachim99@2 418 kde_servicesdir='\${prefix}/share/services'
joachim99@2 419 fi
joachim99@2 420 if test -z "$kde_servicetypesdir"; then
joachim99@2 421 kde_servicetypesdir='\${prefix}/share/servicetypes'
joachim99@2 422 fi
joachim99@2 423 if test -z "$kde_moduledir"; then
joachim99@2 424 if test "$kde_qtver" = "2"; then
joachim99@2 425 kde_moduledir='\${exec_prefix}/lib/kde2'
joachim99@2 426 else
joachim99@2 427 kde_moduledir='\${exec_prefix}/lib/kde3'
joachim99@2 428 fi
joachim99@2 429 fi
joachim99@2 430 if test -z "$kde_styledir"; then
joachim99@2 431 kde_styledir='\${exec_prefix}/lib/kde3/plugins/styles'
joachim99@2 432 fi
joachim99@2 433 if test -z "$kde_widgetdir"; then
joachim99@2 434 kde_widgetdir='\${exec_prefix}/lib/kde3/plugins/designer'
joachim99@2 435 fi
joachim99@2 436
joachim99@2 437 KDE_SET_PATHS(defaults)
joachim99@2 438
joachim99@2 439 else
joachim99@2 440
joachim99@2 441 if test $kde_qtver = 1; then
joachim99@2 442 AC_MSG_RESULT([compiling])
joachim99@2 443 KDE_1_CHECK_PATHS
joachim99@2 444 else
joachim99@2 445 AC_MSG_ERROR([path checking not yet supported for KDE 2])
joachim99@2 446 fi
joachim99@2 447
joachim99@2 448 fi
joachim99@2 449 ])
joachim99@2 450
joachim99@2 451 AC_DEFUN(KDE_CHECK_PATHS_FOR_COMPLETENESS,
joachim99@2 452 [ if test -z "$kde_htmldir" || test -z "$kde_appsdir" ||
joachim99@2 453 test -z "$kde_icondir" || test -z "$kde_sounddir" ||
joachim99@2 454 test -z "$kde_datadir" || test -z "$kde_locale" ||
joachim99@2 455 test -z "$kde_cgidir" || test -z "$kde_confdir" ||
joachim99@2 456 test -z "$kde_mimedir" || test -z "$kde_toolbardir" ||
joachim99@2 457 test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" ||
joachim99@2 458 test -z "$kde_bindir" || test -z "$kde_servicesdir" ||
joachim99@2 459 test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" ||
joachim99@2 460 test -z "$kde_styledir" || test -z "kde_widgetdir"
joachim99@2 461 test "x$kde_have_all_paths" != "xyes"; then
joachim99@2 462 kde_have_all_paths=no
joachim99@2 463 fi
joachim99@2 464 ])
joachim99@2 465
joachim99@2 466 AC_DEFUN(KDE_MISSING_PROG_ERROR,
joachim99@2 467 [
joachim99@2 468 AC_MSG_ERROR([The important program $1 was not found!
joachim99@2 469 Please check whether you installed KDE correctly.
joachim99@2 470 ])
joachim99@2 471 ])
joachim99@2 472
joachim99@2 473 AC_DEFUN(KDE_SUBST_PROGRAMS,
joachim99@2 474 [
joachim99@2 475
joachim99@2 476 kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde3/bin /usr/kde/bin /usr/local/kde/bin"
joachim99@2 477 if test -n "$KDEDIRS"; then
joachim99@2 478 kde_save_IFS=$IFS
joachim99@2 479 IFS=:
joachim99@2 480 for dir in $KDEDIRS; do
joachim99@2 481 kde_default_bindirs="$dir/bin $kde_default_bindirs "
joachim99@2 482 done
joachim99@2 483 IFS=$kde_save_IFS
joachim99@2 484 fi
joachim99@2 485 kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs"
joachim99@2 486 KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)])
joachim99@2 487 KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)])
joachim99@2 488 KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(mcopidl)])
joachim99@2 489 KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(artsc-config)])
joachim99@2 490 KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs])
joachim99@2 491 KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs])
joachim99@2 492
joachim99@2 493 if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then
joachim99@2 494 kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share"
joachim99@2 495 test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs"
joachim99@2 496 AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET)
joachim99@2 497 if test "$KDE_XSL_STYLESHEET" = "NO"; then
joachim99@2 498 KDE_XSL_STYLESHEET=""
joachim99@2 499 else
joachim99@2 500 KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl"
joachim99@2 501 fi
joachim99@2 502 fi
joachim99@2 503
joachim99@2 504 DCOP_DEPENDENCIES='$(DCOPIDL)'
joachim99@2 505 AC_SUBST(DCOPIDL)
joachim99@2 506 AC_SUBST(DCOPIDL2CPP)
joachim99@2 507 AC_SUBST(DCOP_DEPENDENCIES)
joachim99@2 508 AC_SUBST(MCOPIDL)
joachim99@2 509 AC_SUBST(ARTSCCONFIG)
joachim99@2 510 AC_SUBST(KDECONFIG)
joachim99@2 511 AC_SUBST(MEINPROC)
joachim99@2 512 AC_SUBST(KDE_XSL_STYLESHEET)
joachim99@2 513
joachim99@2 514 if test -x "$KDECONFIG"; then # it can be "compiled"
joachim99@2 515 kde_libs_prefix=`$KDECONFIG --prefix`
joachim99@2 516 if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then
joachim99@2 517 AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs.
joachim99@2 518 This means it has been moved since you installed it.
joachim99@2 519 This won't work. Please recompile kdelibs for the new prefix.
joachim99@2 520 ])
joachim99@2 521 fi
joachim99@2 522 kde_libs_htmldir=`$KDECONFIG --install html --expandvars`
joachim99@2 523 else
joachim99@2 524 kde_libs_prefix='$(prefix)'
joachim99@2 525 kde_libs_htmldir='$(kde_htmldir)'
joachim99@2 526 fi
joachim99@2 527 AC_SUBST(kde_libs_prefix)
joachim99@2 528 AC_SUBST(kde_libs_htmldir)
joachim99@2 529 ])dnl
joachim99@2 530
joachim99@2 531 AC_DEFUN(AC_CREATE_KFSSTND,
joachim99@2 532 [
joachim99@2 533 AC_REQUIRE([AC_CHECK_RPATH])
joachim99@2 534
joachim99@2 535 AC_MSG_CHECKING([for KDE paths])
joachim99@2 536 kde_result=""
joachim99@2 537 kde_cached_paths=yes
joachim99@2 538 AC_CACHE_VAL(kde_cv_all_paths,
joachim99@2 539 [
joachim99@2 540 KDE_SET_DEFAULT_PATHS($1)
joachim99@2 541 kde_cached_paths=no
joachim99@2 542 ])
joachim99@2 543 eval "$kde_cv_all_paths"
joachim99@2 544 KDE_CHECK_PATHS_FOR_COMPLETENESS
joachim99@2 545 if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then
joachim99@2 546 # wrong values were cached, may be, we can set better ones
joachim99@2 547 kde_result=
joachim99@2 548 kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir=
joachim99@2 549 kde_datadir= kde_locale= kde_cgidir= kde_confdir=
joachim99@2 550 kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir=
joachim99@2 551 kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir=
joachim99@2 552 kde_have_all_paths=
joachim99@2 553 kde_styledir=
joachim99@2 554 kde_widgetdir=
joachim99@2 555 KDE_SET_DEFAULT_PATHS($1)
joachim99@2 556 eval "$kde_cv_all_paths"
joachim99@2 557 KDE_CHECK_PATHS_FOR_COMPLETENESS
joachim99@2 558 kde_result="$kde_result (cache overridden)"
joachim99@2 559 fi
joachim99@2 560 if test "$kde_have_all_paths" = "no"; then
joachim99@2 561 AC_MSG_ERROR([configure could not run a little KDE program to test the environment.
joachim99@2 562 Since it had compiled and linked before, it must be a strange problem on your system.
joachim99@2 563 Look at config.log for details. If you are not able to fix this, look at
joachim99@2 564 http://www.kde.org/faq/installation.html or any www.kde.org mirror.
joachim99@2 565 (If you're using an egcs version on Linux, you may update binutils!)
joachim99@2 566 ])
joachim99@2 567 else
joachim99@2 568 rm -f conftest*
joachim99@2 569 AC_MSG_RESULT($kde_result)
joachim99@2 570 fi
joachim99@2 571
joachim99@2 572 bindir=$kde_bindir
joachim99@2 573
joachim99@2 574 KDE_SUBST_PROGRAMS
joachim99@2 575
joachim99@2 576 ])
joachim99@2 577
joachim99@2 578 AC_DEFUN(AC_SUBST_KFSSTND,
joachim99@2 579 [
joachim99@2 580 AC_SUBST(kde_htmldir)
joachim99@2 581 AC_SUBST(kde_appsdir)
joachim99@2 582 AC_SUBST(kde_icondir)
joachim99@2 583 AC_SUBST(kde_sounddir)
joachim99@2 584 AC_SUBST(kde_datadir)
joachim99@2 585 AC_SUBST(kde_locale)
joachim99@2 586 AC_SUBST(kde_confdir)
joachim99@2 587 AC_SUBST(kde_mimedir)
joachim99@2 588 AC_SUBST(kde_wallpaperdir)
joachim99@2 589 AC_SUBST(kde_bindir)
joachim99@2 590 dnl for KDE 2
joachim99@2 591 AC_SUBST(kde_templatesdir)
joachim99@2 592 AC_SUBST(kde_servicesdir)
joachim99@2 593 AC_SUBST(kde_servicetypesdir)
joachim99@2 594 AC_SUBST(kde_moduledir)
joachim99@2 595 AC_SUBST(kde_styledir)
joachim99@2 596 AC_SUBST(kde_widgetdir)
joachim99@2 597 if test "$kde_qtver" = 1; then
joachim99@2 598 kde_minidir="$kde_icondir/mini"
joachim99@2 599 else
joachim99@2 600 # for KDE 1 - this breaks KDE2 apps using minidir, but
joachim99@2 601 # that's the plan ;-/
joachim99@2 602 kde_minidir="/dev/null"
joachim99@2 603 fi
joachim99@2 604 dnl AC_SUBST(kde_minidir)
joachim99@2 605 dnl AC_SUBST(kde_cgidir)
joachim99@2 606 dnl AC_SUBST(kde_toolbardir)
joachim99@2 607 ])
joachim99@2 608
joachim99@2 609 AC_DEFUN(KDE_MISC_TESTS,
joachim99@2 610 [
joachim99@2 611 AC_LANG_C
joachim99@2 612 dnl Checks for libraries.
joachim99@2 613 AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD
joachim99@2 614 AC_SUBST(LIBUTIL)
joachim99@2 615 AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD
joachim99@2 616 AC_SUBST(LIBCOMPAT)
joachim99@2 617 kde_have_crypt=
joachim99@2 618 AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes],
joachim99@2 619 AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [
joachim99@2 620 AC_MSG_WARN([you have no crypt in either libcrypt or libc.
joachim99@2 621 You should install libcrypt from another source or configure with PAM
joachim99@2 622 support])
joachim99@2 623 kde_have_crypt=no
joachim99@2 624 ]))
joachim99@2 625 AC_SUBST(LIBCRYPT)
joachim99@2 626 if test $kde_have_crypt = yes; then
joachim99@2 627 AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function])
joachim99@2 628 fi
joachim99@2 629 AC_CHECK_SOCKLEN_T
joachim99@2 630 AC_LANG_C
joachim99@2 631 AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"])
joachim99@2 632 if test $ac_cv_lib_dnet_dnet_ntoa = no; then
joachim99@2 633 AC_CHECK_LIB(dnet_stub, dnet_ntoa,
joachim99@2 634 [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"])
joachim99@2 635 fi
joachim99@2 636 AC_CHECK_FUNC(inet_ntoa)
joachim99@2 637 if test $ac_cv_func_inet_ntoa = no; then
joachim99@2 638 AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl")
joachim99@2 639 fi
joachim99@2 640 AC_CHECK_FUNC(connect)
joachim99@2 641 if test $ac_cv_func_connect = no; then
joachim99@2 642 AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", ,
joachim99@2 643 $X_EXTRA_LIBS)
joachim99@2 644 fi
joachim99@2 645
joachim99@2 646 AC_CHECK_FUNC(remove)
joachim99@2 647 if test $ac_cv_func_remove = no; then
joachim99@2 648 AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix")
joachim99@2 649 fi
joachim99@2 650
joachim99@2 651 # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
joachim99@2 652 AC_CHECK_FUNC(shmat, ,
joachim99@2 653 AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"))
joachim99@2 654
joachim99@2 655 # Solaris 2.6 and others need -lresolv for res_init
joachim99@2 656 AC_CHECK_FUNCS(res_init, , [
joachim99@2 657 kde_libs_safe="$LIBS"
joachim99@2 658 LIBS="$LIBS $X_EXTRA_LIBS -lresolv"
joachim99@2 659 AC_TRY_LINK(
joachim99@2 660 [
joachim99@2 661 #include <resolv.h>
joachim99@2 662 ],
joachim99@2 663 [
joachim99@2 664 res_init();
joachim99@2 665 ],
joachim99@2 666 LIBRESOLV="-lresolv"
joachim99@2 667 X_EXTRA_LIBS="$X_EXTRA_LIBS $LIBRESOLV"
joachim99@2 668 AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function])
joachim99@2 669 )
joachim99@2 670 LIBS=$kde_libs_safe
joachim99@2 671 ])
joachim99@2 672
joachim99@2 673 LIBSOCKET="$X_EXTRA_LIBS"
joachim99@2 674 AC_SUBST(LIBSOCKET)
joachim99@2 675 AC_SUBST(LIBRESOLV)
joachim99@2 676 AC_SUBST(X_EXTRA_LIBS)
joachim99@2 677 AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4
joachim99@2 678 AC_SUBST(LIBUCB)
joachim99@2 679
joachim99@2 680 case $host in dnl this *is* LynxOS specific
joachim99@2 681 *-*-lynxos* )
joachim99@2 682 AC_MSG_CHECKING([LynxOS header file wrappers])
joachim99@2 683 [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"]
joachim99@2 684 AC_MSG_RESULT(disabled)
joachim99@2 685 AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS
joachim99@2 686 ;;
joachim99@2 687 esac
joachim99@2 688
joachim99@2 689 KDE_CHECK_TYPES
joachim99@2 690 KDE_CHECK_LIBDL
joachim99@2 691 ])
joachim99@2 692
joachim99@2 693 dnl ------------------------------------------------------------------------
joachim99@2 694 dnl Find the header files and libraries for X-Windows. Extended the
joachim99@2 695 dnl macro AC_PATH_X
joachim99@2 696 dnl ------------------------------------------------------------------------
joachim99@2 697 dnl
joachim99@2 698 AC_DEFUN(K_PATH_X,
joachim99@2 699 [
joachim99@2 700 AC_REQUIRE([KDE_MISC_TESTS])dnl
joachim99@2 701
joachim99@2 702 AC_ARG_ENABLE(
joachim99@2 703 embedded,
joachim99@2 704 [ --enable-embedded link to Qt-embedded, don't use X],
joachim99@2 705 kde_use_qt_emb=$enableval,
joachim99@2 706 kde_use_qt_emb=no
joachim99@2 707 )
joachim99@2 708
joachim99@2 709 AC_ARG_ENABLE(
joachim99@2 710 qtopia,
joachim99@2 711 [ --enable-qtopia link to Qt-embedded, link to the Qtopia Environment],
joachim99@2 712 kde_use_qt_emb_palm=$enableval,
joachim99@2 713 kde_use_qt_emb_palm=no
joachim99@2 714 )
joachim99@2 715
joachim99@2 716 if test "$kde_use_qt_emb" = "no"; then
joachim99@2 717
joachim99@2 718 AC_MSG_CHECKING(for X)
joachim99@2 719 AC_LANG_SAVE
joachim99@2 720 AC_LANG_C
joachim99@2 721 AC_CACHE_VAL(kde_cv_have_x,
joachim99@2 722 [# One or both of the vars are not set, and there is no cached value.
joachim99@2 723 if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then
joachim99@2 724 kde_x_includes=NO
joachim99@2 725 else
joachim99@2 726 kde_x_includes=$x_includes
joachim99@2 727 fi
joachim99@2 728 if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then
joachim99@2 729 kde_x_libraries=NO
joachim99@2 730 else
joachim99@2 731 kde_x_libraries=$x_libraries
joachim99@2 732 fi
joachim99@2 733
joachim99@2 734 # below we use the standard autoconf calls
joachim99@2 735 ac_x_libraries=$kde_x_libraries
joachim99@2 736 ac_x_includes=$kde_x_includes
joachim99@2 737
joachim99@2 738 KDE_PATH_X_DIRECT
joachim99@2 739 dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries.
joachim99@2 740 dnl Unfortunately, if compiling with the N32 ABI, this is not the correct
joachim99@2 741 dnl location. The correct location is /usr/lib32 or an undefined value
joachim99@2 742 dnl (the linker is smart enough to pick the correct default library).
joachim99@2 743 dnl Things work just fine if you use just AC_PATH_X_DIRECT.
joachim99@2 744 dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to
joachim99@2 745 dnl /usr/openwin/include, which doesn't work. /usr/include does work, so
joachim99@2 746 dnl x_includes should be left alone.
joachim99@2 747 case "$host" in
joachim99@2 748 mips-sgi-irix6*)
joachim99@2 749 ;;
joachim99@2 750 *-*-solaris*)
joachim99@2 751 ;;
joachim99@2 752 *)
joachim99@2 753 _AC_PATH_X_XMKMF
joachim99@2 754 if test -z "$ac_x_includes"; then
joachim99@2 755 ac_x_includes="."
joachim99@2 756 fi
joachim99@2 757 if test -z "$ac_x_libraries"; then
joachim99@2 758 ac_x_libraries="/usr/lib"
joachim99@2 759 fi
joachim99@2 760 esac
joachim99@2 761 #from now on we use our own again
joachim99@2 762
joachim99@2 763 # when the user already gave --x-includes, we ignore
joachim99@2 764 # what the standard autoconf macros told us.
joachim99@2 765 if test "$kde_x_includes" = NO; then
joachim99@2 766 kde_x_includes=$ac_x_includes
joachim99@2 767 fi
joachim99@2 768
joachim99@2 769 # for --x-libraries too
joachim99@2 770 if test "$kde_x_libraries" = NO; then
joachim99@2 771 kde_x_libraries=$ac_x_libraries
joachim99@2 772 fi
joachim99@2 773
joachim99@2 774 if test "$kde_x_includes" = NO; then
joachim99@2 775 AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!])
joachim99@2 776 fi
joachim99@2 777
joachim99@2 778 if test "$kde_x_libraries" = NO; then
joachim99@2 779 AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!])
joachim99@2 780 fi
joachim99@2 781
joachim99@2 782 # Record where we found X for the cache.
joachim99@2 783 kde_cv_have_x="have_x=yes \
joachim99@2 784 kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries"
joachim99@2 785 ])dnl
joachim99@2 786
joachim99@2 787 eval "$kde_cv_have_x"
joachim99@2 788
joachim99@2 789 if test "$have_x" != yes; then
joachim99@2 790 AC_MSG_RESULT($have_x)
joachim99@2 791 no_x=yes
joachim99@2 792 else
joachim99@2 793 AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes])
joachim99@2 794 fi
joachim99@2 795
joachim99@2 796 if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then
joachim99@2 797 X_INCLUDES=""
joachim99@2 798 x_includes="."; dnl better than nothing :-
joachim99@2 799 else
joachim99@2 800 x_includes=$kde_x_includes
joachim99@2 801 X_INCLUDES="-I$x_includes"
joachim99@2 802 fi
joachim99@2 803
joachim99@2 804 if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then
joachim99@2 805 X_LDFLAGS=""
joachim99@2 806 x_libraries="/usr/lib"; dnl better than nothing :-
joachim99@2 807 else
joachim99@2 808 x_libraries=$kde_x_libraries
joachim99@2 809 X_LDFLAGS="-L$x_libraries"
joachim99@2 810 fi
joachim99@2 811 all_includes="$X_INCLUDES"
joachim99@2 812 all_libraries="$X_LDFLAGS"
joachim99@2 813
joachim99@2 814 AC_SUBST(X_INCLUDES)
joachim99@2 815 AC_SUBST(X_LDFLAGS)
joachim99@2 816 AC_SUBST(x_libraries)
joachim99@2 817 AC_SUBST(x_includes)
joachim99@2 818
joachim99@2 819 # Check for libraries that X11R6 Xt/Xaw programs need.
joachim99@2 820 ac_save_LDFLAGS="$LDFLAGS"
joachim99@2 821 LDFLAGS="$LDFLAGS $X_LDFLAGS"
joachim99@2 822 # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
joachim99@2 823 # check for ICE first), but we must link in the order -lSM -lICE or
joachim99@2 824 # we get undefined symbols. So assume we have SM if we have ICE.
joachim99@2 825 # These have to be linked with before -lX11, unlike the other
joachim99@2 826 # libraries we check for below, so use a different variable.
joachim99@2 827 # --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
joachim99@2 828 AC_CHECK_LIB(ICE, IceConnectionNumber,
joachim99@2 829 [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS)
joachim99@2 830 AC_SUBST(LIBSM)
joachim99@2 831 LDFLAGS="$ac_save_LDFLAGS"
joachim99@2 832
joachim99@2 833 AC_SUBST(X_PRE_LIBS)
joachim99@2 834
joachim99@2 835 LIB_X11='-lX11 $(LIBSOCKET)'
joachim99@2 836 AC_SUBST(LIB_X11)
joachim99@2 837
joachim99@2 838 AC_MSG_CHECKING(for libXext)
joachim99@2 839 AC_CACHE_VAL(kde_cv_have_libXext,
joachim99@2 840 [
joachim99@2 841 kde_ldflags_safe="$LDFLAGS"
joachim99@2 842 kde_libs_safe="$LIBS"
joachim99@2 843
joachim99@2 844 LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS"
joachim99@2 845 LIBS="-lXext -lX11 $LIBSOCKET"
joachim99@2 846
joachim99@2 847 AC_TRY_LINK([
joachim99@2 848 #include <stdio.h>
joachim99@2 849 #ifdef STDC_HEADERS
joachim99@2 850 # include <stdlib.h>
joachim99@2 851 #endif
joachim99@2 852 ],
joachim99@2 853 [
joachim99@2 854 printf("hello Xext\n");
joachim99@2 855 ],
joachim99@2 856 kde_cv_have_libXext=yes,
joachim99@2 857 kde_cv_have_libXext=no
joachim99@2 858 )
joachim99@2 859
joachim99@2 860 LDFLAGS=$kde_ldflags_safe
joachim99@2 861 LIBS=$kde_libs_safe
joachim99@2 862 ])
joachim99@2 863
joachim99@2 864 AC_MSG_RESULT($kde_cv_have_libXext)
joachim99@2 865
joachim99@2 866 if test "$kde_cv_have_libXext" = "no"; then
joachim99@2 867 AC_MSG_ERROR([We need a working libXext to proceed. Since configure
joachim99@2 868 can't find it itself, we stop here assuming that make wouldn't find
joachim99@2 869 them either.])
joachim99@2 870 fi
joachim99@2 871
joachim99@2 872 AC_MSG_CHECKING(for Xinerama)
joachim99@2 873
joachim99@2 874 AC_ARG_WITH(xinerama,
joachim99@2 875 [ --with-xinerama enable support for Xinerama ],
joachim99@2 876 [
joachim99@2 877 no_xinerama=no
joachim99@2 878 ], [
joachim99@2 879 no_xinerama=yes
joachim99@2 880 ]
joachim99@2 881 )
joachim99@2 882
joachim99@2 883 kde_save_LDFLAGS="$LDFLAGS"
joachim99@2 884 kde_save_CFLAGS="$CFLAGS"
joachim99@2 885 kde_save_LIBS="$LIBS"
joachim99@2 886 LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS"
joachim99@2 887 CFLAGS="$CFLAGS -I$x_includes"
joachim99@2 888 LIBS="-lXinerama -lXext"
joachim99@2 889
joachim99@2 890 if test "x$no_xinerama" = "xno"; then
joachim99@2 891
joachim99@2 892 AC_CACHE_VAL(ac_cv_have_xinerama,
joachim99@2 893 [
joachim99@2 894 AC_TRY_LINK([#include <X11/Xlib.h>
joachim99@2 895 #include <X11/extensions/Xinerama.h>],
joachim99@2 896 [XineramaIsActive(NULL);],
joachim99@2 897 [ac_cv_have_xinerama="yes"],
joachim99@2 898 [ac_cv_have_xinerama="no"])
joachim99@2 899 ])
joachim99@2 900 else
joachim99@2 901 ac_cv_have_xinerama=no;
joachim99@2 902 fi
joachim99@2 903
joachim99@2 904 AC_MSG_RESULT($ac_cv_have_xinerama)
joachim99@2 905
joachim99@2 906 LIBXINERAMA=""
joachim99@2 907
joachim99@2 908 if test "$ac_cv_have_xinerama" = "yes"; then
joachim99@2 909 AC_DEFINE(HAVE_XINERAMA, 1, [Define if you want Xinerama support])
joachim99@2 910 LIBXINERAMA="-lXinerama"
joachim99@2 911 fi
joachim99@2 912
joachim99@2 913 AC_SUBST(LIBXINERAMA)
joachim99@2 914
joachim99@2 915 LDFLAGS="$kde_save_LDFLAGS"
joachim99@2 916 CFLAGS="$kde_save_CFLAGS"
joachim99@2 917 LIBS="$kde_save_LIBS"
joachim99@2 918
joachim99@2 919 LIB_XEXT="-lXext"
joachim99@2 920 QTE_NORTTI=""
joachim99@2 921
joachim99@2 922 else
joachim99@2 923 dnl We're using QT Embedded
joachim99@2 924 CXXFLAGS="$CXXFLAGS -fno-rtti -DQWS"
joachim99@2 925 CFLAGS="$CFLAGS -DQWS"
joachim99@2 926 LDFLAGS="$LDFLAGS -DQWS"
joachim99@2 927 QTE_NORTTI="-fno-rtti -DQWS"
joachim99@2 928 X_PRE_LIBS=""
joachim99@2 929 LIB_X11=""
joachim99@2 930 LIB_XEXT=""
joachim99@2 931 LIBSM=""
joachim99@2 932 X_INCLUDES=""
joachim99@2 933 X_LDFLAGS=""
joachim99@2 934 x_includes=""
joachim99@2 935 x_libraries=""
joachim99@2 936 AC_SUBST(X_PRE_LIBS)
joachim99@2 937 AC_SUBST(LIB_X11)
joachim99@2 938 AC_SUBST(LIBSM)
joachim99@2 939 AC_SUBST(X_INCLUDES)
joachim99@2 940 AC_SUBST(X_LDFLAGS)
joachim99@2 941 AC_SUBST(x_includes)
joachim99@2 942 AC_SUBST(x_libraries)
joachim99@2 943 fi
joachim99@2 944 AC_SUBST(QTE_NORTTI)
joachim99@2 945 AC_SUBST(LIB_XEXT)
joachim99@2 946
joachim99@2 947
joachim99@2 948 AC_LANG_RESTORE
joachim99@2 949
joachim99@2 950 ])
joachim99@2 951
joachim99@2 952 AC_DEFUN(KDE_PRINT_QT_PROGRAM,
joachim99@2 953 [
joachim99@2 954 AC_REQUIRE([KDE_USE_QT])
joachim99@2 955 cat > conftest.$ac_ext <<EOF
joachim99@2 956 #include "confdefs.h"
joachim99@2 957 #include <qglobal.h>
joachim99@2 958 #include <qapplication.h>
joachim99@2 959 EOF
joachim99@2 960 if test "$kde_qtver" = "2"; then
joachim99@2 961 cat >> conftest.$ac_ext <<EOF
joachim99@2 962 #include <qevent.h>
joachim99@2 963 #include <qstring.h>
joachim99@2 964 #include <qstyle.h>
joachim99@2 965 EOF
joachim99@2 966
joachim99@2 967 if test $kde_qtsubver -gt 0; then
joachim99@2 968 cat >> conftest.$ac_ext <<EOF
joachim99@2 969 #include <qiconview.h>
joachim99@2 970 EOF
joachim99@2 971 fi
joachim99@2 972 fi
joachim99@2 973
joachim99@2 974 if test "$kde_qtver" = "3"; then
joachim99@2 975 cat >> conftest.$ac_ext <<EOF
joachim99@2 976 #include <qcursor.h>
joachim99@2 977 #include <qstylefactory.h>
joachim99@2 978 #include <private/qucomextra_p.h>
joachim99@2 979 EOF
joachim99@2 980 fi
joachim99@2 981
joachim99@2 982 echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext
joachim99@2 983 cat >> conftest.$ac_ext <<EOF
joachim99@2 984 #error 1
joachim99@2 985 #endif
joachim99@2 986
joachim99@2 987 int main() {
joachim99@2 988 EOF
joachim99@2 989 if test "$kde_qtver" = "2"; then
joachim99@2 990 cat >> conftest.$ac_ext <<EOF
joachim99@2 991 QStringList *t = new QStringList();
joachim99@2 992 Q_UNUSED(t);
joachim99@2 993 EOF
joachim99@2 994 if test $kde_qtsubver -gt 0; then
joachim99@2 995 cat >> conftest.$ac_ext <<EOF
joachim99@2 996 QIconView iv(0);
joachim99@2 997 iv.setWordWrapIconText(false);
joachim99@2 998 QString s;
joachim99@2 999 s.setLatin1("Elvis is alive", 14);
joachim99@2 1000 EOF
joachim99@2 1001 fi
joachim99@2 1002 fi
joachim99@2 1003 if test "$kde_qtver" = "3"; then
joachim99@2 1004 cat >> conftest.$ac_ext <<EOF
joachim99@2 1005 (void)QStyleFactory::create(QString::null);
joachim99@2 1006 QCursor c(Qt::WhatsThisCursor);
joachim99@2 1007 EOF
joachim99@2 1008 fi
joachim99@2 1009 cat >> conftest.$ac_ext <<EOF
joachim99@2 1010 return 0;
joachim99@2 1011 }
joachim99@2 1012 EOF
joachim99@2 1013 ])
joachim99@2 1014
joachim99@2 1015 AC_DEFUN(KDE_USE_QT,
joachim99@2 1016 [
joachim99@2 1017 if test -z "$1"; then
joachim99@2 1018 kde_qtver=3
joachim99@2 1019 kde_qtsubver=1
joachim99@2 1020 else
joachim99@2 1021 kde_qtsubver=`echo "$1" | sed -e 's#[0-9][0-9]*\.\([0-9][0-9]*\).*#\1#'`
joachim99@2 1022 # following is the check if subversion isn´t found in passed argument
joachim99@2 1023 if test "$kde_qtsubver" = "$1"; then
joachim99@2 1024 kde_qtsubver=1
joachim99@2 1025 fi
joachim99@2 1026 kde_qtver=`echo "$1" | sed -e 's#^\([0-9][0-9]*\)\..*#\1#'`
joachim99@2 1027 if test "$kde_qtver" = "1"; then
joachim99@2 1028 kde_qtsubver=42
joachim99@2 1029 fi
joachim99@2 1030 fi
joachim99@2 1031
joachim99@2 1032 if test -z "$2"; then
joachim99@2 1033 if test "$kde_qtver" = "2"; then
joachim99@2 1034 if test $kde_qtsubver -gt 0; then
joachim99@2 1035 kde_qt_minversion=">= Qt 2.2.2"
joachim99@2 1036 else
joachim99@2 1037 kde_qt_minversion=">= Qt 2.0.2"
joachim99@2 1038 fi
joachim99@2 1039 fi
joachim99@2 1040 if test "$kde_qtver" = "3"; then
joachim99@2 1041 kde_qt_minversion=">= Qt 3.0.1"
joachim99@2 1042 fi
joachim99@2 1043 if test "$kde_qtver" = "1"; then
joachim99@2 1044 kde_qt_minversion=">= 1.42 and < 2.0"
joachim99@2 1045 fi
joachim99@2 1046 else
joachim99@2 1047 kde_qt_minversion=$2
joachim99@2 1048 fi
joachim99@2 1049
joachim99@2 1050 if test -z "$3"; then
joachim99@2 1051 if test $kde_qtver = 3; then
joachim99@2 1052 kde_qt_verstring="QT_VERSION >= 301"
joachim99@2 1053 fi
joachim99@2 1054 if test $kde_qtver = 2; then
joachim99@2 1055 if test $kde_qtsubver -gt 0; then
joachim99@2 1056 kde_qt_verstring="QT_VERSION >= 222"
joachim99@2 1057 else
joachim99@2 1058 kde_qt_verstring="QT_VERSION >= 200"
joachim99@2 1059 fi
joachim99@2 1060 fi
joachim99@2 1061 if test $kde_qtver = 1; then
joachim99@2 1062 kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200"
joachim99@2 1063 fi
joachim99@2 1064 else
joachim99@2 1065 kde_qt_verstring=$3
joachim99@2 1066 fi
joachim99@2 1067
joachim99@2 1068 if test $kde_qtver = 3; then
joachim99@2 1069 kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt"
joachim99@2 1070 fi
joachim99@2 1071 if test $kde_qtver = 2; then
joachim99@2 1072 kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt"
joachim99@2 1073 fi
joachim99@2 1074 if test $kde_qtver = 1; then
joachim99@2 1075 kde_qt_dirs="$QTDIR /usr/lib/qt"
joachim99@2 1076 fi
joachim99@2 1077 ])
joachim99@2 1078
joachim99@2 1079 AC_DEFUN(KDE_CHECK_QT_DIRECT,
joachim99@2 1080 [
joachim99@2 1081 AC_REQUIRE([KDE_USE_QT])
joachim99@2 1082 AC_MSG_CHECKING([if Qt compiles without flags])
joachim99@2 1083 AC_CACHE_VAL(kde_cv_qt_direct,
joachim99@2 1084 [
joachim99@2 1085 AC_LANG_SAVE
joachim99@2 1086 AC_LANG_CPLUSPLUS
joachim99@2 1087 ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH
joachim99@2 1088 ac_LIBRARY_PATH="$LIBRARY_PATH"
joachim99@2 1089 ac_cxxflags_safe="$CXXFLAGS"
joachim99@2 1090 ac_ldflags_safe="$LDFLAGS"
joachim99@2 1091 ac_libs_safe="$LIBS"
joachim99@2 1092
joachim99@2 1093 CXXFLAGS="$CXXFLAGS -I$qt_includes"
joachim99@2 1094 LDFLAGS="$LDFLAGS $X_LDFLAGS"
joachim99@2 1095 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 1096 LIBS="$LIBQT -lXext -lX11 $LIBSOCKET"
joachim99@2 1097 else
joachim99@2 1098 LIBS="$LIBQT $LIBSOCKET"
joachim99@2 1099 fi
joachim99@2 1100 LD_LIBRARY_PATH=
joachim99@2 1101 export LD_LIBRARY_PATH
joachim99@2 1102 LIBRARY_PATH=
joachim99@2 1103 export LIBRARY_PATH
joachim99@2 1104
joachim99@2 1105 KDE_PRINT_QT_PROGRAM
joachim99@2 1106
joachim99@2 1107 if AC_TRY_EVAL(ac_link) && test -s conftest; then
joachim99@2 1108 kde_cv_qt_direct="yes"
joachim99@2 1109 else
joachim99@2 1110 kde_cv_qt_direct="no"
joachim99@2 1111 echo "configure: failed program was:" >&AC_FD_CC
joachim99@2 1112 cat conftest.$ac_ext >&AC_FD_CC
joachim99@2 1113 fi
joachim99@2 1114
joachim99@2 1115 rm -f conftest*
joachim99@2 1116 CXXFLAGS="$ac_cxxflags_safe"
joachim99@2 1117 LDFLAGS="$ac_ldflags_safe"
joachim99@2 1118 LIBS="$ac_libs_safe"
joachim99@2 1119
joachim99@2 1120 LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe"
joachim99@2 1121 export LD_LIBRARY_PATH
joachim99@2 1122 LIBRARY_PATH="$ac_LIBRARY_PATH"
joachim99@2 1123 export LIBRARY_PATH
joachim99@2 1124 AC_LANG_RESTORE
joachim99@2 1125 ])
joachim99@2 1126
joachim99@2 1127 if test "$kde_cv_qt_direct" = "yes"; then
joachim99@2 1128 AC_MSG_RESULT(yes)
joachim99@2 1129 $1
joachim99@2 1130 else
joachim99@2 1131 AC_MSG_RESULT(no)
joachim99@2 1132 $2
joachim99@2 1133 fi
joachim99@2 1134 ])
joachim99@2 1135
joachim99@2 1136 dnl ------------------------------------------------------------------------
joachim99@2 1137 dnl Try to find the Qt headers and libraries.
joachim99@2 1138 dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed)
joachim99@2 1139 dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed)
joachim99@2 1140 dnl ------------------------------------------------------------------------
joachim99@2 1141 dnl
joachim99@2 1142 AC_DEFUN(AC_PATH_QT_1_3,
joachim99@2 1143 [
joachim99@2 1144 AC_REQUIRE([K_PATH_X])
joachim99@2 1145 AC_REQUIRE([KDE_USE_QT])
joachim99@2 1146
joachim99@2 1147 dnl ------------------------------------------------------------------------
joachim99@2 1148 dnl Add configure flag to enable linking to MT version of Qt library.
joachim99@2 1149 dnl ------------------------------------------------------------------------
joachim99@2 1150
joachim99@2 1151 AC_ARG_ENABLE(
joachim99@2 1152 mt,
joachim99@2 1153 [ --disable-mt link to non-threaded Qt (deprecated)],
joachim99@2 1154 kde_use_qt_mt=$enableval,
joachim99@2 1155 [
joachim99@2 1156 if test $kde_qtver = 3; then
joachim99@2 1157 kde_use_qt_mt=yes
joachim99@2 1158 else
joachim99@2 1159 kde_use_qt_mt=no
joachim99@2 1160 fi
joachim99@2 1161 ]
joachim99@2 1162 )
joachim99@2 1163
joachim99@2 1164 USING_QT_MT=""
joachim99@2 1165
joachim99@2 1166 dnl ------------------------------------------------------------------------
joachim99@2 1167 dnl If we not get --disable-qt-mt then adjust some vars for the host.
joachim99@2 1168 dnl ------------------------------------------------------------------------
joachim99@2 1169
joachim99@2 1170 KDE_MT_LDFLAGS=
joachim99@2 1171 KDE_MT_LIBS=
joachim99@2 1172 if test "x$kde_use_qt_mt" = "xyes"; then
joachim99@2 1173 KDE_CHECK_THREADING
joachim99@2 1174 if test "x$kde_use_threading" = "xyes"; then
joachim99@2 1175 CPPFLAGS="$USE_THREADS -DQT_THREAD_SUPPORT $CPPFLAGS"
joachim99@2 1176 KDE_MT_LDFLAGS="$USE_THREADS"
joachim99@2 1177 KDE_MT_LIBS="$LIBPTHREAD"
joachim99@2 1178 else
joachim99@2 1179 kde_use_qt_mt=no
joachim99@2 1180 fi
joachim99@2 1181 fi
joachim99@2 1182 AC_SUBST(KDE_MT_LDFLAGS)
joachim99@2 1183 AC_SUBST(KDE_MT_LIBS)
joachim99@2 1184
joachim99@2 1185 kde_qt_was_given=yes
joachim99@2 1186
joachim99@2 1187 dnl ------------------------------------------------------------------------
joachim99@2 1188 dnl If we haven't been told how to link to Qt, we work it out for ourselves.
joachim99@2 1189 dnl ------------------------------------------------------------------------
joachim99@2 1190 if test -z "$LIBQT_GLOB"; then
joachim99@2 1191 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 1192 LIBQT_GLOB="libqte.*"
joachim99@2 1193 else
joachim99@2 1194 LIBQT_GLOB="libqt.*"
joachim99@2 1195 fi
joachim99@2 1196 fi
joachim99@2 1197
joachim99@2 1198 if test -z "$LIBQT"; then
joachim99@2 1199 dnl ------------------------------------------------------------
joachim99@2 1200 dnl If we got --enable-embedded then adjust the Qt library name.
joachim99@2 1201 dnl ------------------------------------------------------------
joachim99@2 1202 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 1203 qtlib="qte"
joachim99@2 1204 else
joachim99@2 1205 qtlib="qt"
joachim99@2 1206 fi
joachim99@2 1207
joachim99@2 1208 kde_int_qt="-l$qtlib"
joachim99@2 1209 else
joachim99@2 1210 kde_int_qt="$LIBQT"
joachim99@2 1211 kde_lib_qt_set=yes
joachim99@2 1212 fi
joachim99@2 1213
joachim99@2 1214 if test -z "$LIBQPE"; then
joachim99@2 1215 dnl ------------------------------------------------------------
joachim99@2 1216 dnl If we got --enable-palmtop then add -lqpe to the link line
joachim99@2 1217 dnl ------------------------------------------------------------
joachim99@2 1218 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 1219 if test "x$kde_use_qt_emb_palm" = "xyes"; then
joachim99@2 1220 LIB_QPE="-lqpe"
joachim99@2 1221 else
joachim99@2 1222 LIB_QPE=""
joachim99@2 1223 fi
joachim99@2 1224 else
joachim99@2 1225 LIB_QPE=""
joachim99@2 1226 fi
joachim99@2 1227 fi
joachim99@2 1228
joachim99@2 1229 dnl ------------------------------------------------------------------------
joachim99@2 1230 dnl If we got --enable-qt-mt then adjust the Qt library name for the host.
joachim99@2 1231 dnl ------------------------------------------------------------------------
joachim99@2 1232
joachim99@2 1233 if test "x$kde_use_qt_mt" = "xyes"; then
joachim99@2 1234 if test -z "$LIBQT"; then
joachim99@2 1235 LIBQT="-l$qtlib-mt"
joachim99@2 1236 kde_int_qt="-l$qtlib-mt"
joachim99@2 1237 else
joachim99@2 1238 LIBQT="$qtlib-mt"
joachim99@2 1239 kde_int_qt="$qtlib-mt"
joachim99@2 1240 fi
joachim99@2 1241 LIBQT_GLOB="lib$qtlib-mt.*"
joachim99@2 1242 USING_QT_MT="using -mt"
joachim99@2 1243 else
joachim99@2 1244 LIBQT="-l$qtlib"
joachim99@2 1245 fi
joachim99@2 1246
joachim99@2 1247 if test $kde_qtver != 1; then
joachim99@2 1248
joachim99@2 1249 AC_REQUIRE([AC_FIND_PNG])
joachim99@2 1250 AC_REQUIRE([AC_FIND_JPEG])
joachim99@2 1251 LIBQT="$LIBQT $LIBPNG $LIBJPEG"
joachim99@2 1252 fi
joachim99@2 1253
joachim99@2 1254 if test $kde_qtver = 3; then
joachim99@2 1255 AC_REQUIRE([KDE_CHECK_LIBDL])
joachim99@2 1256 LIBQT="$LIBQT $LIBDL"
joachim99@2 1257 fi
joachim99@2 1258
joachim99@2 1259 AC_MSG_CHECKING([for Qt])
joachim99@2 1260
joachim99@2 1261 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 1262 LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET"
joachim99@2 1263 fi
joachim99@2 1264 ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO
joachim99@2 1265 qt_libraries=""
joachim99@2 1266 qt_includes=""
joachim99@2 1267 AC_ARG_WITH(qt-dir,
joachim99@2 1268 [ --with-qt-dir=DIR where the root of Qt is installed ],
joachim99@2 1269 [ ac_qt_includes="$withval"/include
joachim99@2 1270 ac_qt_libraries="$withval"/lib
joachim99@2 1271 ac_qt_bindir="$withval"/bin
joachim99@2 1272 ])
joachim99@2 1273
joachim99@2 1274 AC_ARG_WITH(qt-includes,
joachim99@2 1275 [ --with-qt-includes=DIR where the Qt includes are. ],
joachim99@2 1276 [
joachim99@2 1277 ac_qt_includes="$withval"
joachim99@2 1278 ])
joachim99@2 1279
joachim99@2 1280 kde_qt_libs_given=no
joachim99@2 1281
joachim99@2 1282 AC_ARG_WITH(qt-libraries,
joachim99@2 1283 [ --with-qt-libraries=DIR where the Qt library is installed.],
joachim99@2 1284 [ ac_qt_libraries="$withval"
joachim99@2 1285 kde_qt_libs_given=yes
joachim99@2 1286 ])
joachim99@2 1287
joachim99@2 1288 AC_CACHE_VAL(ac_cv_have_qt,
joachim99@2 1289 [#try to guess Qt locations
joachim99@2 1290
joachim99@2 1291 qt_incdirs=""
joachim99@2 1292 for dir in $kde_qt_dirs; do
joachim99@2 1293 qt_incdirs="$qt_incdirs $dir/include $dir"
joachim99@2 1294 done
joachim99@2 1295 qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 $x_includes"
joachim99@2 1296 if test ! "$ac_qt_includes" = "NO"; then
joachim99@2 1297 qt_incdirs="$ac_qt_includes $qt_incdirs"
joachim99@2 1298 fi
joachim99@2 1299
joachim99@2 1300 if test "$kde_qtver" != "1"; then
joachim99@2 1301 kde_qt_header=qstyle.h
joachim99@2 1302 else
joachim99@2 1303 kde_qt_header=qglobal.h
joachim99@2 1304 fi
joachim99@2 1305
joachim99@2 1306 AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir)
joachim99@2 1307 ac_qt_includes="$qt_incdir"
joachim99@2 1308
joachim99@2 1309 qt_libdirs=""
joachim99@2 1310 for dir in $kde_qt_dirs; do
joachim99@2 1311 qt_libdirs="$qt_libdirs $dir/lib $dir"
joachim99@2 1312 done
joachim99@2 1313 qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries"
joachim99@2 1314 if test ! "$ac_qt_libraries" = "NO"; then
joachim99@2 1315 qt_libdir=$ac_qt_libraries
joachim99@2 1316 else
joachim99@2 1317 qt_libdirs="$ac_qt_libraries $qt_libdirs"
joachim99@2 1318 # if the Qt was given, the chance is too big that libqt.* doesn't exist
joachim99@2 1319 qt_libdir=NONE
joachim99@2 1320 for dir in $qt_libdirs; do
joachim99@2 1321 try="ls -1 $dir/${LIBQT_GLOB}"
joachim99@2 1322 if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi
joachim99@2 1323 done
joachim99@2 1324 fi
joachim99@2 1325
joachim99@2 1326 ac_qt_libraries="$qt_libdir"
joachim99@2 1327
joachim99@2 1328 AC_LANG_SAVE
joachim99@2 1329 AC_LANG_CPLUSPLUS
joachim99@2 1330
joachim99@2 1331 ac_cxxflags_safe="$CXXFLAGS"
joachim99@2 1332 ac_ldflags_safe="$LDFLAGS"
joachim99@2 1333 ac_libs_safe="$LIBS"
joachim99@2 1334
joachim99@2 1335 CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
joachim99@2 1336 LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
joachim99@2 1337 LIBS="$LIBS $LIBQT $KDE_MT_LIBS"
joachim99@2 1338
joachim99@2 1339 KDE_PRINT_QT_PROGRAM
joachim99@2 1340
joachim99@2 1341 if AC_TRY_EVAL(ac_link) && test -s conftest; then
joachim99@2 1342 rm -f conftest*
joachim99@2 1343 else
joachim99@2 1344 echo "configure: failed program was:" >&AC_FD_CC
joachim99@2 1345 cat conftest.$ac_ext >&AC_FD_CC
joachim99@2 1346 ac_qt_libraries="NO"
joachim99@2 1347 fi
joachim99@2 1348 rm -f conftest*
joachim99@2 1349 CXXFLAGS="$ac_cxxflags_safe"
joachim99@2 1350 LDFLAGS="$ac_ldflags_safe"
joachim99@2 1351 LIBS="$ac_libs_safe"
joachim99@2 1352
joachim99@2 1353 AC_LANG_RESTORE
joachim99@2 1354 if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then
joachim99@2 1355 ac_cv_have_qt="have_qt=no"
joachim99@2 1356 ac_qt_notfound=""
joachim99@2 1357 missing_qt_mt=""
joachim99@2 1358 if test "$ac_qt_includes" = NO; then
joachim99@2 1359 if test "$ac_qt_libraries" = NO; then
joachim99@2 1360 ac_qt_notfound="(headers and libraries)";
joachim99@2 1361 else
joachim99@2 1362 ac_qt_notfound="(headers)";
joachim99@2 1363 fi
joachim99@2 1364 else
joachim99@2 1365 if test "x$kde_use_qt_mt" = "xyes"; then
joachim99@2 1366 missing_qt_mt="
joachim99@2 1367 Make sure that you have compiled Qt with thread support!"
joachim99@2 1368 ac_qt_notfound="(library $qtlib-mt)";
joachim99@2 1369 else
joachim99@2 1370 ac_qt_notfound="(library $qtlib)";
joachim99@2 1371 fi
joachim99@2 1372 fi
joachim99@2 1373
joachim99@2 1374 AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation!
joachim99@2 1375 For more details about this problem, look at the end of config.log.$missing_qt_mt])
joachim99@2 1376 else
joachim99@2 1377 have_qt="yes"
joachim99@2 1378 fi
joachim99@2 1379 ])
joachim99@2 1380
joachim99@2 1381 eval "$ac_cv_have_qt"
joachim99@2 1382
joachim99@2 1383 if test "$have_qt" != yes; then
joachim99@2 1384 AC_MSG_RESULT([$have_qt]);
joachim99@2 1385 else
joachim99@2 1386 ac_cv_have_qt="have_qt=yes \
joachim99@2 1387 ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries"
joachim99@2 1388 AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT])
joachim99@2 1389
joachim99@2 1390 qt_libraries="$ac_qt_libraries"
joachim99@2 1391 qt_includes="$ac_qt_includes"
joachim99@2 1392 fi
joachim99@2 1393
joachim99@2 1394 if test ! "$kde_qt_libs_given" = "yes"; then
joachim99@2 1395 KDE_CHECK_QT_DIRECT(qt_libraries= ,[])
joachim99@2 1396 fi
joachim99@2 1397
joachim99@2 1398 AC_SUBST(qt_libraries)
joachim99@2 1399 AC_SUBST(qt_includes)
joachim99@2 1400
joachim99@2 1401 if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then
joachim99@2 1402 QT_INCLUDES=""
joachim99@2 1403 else
joachim99@2 1404 QT_INCLUDES="-I$qt_includes"
joachim99@2 1405 all_includes="$QT_INCLUDES $all_includes"
joachim99@2 1406 fi
joachim99@2 1407
joachim99@2 1408 if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then
joachim99@2 1409 QT_LDFLAGS=""
joachim99@2 1410 else
joachim99@2 1411 QT_LDFLAGS="-L$qt_libraries"
joachim99@2 1412 all_libraries="$all_libraries $QT_LDFLAGS"
joachim99@2 1413 fi
joachim99@2 1414 test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS"
joachim99@2 1415
joachim99@2 1416 AC_SUBST(QT_INCLUDES)
joachim99@2 1417 AC_SUBST(QT_LDFLAGS)
joachim99@2 1418 AC_PATH_QT_MOC_UIC
joachim99@2 1419
joachim99@2 1420 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 1421 LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG) -lXext $(LIB_X11) $(LIBSM)'
joachim99@2 1422 else
joachim99@2 1423 LIB_QT="$kde_int_qt "'$(LIBPNG) $(LIBJPEG)'
joachim99@2 1424 fi
joachim99@2 1425 test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS"
joachim99@2 1426
joachim99@2 1427 AC_SUBST(LIB_QT)
joachim99@2 1428 AC_SUBST(LIB_QPE)
joachim99@2 1429
joachim99@2 1430 AC_SUBST(kde_qtver)
joachim99@2 1431 ])
joachim99@2 1432
joachim99@2 1433 AC_DEFUN(AC_PATH_QT,
joachim99@2 1434 [
joachim99@2 1435 AC_PATH_QT_1_3
joachim99@2 1436 ])
joachim99@2 1437
joachim99@2 1438 AC_DEFUN(KDE_CHECK_FINAL,
joachim99@2 1439 [
joachim99@2 1440 AC_ARG_ENABLE(final, [ --enable-final build size optimized apps (experimental - needs lots of memory)],
joachim99@2 1441 kde_use_final=$enableval, kde_use_final=no)
joachim99@2 1442
joachim99@2 1443 KDE_COMPILER_REPO
joachim99@2 1444 if test "x$kde_use_final" = "xyes"; then
joachim99@2 1445 KDE_USE_FINAL_TRUE=""
joachim99@2 1446 KDE_USE_FINAL_FALSE="#"
joachim99@2 1447 else
joachim99@2 1448 KDE_USE_FINAL_TRUE="#"
joachim99@2 1449 KDE_USE_FINAL_FALSE=""
joachim99@2 1450 fi
joachim99@2 1451 AC_SUBST(KDE_USE_FINAL_TRUE)
joachim99@2 1452 AC_SUBST(KDE_USE_FINAL_FALSE)
joachim99@2 1453
joachim99@2 1454 AC_ARG_ENABLE(closure, [ --disable-closure don't delay template instantiation],
joachim99@2 1455 kde_use_closure=$enableval, kde_use_closure=yes)
joachim99@2 1456
joachim99@2 1457 if test "x$kde_use_closure" = "xyes"; then
joachim99@2 1458 KDE_USE_CLOSURE_TRUE=""
joachim99@2 1459 KDE_USE_CLOSURE_FALSE="#"
joachim99@2 1460 # CXXFLAGS="$CXXFLAGS $REPO"
joachim99@2 1461 else
joachim99@2 1462 KDE_USE_CLOSURE_TRUE="#"
joachim99@2 1463 KDE_USE_CLOSURE_FALSE=""
joachim99@2 1464 fi
joachim99@2 1465 AC_SUBST(KDE_USE_CLOSURE_TRUE)
joachim99@2 1466 AC_SUBST(KDE_USE_CLOSURE_FALSE)
joachim99@2 1467 ])
joachim99@2 1468
joachim99@2 1469 dnl ------------------------------------------------------------------------
joachim99@2 1470 dnl Now, the same with KDE
joachim99@2 1471 dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed)
joachim99@2 1472 dnl and $(kde_includes) will be the kdehdrlocation (if needed)
joachim99@2 1473 dnl ------------------------------------------------------------------------
joachim99@2 1474 dnl
joachim99@2 1475 AC_DEFUN(AC_BASE_PATH_KDE,
joachim99@2 1476 [
joachim99@2 1477 AC_PREREQ([2.13])
joachim99@2 1478 AC_REQUIRE([AC_PATH_QT])dnl
joachim99@2 1479 AC_CHECK_RPATH
joachim99@2 1480 AC_MSG_CHECKING([for KDE])
joachim99@2 1481
joachim99@2 1482 if test "${prefix}" != NONE; then
joachim99@2 1483 kde_includes=${prefix}/include
joachim99@2 1484 ac_kde_includes=$prefix/include
joachim99@2 1485
joachim99@2 1486 if test "${exec_prefix}" != NONE; then
joachim99@2 1487 kde_libraries=${exec_prefix}/lib
joachim99@2 1488 ac_kde_libraries=$exec_prefix/lib
joachim99@2 1489 else
joachim99@2 1490 kde_libraries=${prefix}/lib
joachim99@2 1491 ac_kde_libraries=$prefix/lib
joachim99@2 1492 fi
joachim99@2 1493 else
joachim99@2 1494 ac_kde_includes=
joachim99@2 1495 ac_kde_libraries=
joachim99@2 1496 kde_libraries=""
joachim99@2 1497 kde_includes=""
joachim99@2 1498 fi
joachim99@2 1499
joachim99@2 1500 AC_CACHE_VAL(ac_cv_have_kde,
joachim99@2 1501 [#try to guess kde locations
joachim99@2 1502
joachim99@2 1503 if test "$kde_qtver" = 1; then
joachim99@2 1504 kde_check_header="ksock.h"
joachim99@2 1505 kde_check_lib="libkdecore.la"
joachim99@2 1506 else
joachim99@2 1507 kde_check_header="ksharedptr.h"
joachim99@2 1508 kde_check_lib="libkio.la"
joachim99@2 1509 fi
joachim99@2 1510
joachim99@2 1511 if test -z "$1"; then
joachim99@2 1512
joachim99@2 1513 kde_incdirs="/usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde3/include /opt/kde/include $x_includes $qt_includes"
joachim99@2 1514 test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs"
joachim99@2 1515 kde_incdirs="$ac_kde_includes $kde_incdirs"
joachim99@2 1516 AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir)
joachim99@2 1517 ac_kde_includes="$kde_incdir"
joachim99@2 1518
joachim99@2 1519 if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then
joachim99@2 1520 AC_MSG_ERROR([
joachim99@2 1521 in the prefix, you've chosen, are no KDE headers installed. This will fail.
joachim99@2 1522 So, check this please and use another prefix!])
joachim99@2 1523 fi
joachim99@2 1524
joachim99@2 1525 kde_libdirs="/usr/lib/kde/lib /usr/local/kde/lib /usr/kde/lib /usr/lib/kde /usr/lib/kde3 /usr/lib /usr/X11R6/lib /usr/local/lib /opt/kde3/lib /opt/kde/lib /usr/X11R6/kde/lib"
joachim99@2 1526 test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib $KDEDIR $kde_libdirs"
joachim99@2 1527 kde_libdirs="$ac_kde_libraries $kde_libdirs"
joachim99@2 1528 AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir)
joachim99@2 1529 ac_kde_libraries="$kde_libdir"
joachim99@2 1530
joachim99@2 1531 if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then
joachim99@2 1532 AC_MSG_ERROR([
joachim99@2 1533 in the prefix, you've chosen, are no KDE libraries installed. This will fail.
joachim99@2 1534 So, check this please and use another prefix!])
joachim99@2 1535 fi
joachim99@2 1536 ac_kde_libraries="$kde_libdir"
joachim99@2 1537
joachim99@2 1538 if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO; then
joachim99@2 1539 ac_cv_have_kde="have_kde=no"
joachim99@2 1540 else
joachim99@2 1541 ac_cv_have_kde="have_kde=yes \
joachim99@2 1542 ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
joachim99@2 1543 fi
joachim99@2 1544
joachim99@2 1545 else dnl test -z $1
joachim99@2 1546
joachim99@2 1547 ac_cv_have_kde="have_kde=no"
joachim99@2 1548
joachim99@2 1549 fi
joachim99@2 1550 ])dnl
joachim99@2 1551
joachim99@2 1552 eval "$ac_cv_have_kde"
joachim99@2 1553
joachim99@2 1554 if test "$have_kde" != "yes"; then
joachim99@2 1555 if test "${prefix}" = NONE; then
joachim99@2 1556 ac_kde_prefix="$ac_default_prefix"
joachim99@2 1557 else
joachim99@2 1558 ac_kde_prefix="$prefix"
joachim99@2 1559 fi
joachim99@2 1560 if test "$exec_prefix" = NONE; then
joachim99@2 1561 ac_kde_exec_prefix="$ac_kde_prefix"
joachim99@2 1562 AC_MSG_RESULT([will be installed in $ac_kde_prefix])
joachim99@2 1563 else
joachim99@2 1564 ac_kde_exec_prefix="$exec_prefix"
joachim99@2 1565 AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix])
joachim99@2 1566 fi
joachim99@2 1567
joachim99@2 1568 kde_libraries="${ac_kde_exec_prefix}/lib"
joachim99@2 1569 kde_includes=${ac_kde_prefix}/include
joachim99@2 1570
joachim99@2 1571 else
joachim99@2 1572 ac_cv_have_kde="have_kde=yes \
joachim99@2 1573 ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
joachim99@2 1574 AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes])
joachim99@2 1575
joachim99@2 1576 kde_libraries="$ac_kde_libraries"
joachim99@2 1577 kde_includes="$ac_kde_includes"
joachim99@2 1578 fi
joachim99@2 1579 AC_SUBST(kde_libraries)
joachim99@2 1580 AC_SUBST(kde_includes)
joachim99@2 1581
joachim99@2 1582 if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then
joachim99@2 1583 KDE_INCLUDES=""
joachim99@2 1584 else
joachim99@2 1585 KDE_INCLUDES="-I$kde_includes"
joachim99@2 1586 all_includes="$KDE_INCLUDES $all_includes"
joachim99@2 1587 fi
joachim99@2 1588
joachim99@2 1589 KDE_LDFLAGS="-L$kde_libraries"
joachim99@2 1590 if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then
joachim99@2 1591 all_libraries="$all_libraries $KDE_LDFLAGS"
joachim99@2 1592 fi
joachim99@2 1593
joachim99@2 1594 AC_SUBST(KDE_LDFLAGS)
joachim99@2 1595 AC_SUBST(KDE_INCLUDES)
joachim99@2 1596
joachim99@2 1597 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 1598
joachim99@2 1599 all_libraries="$all_libraries $USER_LDFLAGS"
joachim99@2 1600 all_includes="$all_includes $USER_INCLUDES"
joachim99@2 1601 AC_SUBST(all_includes)
joachim99@2 1602 AC_SUBST(all_libraries)
joachim99@2 1603
joachim99@2 1604 AC_SUBST(AUTODIRS)
joachim99@2 1605 ])
joachim99@2 1606
joachim99@2 1607 AC_DEFUN(KDE_CHECK_EXTRA_LIBS,
joachim99@2 1608 [
joachim99@2 1609 AC_MSG_CHECKING(for extra includes)
joachim99@2 1610 AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR
joachim99@2 1611 adds non standard include paths],
joachim99@2 1612 kde_use_extra_includes="$withval",
joachim99@2 1613 kde_use_extra_includes=NONE
joachim99@2 1614 )
joachim99@2 1615 kde_extra_includes=
joachim99@2 1616 if test -n "$kde_use_extra_includes" && \
joachim99@2 1617 test "$kde_use_extra_includes" != "NONE"; then
joachim99@2 1618
joachim99@2 1619 ac_save_ifs=$IFS
joachim99@2 1620 IFS=':'
joachim99@2 1621 for dir in $kde_use_extra_includes; do
joachim99@2 1622 kde_extra_includes="$kde_extra_includes $dir"
joachim99@2 1623 USER_INCLUDES="$USER_INCLUDES -I$dir"
joachim99@2 1624 done
joachim99@2 1625 IFS=$ac_save_ifs
joachim99@2 1626 kde_use_extra_includes="added"
joachim99@2 1627 else
joachim99@2 1628 kde_use_extra_includes="no"
joachim99@2 1629 fi
joachim99@2 1630 AC_SUBST(USER_INCLUDES)
joachim99@2 1631
joachim99@2 1632 AC_MSG_RESULT($kde_use_extra_includes)
joachim99@2 1633
joachim99@2 1634 kde_extra_libs=
joachim99@2 1635 AC_MSG_CHECKING(for extra libs)
joachim99@2 1636 AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths],
joachim99@2 1637 kde_use_extra_libs=$withval,
joachim99@2 1638 kde_use_extra_libs=NONE
joachim99@2 1639 )
joachim99@2 1640 if test -n "$kde_use_extra_libs" && \
joachim99@2 1641 test "$kde_use_extra_libs" != "NONE"; then
joachim99@2 1642
joachim99@2 1643 ac_save_ifs=$IFS
joachim99@2 1644 IFS=':'
joachim99@2 1645 for dir in $kde_use_extra_libs; do
joachim99@2 1646 kde_extra_libs="$kde_extra_libs $dir"
joachim99@2 1647 KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir"
joachim99@2 1648 USER_LDFLAGS="$USER_LDFLAGS -L$dir"
joachim99@2 1649 done
joachim99@2 1650 IFS=$ac_save_ifs
joachim99@2 1651 kde_use_extra_libs="added"
joachim99@2 1652 else
joachim99@2 1653 kde_use_extra_libs="no"
joachim99@2 1654 fi
joachim99@2 1655
joachim99@2 1656 AC_SUBST(USER_LDFLAGS)
joachim99@2 1657
joachim99@2 1658 AC_MSG_RESULT($kde_use_extra_libs)
joachim99@2 1659
joachim99@2 1660 ])
joachim99@2 1661
joachim99@2 1662 AC_DEFUN(KDE_1_CHECK_PATH_HEADERS,
joachim99@2 1663 [
joachim99@2 1664 AC_MSG_CHECKING([for KDE headers installed])
joachim99@2 1665 AC_LANG_SAVE
joachim99@2 1666 AC_LANG_CPLUSPLUS
joachim99@2 1667 cat > conftest.$ac_ext <<EOF
joachim99@2 1668 #ifdef STDC_HEADERS
joachim99@2 1669 # include <stdlib.h>
joachim99@2 1670 #endif
joachim99@2 1671 #include <stdio.h>
joachim99@2 1672 #include "confdefs.h"
joachim99@2 1673 #include <kapp.h>
joachim99@2 1674
joachim99@2 1675 int main() {
joachim99@2 1676 printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data());
joachim99@2 1677 printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data());
joachim99@2 1678 printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data());
joachim99@2 1679 printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data());
joachim99@2 1680 printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data());
joachim99@2 1681 printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data());
joachim99@2 1682 printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data());
joachim99@2 1683 printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data());
joachim99@2 1684 printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data());
joachim99@2 1685 printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data());
joachim99@2 1686 printf("kde_wallpaperdir=\\"%s\\"\n",
joachim99@2 1687 KApplication::kde_wallpaperdir().data());
joachim99@2 1688 printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data());
joachim99@2 1689 printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data());
joachim99@2 1690 printf("kde_servicesdir=\\"/tmp/dummy\\"\n");
joachim99@2 1691 printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n");
joachim99@2 1692 printf("kde_moduledir=\\"/tmp/dummy\\"\n");
joachim99@2 1693 printf("kde_styledir=\\"/tmp/dummy\\"\n");
joachim99@2 1694 printf("kde_widgetdir=\\"/tmp/dummy\\"\n");
joachim99@2 1695 return 0;
joachim99@2 1696 }
joachim99@2 1697 EOF
joachim99@2 1698
joachim99@2 1699 ac_compile='${CXX-g++} -c $CXXFLAGS $all_includes $CPPFLAGS conftest.$ac_ext'
joachim99@2 1700 if AC_TRY_EVAL(ac_compile); then
joachim99@2 1701 AC_MSG_RESULT(yes)
joachim99@2 1702 else
joachim99@2 1703 AC_MSG_ERROR([your system is not able to compile a small KDE application!
joachim99@2 1704 Check, if you installed the KDE header files correctly.
joachim99@2 1705 For more details about this problem, look at the end of config.log.])
joachim99@2 1706 fi
joachim99@2 1707
joachim99@2 1708 AC_LANG_RESTORE
joachim99@2 1709 ])
joachim99@2 1710
joachim99@2 1711 AC_DEFUN(KDE_CHECK_KDEQTADDON,
joachim99@2 1712 [
joachim99@2 1713 AC_MSG_CHECKING(for kde-qt-addon)
joachim99@2 1714 AC_CACHE_VAL(kde_cv_have_kdeqtaddon,
joachim99@2 1715 [
joachim99@2 1716 kde_ldflags_safe="$LDFLAGS"
joachim99@2 1717 kde_libs_safe="$LIBS"
joachim99@2 1718 kde_cxxflags_safe="$CXXFLAGS"
joachim99@2 1719
joachim99@2 1720 LIBS="-lkde-qt-addon $LIBQT $LIBS"
joachim99@2 1721 CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes"
joachim99@2 1722 LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS"
joachim99@2 1723
joachim99@2 1724 AC_TRY_LINK([
joachim99@2 1725 #include <qdom.h>
joachim99@2 1726 ],
joachim99@2 1727 [
joachim99@2 1728 QDomDocument doc;
joachim99@2 1729 ],
joachim99@2 1730 kde_cv_have_kdeqtaddon=yes,
joachim99@2 1731 kde_cv_have_kdeqtaddon=no
joachim99@2 1732 )
joachim99@2 1733
joachim99@2 1734 LDFLAGS=$kde_ldflags_safe
joachim99@2 1735 LIBS=$kde_libs_safe
joachim99@2 1736 kde_cxxflags_safe="$CXXFLAGS"
joachim99@2 1737 ])
joachim99@2 1738
joachim99@2 1739 AC_MSG_RESULT($kde_cv_have_kdeqtaddon)
joachim99@2 1740
joachim99@2 1741 if test "$kde_cv_have_kdeqtaddon" = "no"; then
joachim99@2 1742 AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first.
joachim99@2 1743 It is a separate package (and CVS module) named kde-qt-addon.])
joachim99@2 1744 fi
joachim99@2 1745 ])
joachim99@2 1746
joachim99@2 1747 AC_DEFUN(KDE_CHECK_KIMGIO,
joachim99@2 1748 [
joachim99@2 1749 AC_REQUIRE([AC_BASE_PATH_KDE])
joachim99@2 1750 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 1751 AC_REQUIRE([AC_FIND_TIFF])
joachim99@2 1752 AC_REQUIRE([AC_FIND_JPEG])
joachim99@2 1753 AC_REQUIRE([AC_FIND_PNG])
joachim99@2 1754 AC_REQUIRE([KDE_CREATE_LIBS_ALIASES])
joachim99@2 1755
joachim99@2 1756 if test "$1" = "existance"; then
joachim99@2 1757 AC_LANG_SAVE
joachim99@2 1758 AC_LANG_CPLUSPLUS
joachim99@2 1759 kde_save_LIBS="$LIBS"
joachim99@2 1760 LIBS="$LIBS $all_libraries $LIBJPEG $LIBTIFF $LIBPNG $LIBQT -lm"
joachim99@2 1761 AC_CHECK_LIB(kimgio, kimgioRegister, [
joachim99@2 1762 LIBKIMGIO_EXISTS=yes],LIBKIMGIO_EXISTS=no)
joachim99@2 1763 LIBS="$kde_save_LIBS"
joachim99@2 1764 AC_LANG_RESTORE
joachim99@2 1765 else
joachim99@2 1766 LIBKIMGIO_EXISTS=yes
joachim99@2 1767 fi
joachim99@2 1768
joachim99@2 1769 if test "$LIBKIMGIO_EXISTS" = "yes"; then
joachim99@2 1770 LIB_KIMGIO='-lkimgio'
joachim99@2 1771 else
joachim99@2 1772 LIB_KIMGIO=''
joachim99@2 1773 fi
joachim99@2 1774 AC_SUBST(LIB_KIMGIO)
joachim99@2 1775 ])
joachim99@2 1776
joachim99@2 1777 AC_DEFUN(KDE_CREATE_LIBS_ALIASES,
joachim99@2 1778 [
joachim99@2 1779 AC_REQUIRE([KDE_MISC_TESTS])
joachim99@2 1780 AC_REQUIRE([KDE_CHECK_LIBDL])
joachim99@2 1781 AC_REQUIRE([K_PATH_X])
joachim99@2 1782
joachim99@2 1783 if test $kde_qtver = 3; then
joachim99@2 1784 LIB_KDECORE='-lkdecore'
joachim99@2 1785 AC_SUBST(LIB_KDECORE)
joachim99@2 1786 LIB_KDEUI='-lkdeui'
joachim99@2 1787 AC_SUBST(LIB_KDEUI)
joachim99@2 1788 LIB_KIO='-lkio'
joachim99@2 1789 AC_SUBST(LIB_KIO)
joachim99@2 1790 LIB_SMB='-lsmb'
joachim99@2 1791 AC_SUBST(LIB_SMB)
joachim99@2 1792 LIB_KAB='-lkab'
joachim99@2 1793 AC_SUBST(LIB_KAB)
joachim99@2 1794 LIB_KHTML='-lkhtml'
joachim99@2 1795 AC_SUBST(LIB_KHTML)
joachim99@2 1796 LIB_KSPELL='-lkspell'
joachim99@2 1797 AC_SUBST(LIB_KSPELL)
joachim99@2 1798 LIB_KPARTS='-lkparts'
joachim99@2 1799 AC_SUBST(LIB_KPARTS)
joachim99@2 1800 LIB_KDEPRINT='-lkdeprint'
joachim99@2 1801 AC_SUBST(LIB_KDEPRINT)
joachim99@2 1802 # these are for backward compatibility
joachim99@2 1803 LIB_KSYCOCA='-lkio'
joachim99@2 1804 AC_SUBST(LIB_KSYCOCA)
joachim99@2 1805 LIB_KFILE='-lkio'
joachim99@2 1806 AC_SUBST(LIB_KFILE)
joachim99@2 1807 elif test $kde_qtver = 2; then
joachim99@2 1808 LIB_KDECORE='-lkdecore'
joachim99@2 1809 AC_SUBST(LIB_KDECORE)
joachim99@2 1810 LIB_KDEUI='-lkdeui'
joachim99@2 1811 AC_SUBST(LIB_KDEUI)
joachim99@2 1812 LIB_KIO='-lkio'
joachim99@2 1813 AC_SUBST(LIB_KIO)
joachim99@2 1814 LIB_KSYCOCA='-lksycoca'
joachim99@2 1815 AC_SUBST(LIB_KSYCOCA)
joachim99@2 1816 LIB_SMB='-lsmb'
joachim99@2 1817 AC_SUBST(LIB_SMB)
joachim99@2 1818 LIB_KFILE='-lkfile'
joachim99@2 1819 AC_SUBST(LIB_KFILE)
joachim99@2 1820 LIB_KAB='-lkab'
joachim99@2 1821 AC_SUBST(LIB_KAB)
joachim99@2 1822 LIB_KHTML='-lkhtml'
joachim99@2 1823 AC_SUBST(LIB_KHTML)
joachim99@2 1824 LIB_KSPELL='-lkspell'
joachim99@2 1825 AC_SUBST(LIB_KSPELL)
joachim99@2 1826 LIB_KPARTS='-lkparts'
joachim99@2 1827 AC_SUBST(LIB_KPARTS)
joachim99@2 1828 LIB_KDEPRINT='-lkdeprint'
joachim99@2 1829 AC_SUBST(LIB_KDEPRINT)
joachim99@2 1830 else
joachim99@2 1831 LIB_KDECORE='-lkdecore -lXext $(LIB_QT)'
joachim99@2 1832 AC_SUBST(LIB_KDECORE)
joachim99@2 1833 LIB_KDEUI='-lkdeui $(LIB_KDECORE)'
joachim99@2 1834 AC_SUBST(LIB_KDEUI)
joachim99@2 1835 LIB_KFM='-lkfm $(LIB_KDECORE)'
joachim99@2 1836 AC_SUBST(LIB_KFM)
joachim99@2 1837 LIB_KFILE='-lkfile $(LIB_KFM) $(LIB_KDEUI)'
joachim99@2 1838 AC_SUBST(LIB_KFILE)
joachim99@2 1839 LIB_KAB='-lkab $(LIB_KIMGIO) $(LIB_KDECORE)'
joachim99@2 1840 AC_SUBST(LIB_KAB)
joachim99@2 1841 fi
joachim99@2 1842 ])
joachim99@2 1843
joachim99@2 1844 AC_DEFUN(AC_PATH_KDE,
joachim99@2 1845 [
joachim99@2 1846 AC_BASE_PATH_KDE
joachim99@2 1847 AC_ARG_ENABLE(path-check, [ --disable-path-check don't try to find out, where to install],
joachim99@2 1848 [
joachim99@2 1849 if test "$enableval" = "no";
joachim99@2 1850 then ac_use_path_checking="default"
joachim99@2 1851 else ac_use_path_checking=""
joachim99@2 1852 fi
joachim99@2 1853 ],
joachim99@2 1854 [
joachim99@2 1855 if test "$kde_qtver" = 1;
joachim99@2 1856 then ac_use_path_checking=""
joachim99@2 1857 else ac_use_path_checking="default"
joachim99@2 1858 fi
joachim99@2 1859 ]
joachim99@2 1860 )
joachim99@2 1861
joachim99@2 1862 AC_CREATE_KFSSTND($ac_use_path_checking)
joachim99@2 1863
joachim99@2 1864 AC_SUBST_KFSSTND
joachim99@2 1865 KDE_CREATE_LIBS_ALIASES
joachim99@2 1866 ])
joachim99@2 1867
joachim99@2 1868 dnl obsolete
joachim99@2 1869 AC_DEFUN(AC_CHECK_SETENV,
joachim99@2 1870 [
joachim99@2 1871 AC_OBSOLETE([$0], [; instead use AC_CHECK_FUNCS([setenv unsetenv])])dnl
joachim99@2 1872 AC_CHECK_FUNCS([setenv unsetenv])
joachim99@2 1873 ])
joachim99@2 1874
joachim99@2 1875 AC_DEFUN(AC_CHECK_GETDOMAINNAME,
joachim99@2 1876 [
joachim99@2 1877 AC_MSG_CHECKING(for getdomainname)
joachim99@2 1878 AC_CACHE_VAL(ac_cv_func_getdomainname,
joachim99@2 1879 [
joachim99@2 1880 AC_LANG_SAVE
joachim99@2 1881 AC_LANG_CPLUSPLUS
joachim99@2 1882 save_CXXFLAGS="$CXXFLAGS"
joachim99@2 1883 kde_safe_LIBS="$LIBS"
joachim99@2 1884 LIBS="$LIBS $X_EXTRA_LIBS"
joachim99@2 1885 if test "$GCC" = "yes"; then
joachim99@2 1886 CXXFLAGS="$CXXFLAGS -pedantic-errors"
joachim99@2 1887 fi
joachim99@2 1888 AC_TRY_COMPILE([
joachim99@2 1889 #include <stdlib.h>
joachim99@2 1890 #include <unistd.h>
joachim99@2 1891 ],
joachim99@2 1892 [
joachim99@2 1893 char buffer[200];
joachim99@2 1894 getdomainname(buffer, 200);
joachim99@2 1895 ],
joachim99@2 1896 ac_cv_func_getdomainname=yes,
joachim99@2 1897 ac_cv_func_getdomainname=no)
joachim99@2 1898 CXXFLAGS="$save_CXXFLAGS"
joachim99@2 1899 LIBS=$kde_safe_LIBS
joachim99@2 1900 AC_LANG_RESTORE
joachim99@2 1901 ])
joachim99@2 1902 AC_MSG_RESULT($ac_cv_func_getdomainname)
joachim99@2 1903
joachim99@2 1904 AC_MSG_CHECKING([if getdomainname needs custom prototype])
joachim99@2 1905 AC_CACHE_VAL(ac_cv_proto_getdomainname,
joachim99@2 1906 [
joachim99@2 1907 AC_LANG_SAVE
joachim99@2 1908 AC_LANG_CPLUSPLUS
joachim99@2 1909 if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then
joachim99@2 1910 ac_cv_proto_getdomainname=no
joachim99@2 1911 else
joachim99@2 1912 kde_safe_libs=$LIBS
joachim99@2 1913 LIBS="$LIBS $X_EXTRA_LIBS"
joachim99@2 1914 AC_TRY_LINK([
joachim99@2 1915 #include <stdlib.h>
joachim99@2 1916 #include <unistd.h>
joachim99@2 1917
joachim99@2 1918 extern "C" int getdomainname (char *, int);
joachim99@2 1919 ],
joachim99@2 1920 [
joachim99@2 1921 char buffer[200];
joachim99@2 1922 getdomainname(buffer, 200);
joachim99@2 1923 ],
joachim99@2 1924 ac_cv_func_getdomainname=yes
joachim99@2 1925 ac_cv_proto_getdomainname=yes,
joachim99@2 1926 AC_MSG_RESULT([fatal error])
joachim99@2 1927 AC_MSG_ERROR([getdomainname unavailable]))
joachim99@2 1928 fi
joachim99@2 1929 LIBS=$kde_safe_libs
joachim99@2 1930 AC_LANG_RESTORE
joachim99@2 1931 ])
joachim99@2 1932 AC_MSG_RESULT($ac_cv_proto_getdomainname)
joachim99@2 1933
joachim99@2 1934 if eval "test \"`echo $ac_cv_func_getdomainname`\" = yes"; then
joachim99@2 1935 AC_DEFINE(HAVE_GETDOMAINNAME, 1, [Define if you have getdomainname])
joachim99@2 1936 fi
joachim99@2 1937 if eval "test \"`echo $ac_cv_proto_getdomainname`\" = no"; then
joachim99@2 1938 AC_DEFINE(HAVE_GETDOMAINNAME_PROTO, 1,
joachim99@2 1939 [Define if you have getdomainname prototype])
joachim99@2 1940 fi
joachim99@2 1941
joachim99@2 1942 ])
joachim99@2 1943
joachim99@2 1944 AC_DEFUN(AC_CHECK_GETHOSTNAME,
joachim99@2 1945 [
joachim99@2 1946
joachim99@2 1947 AC_MSG_CHECKING([for gethostname])
joachim99@2 1948 AC_CACHE_VAL(ac_cv_func_gethostname,
joachim99@2 1949 [
joachim99@2 1950 AC_LANG_SAVE
joachim99@2 1951 AC_LANG_CPLUSPLUS
joachim99@2 1952 save_CXXFLAGS="$CXXFLAGS"
joachim99@2 1953 if test "$GCC" = "yes"; then
joachim99@2 1954 CXXFLAGS="$CXXFLAGS -pedantic-errors"
joachim99@2 1955 fi
joachim99@2 1956 AC_TRY_LINK([
joachim99@2 1957 #include <stdlib.h>
joachim99@2 1958 #include <unistd.h>
joachim99@2 1959 ],
joachim99@2 1960 [
joachim99@2 1961 char buffer[200];
joachim99@2 1962 gethostname(buffer, 200);
joachim99@2 1963 ],
joachim99@2 1964 ac_cv_func_gethostname=yes,
joachim99@2 1965 ac_cv_func_gethostname=no)
joachim99@2 1966 CXXFLAGS="$save_CXXFLAGS"
joachim99@2 1967 AC_LANG_RESTORE
joachim99@2 1968 ])
joachim99@2 1969 AC_MSG_RESULT($ac_cv_func_gethostname)
joachim99@2 1970
joachim99@2 1971 AC_MSG_CHECKING([if gethostname needs custom prototype])
joachim99@2 1972 AC_CACHE_VAL(ac_cv_proto_gethostname,
joachim99@2 1973 [
joachim99@2 1974 AC_LANG_SAVE
joachim99@2 1975 AC_LANG_CPLUSPLUS
joachim99@2 1976 if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then
joachim99@2 1977 ac_cv_proto_gethostname=no
joachim99@2 1978 else
joachim99@2 1979 AC_TRY_LINK([
joachim99@2 1980 #include <stdlib.h>
joachim99@2 1981 #include <unistd.h>
joachim99@2 1982
joachim99@2 1983 extern "C" int gethostname (char *, int);
joachim99@2 1984 ],
joachim99@2 1985 [
joachim99@2 1986 char buffer[200];
joachim99@2 1987 gethostname(buffer, 200);
joachim99@2 1988 ],
joachim99@2 1989 ac_cv_func_gethostname=yes
joachim99@2 1990 ac_cv_proto_gethostname=yes,
joachim99@2 1991 AC_MSG_RESULT([fatal error])
joachim99@2 1992 AC_MSG_ERROR(gethostname unavailable))
joachim99@2 1993 fi
joachim99@2 1994 AC_LANG_RESTORE
joachim99@2 1995 ])
joachim99@2 1996 AC_MSG_RESULT($ac_cv_proto_gethostname)
joachim99@2 1997
joachim99@2 1998 if eval "test \"`echo $ac_cv_proto_gethostname`\" = no"; then
joachim99@2 1999 AC_DEFINE(HAVE_GETHOSTNAME_PROTO, 1,
joachim99@2 2000 [Define if you have gethostname prototype])
joachim99@2 2001 fi
joachim99@2 2002 if eval "test \"`echo $ac_cv_func_gethostname`\" = yes"; then
joachim99@2 2003 AC_DEFINE(HAVE_GETHOSTNAME, 1, [Define if you have gethostname])
joachim99@2 2004 fi
joachim99@2 2005 ])
joachim99@2 2006
joachim99@2 2007 AC_DEFUN(AC_CHECK_USLEEP,
joachim99@2 2008 [
joachim99@2 2009 AC_MSG_CHECKING([for usleep])
joachim99@2 2010 AC_CACHE_VAL(ac_cv_func_usleep,
joachim99@2 2011 [
joachim99@2 2012 AC_LANG_SAVE
joachim99@2 2013 AC_LANG_CPLUSPLUS
joachim99@2 2014 ac_libs_safe="$LIBS"
joachim99@2 2015 LIBS="$LIBS $LIBUCB"
joachim99@2 2016 AC_TRY_LINK([
joachim99@2 2017 #include <stdlib.h>
joachim99@2 2018 #include <unistd.h>
joachim99@2 2019 ],
joachim99@2 2020 [
joachim99@2 2021 usleep(200);
joachim99@2 2022 ],
joachim99@2 2023 ac_cv_func_usleep=yes,
joachim99@2 2024 ac_cv_func_usleep=no)
joachim99@2 2025 LIBS="$ac_libs_safe"
joachim99@2 2026 AC_LANG_RESTORE
joachim99@2 2027 ])
joachim99@2 2028 AC_MSG_RESULT($ac_cv_func_usleep)
joachim99@2 2029 if eval "test \"`echo $ac_cv_func_usleep`\" = yes"; then
joachim99@2 2030 AC_DEFINE(HAVE_USLEEP, 1, [Define if you have the usleep function])
joachim99@2 2031 fi
joachim99@2 2032 ])
joachim99@2 2033
joachim99@2 2034 AC_DEFUN(AC_CHECK_RANDOM,
joachim99@2 2035 [
joachim99@2 2036 AC_MSG_CHECKING([for random])
joachim99@2 2037 AC_CACHE_VAL(ac_cv_func_random,
joachim99@2 2038 [
joachim99@2 2039 AC_LANG_SAVE
joachim99@2 2040 AC_LANG_CPLUSPLUS
joachim99@2 2041 ac_libs_safe="$LIBS"
joachim99@2 2042 LIBS="$LIBS $LIBUCB"
joachim99@2 2043 AC_TRY_LINK([
joachim99@2 2044 #include <stdlib.h>
joachim99@2 2045 ],
joachim99@2 2046 [
joachim99@2 2047 random();
joachim99@2 2048 ],
joachim99@2 2049 ac_cv_func_random=yes,
joachim99@2 2050 ac_cv_func_random=no)
joachim99@2 2051 LIBS="$ac_libs_safe"
joachim99@2 2052 AC_LANG_RESTORE
joachim99@2 2053 ])
joachim99@2 2054 AC_MSG_RESULT($ac_cv_func_random)
joachim99@2 2055 if eval "test \"`echo $ac_cv_func_random`\" = yes"; then
joachim99@2 2056 AC_DEFINE(HAVE_RANDOM, 1, [Define if you have random])
joachim99@2 2057 fi
joachim99@2 2058 ])
joachim99@2 2059
joachim99@2 2060 AC_DEFUN(AC_FIND_GIF,
joachim99@2 2061 [AC_MSG_CHECKING([for giflib])
joachim99@2 2062 AC_CACHE_VAL(ac_cv_lib_gif,
joachim99@2 2063 [ac_save_LIBS="$LIBS"
joachim99@2 2064 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 2065 LIBS="$all_libraries -lgif -lX11 $LIBSOCKET"
joachim99@2 2066 else
joachim99@2 2067 LIBS="$all_libraries -lgif"
joachim99@2 2068 fi
joachim99@2 2069 AC_TRY_LINK(dnl
joachim99@2 2070 [
joachim99@2 2071 #ifdef __cplusplus
joachim99@2 2072 extern "C" {
joachim99@2 2073 #endif
joachim99@2 2074 int GifLastError(void);
joachim99@2 2075 #ifdef __cplusplus
joachim99@2 2076 }
joachim99@2 2077 #endif
joachim99@2 2078 /* We use char because int might match the return type of a gcc2
joachim99@2 2079 builtin and then its argument prototype would still apply. */
joachim99@2 2080 ],
joachim99@2 2081 [return GifLastError();],
joachim99@2 2082 eval "ac_cv_lib_gif=yes",
joachim99@2 2083 eval "ac_cv_lib_gif=no")
joachim99@2 2084 LIBS="$ac_save_LIBS"
joachim99@2 2085 ])dnl
joachim99@2 2086 if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then
joachim99@2 2087 AC_MSG_RESULT(yes)
joachim99@2 2088 AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif])
joachim99@2 2089 else
joachim99@2 2090 AC_MSG_ERROR(You need giflib30. Please install the kdesupport package)
joachim99@2 2091 fi
joachim99@2 2092 ])
joachim99@2 2093
joachim99@2 2094 AC_DEFUN(KDE_FIND_JPEG_HELPER,
joachim99@2 2095 [
joachim99@2 2096 AC_MSG_CHECKING([for libjpeg$2])
joachim99@2 2097 AC_CACHE_VAL(ac_cv_lib_jpeg_$1,
joachim99@2 2098 [
joachim99@2 2099 AC_LANG_C
joachim99@2 2100 ac_save_LIBS="$LIBS"
joachim99@2 2101 LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm"
joachim99@2 2102 ac_save_CFLAGS="$CFLAGS"
joachim99@2 2103 CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
joachim99@2 2104 AC_TRY_LINK(
joachim99@2 2105 [/* Override any gcc2 internal prototype to avoid an error. */
joachim99@2 2106 struct jpeg_decompress_struct;
joachim99@2 2107 typedef struct jpeg_decompress_struct * j_decompress_ptr;
joachim99@2 2108 typedef int size_t;
joachim99@2 2109 #ifdef __cplusplus
joachim99@2 2110 extern "C" {
joachim99@2 2111 #endif
joachim99@2 2112 void jpeg_CreateDecompress(j_decompress_ptr cinfo,
joachim99@2 2113 int version, size_t structsize);
joachim99@2 2114 #ifdef __cplusplus
joachim99@2 2115 }
joachim99@2 2116 #endif
joachim99@2 2117 /* We use char because int might match the return type of a gcc2
joachim99@2 2118 builtin and then its argument prototype would still apply. */
joachim99@2 2119 ],
joachim99@2 2120 [jpeg_CreateDecompress(0L, 0, 0);],
joachim99@2 2121 eval "ac_cv_lib_jpeg_$1=-ljpeg$2",
joachim99@2 2122 eval "ac_cv_lib_jpeg_$1=no")
joachim99@2 2123 LIBS="$ac_save_LIBS"
joachim99@2 2124 CFLAGS="$ac_save_CFLAGS"
joachim99@2 2125 ])
joachim99@2 2126
joachim99@2 2127 if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then
joachim99@2 2128 LIBJPEG="$ac_cv_lib_jpeg_$1"
joachim99@2 2129 AC_MSG_RESULT($ac_cv_lib_jpeg_$1)
joachim99@2 2130 else
joachim99@2 2131 AC_MSG_RESULT(no)
joachim99@2 2132 $3
joachim99@2 2133 fi
joachim99@2 2134
joachim99@2 2135 ])
joachim99@2 2136
joachim99@2 2137 AC_DEFUN(AC_FIND_JPEG,
joachim99@2 2138 [
joachim99@2 2139 dnl first look for libraries
joachim99@2 2140 KDE_FIND_JPEG_HELPER(6b, 6b,
joachim99@2 2141 KDE_FIND_JPEG_HELPER(normal, [],
joachim99@2 2142 [
joachim99@2 2143 LIBJPEG=
joachim99@2 2144 ]
joachim99@2 2145 )
joachim99@2 2146 )
joachim99@2 2147
joachim99@2 2148 dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h
joachim99@2 2149 dnl requires system dependent includes loaded before it)
joachim99@2 2150 jpeg_incdirs="/usr/include /usr/local/include $kde_extra_includes"
joachim99@2 2151 AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir)
joachim99@2 2152 test "x$jpeg_incdir" = xNO && jpeg_incdir=
joachim99@2 2153
joachim99@2 2154 dnl if headers _and_ libraries are missing, this is no error, and we
joachim99@2 2155 dnl continue with a warning (the user will get no jpeg support in khtml)
joachim99@2 2156 dnl if only one is missing, it means a configuration error, but we still
joachim99@2 2157 dnl only warn
joachim99@2 2158 if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then
joachim99@2 2159 AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg])
joachim99@2 2160 else
joachim99@2 2161 if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then
joachim99@2 2162 AC_MSG_WARN([
joachim99@2 2163 There is an installation error in jpeg support. You seem to have only one
joachim99@2 2164 of either the headers _or_ the libraries installed. You may need to either
joachim99@2 2165 provide correct --with-extra-... options, or the development package of
joachim99@2 2166 libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/
joachim99@2 2167 Disabling JPEG support.
joachim99@2 2168 ])
joachim99@2 2169 else
joachim99@2 2170 AC_MSG_WARN([libjpeg not found. disable JPEG support.])
joachim99@2 2171 fi
joachim99@2 2172 jpeg_incdir=
joachim99@2 2173 LIBJPEG=
joachim99@2 2174 fi
joachim99@2 2175
joachim99@2 2176 AC_SUBST(LIBJPEG)
joachim99@2 2177 ])
joachim99@2 2178
joachim99@2 2179 AC_DEFUN(AC_FIND_ZLIB,
joachim99@2 2180 [
joachim99@2 2181 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 2182 AC_MSG_CHECKING([for libz])
joachim99@2 2183 AC_CACHE_VAL(ac_cv_lib_z,
joachim99@2 2184 [
joachim99@2 2185 AC_LANG_C
joachim99@2 2186 kde_save_LIBS="$LIBS"
joachim99@2 2187 LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET"
joachim99@2 2188 kde_save_CFLAGS="$CFLAGS"
joachim99@2 2189 CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
joachim99@2 2190 AC_TRY_LINK(dnl
joachim99@2 2191 [
joachim99@2 2192 #include<zlib.h>
joachim99@2 2193 ],
joachim99@2 2194 [return (zlibVersion() == ZLIB_VERSION); ],
joachim99@2 2195 eval "ac_cv_lib_z='-lz'",
joachim99@2 2196 eval "ac_cv_lib_z=no")
joachim99@2 2197 LIBS="$kde_save_LIBS"
joachim99@2 2198 CFLAGS="$kde_save_CFLAGS"
joachim99@2 2199 ])dnl
joachim99@2 2200 if test ! "$ac_cv_lib_z" = no; then
joachim99@2 2201 AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz])
joachim99@2 2202 LIBZ="$ac_cv_lib_z"
joachim99@2 2203 AC_SUBST(LIBZ)
joachim99@2 2204 AC_MSG_RESULT($ac_cv_lib_z)
joachim99@2 2205 else
joachim99@2 2206 AC_MSG_ERROR(not found. Check your installation and look into config.log)
joachim99@2 2207 LIBZ=""
joachim99@2 2208 AC_SUBST(LIBZ)
joachim99@2 2209 fi
joachim99@2 2210 ])
joachim99@2 2211
joachim99@2 2212 AC_DEFUN(KDE_TRY_TIFFLIB,
joachim99@2 2213 [
joachim99@2 2214 AC_MSG_CHECKING([for libtiff $1])
joachim99@2 2215
joachim99@2 2216 AC_CACHE_VAL(kde_cv_libtiff_$1,
joachim99@2 2217 [
joachim99@2 2218 AC_LANG_SAVE
joachim99@2 2219 AC_LANG_CPLUSPLUS
joachim99@2 2220 kde_save_LIBS="$LIBS"
joachim99@2 2221 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 2222 LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm"
joachim99@2 2223 else
joachim99@2 2224 LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm"
joachim99@2 2225 fi
joachim99@2 2226 kde_save_CXXFLAGS="$CXXFLAGS"
joachim99@2 2227 CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
joachim99@2 2228
joachim99@2 2229 AC_TRY_LINK(dnl
joachim99@2 2230 [
joachim99@2 2231 #include<tiffio.h>
joachim99@2 2232 ],
joachim99@2 2233 [return (TIFFOpen( "", "r") == 0); ],
joachim99@2 2234 [
joachim99@2 2235 kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ"
joachim99@2 2236 ], [
joachim99@2 2237 kde_cv_libtiff_$1=no
joachim99@2 2238 ])
joachim99@2 2239
joachim99@2 2240 LIBS="$kde_save_LIBS"
joachim99@2 2241 CXXFLAGS="$kde_save_CXXFLAGS"
joachim99@2 2242 AC_LANG_RESTORE
joachim99@2 2243 ])
joachim99@2 2244
joachim99@2 2245 if test "$kde_cv_libtiff_$1" = "no"; then
joachim99@2 2246 AC_MSG_RESULT(no)
joachim99@2 2247 LIBTIFF=""
joachim99@2 2248 $3
joachim99@2 2249 else
joachim99@2 2250 LIBTIFF="$kde_cv_libtiff_$1"
joachim99@2 2251 AC_MSG_RESULT(yes)
joachim99@2 2252 AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff])
joachim99@2 2253 $2
joachim99@2 2254 fi
joachim99@2 2255
joachim99@2 2256 ])
joachim99@2 2257
joachim99@2 2258 AC_DEFUN(AC_FIND_TIFF,
joachim99@2 2259 [
joachim99@2 2260 AC_REQUIRE([K_PATH_X])
joachim99@2 2261 AC_REQUIRE([AC_FIND_ZLIB])
joachim99@2 2262 AC_REQUIRE([AC_FIND_JPEG])
joachim99@2 2263 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 2264
joachim99@2 2265 KDE_TRY_TIFFLIB(tiff, [],
joachim99@2 2266 KDE_TRY_TIFFLIB(tiff34))
joachim99@2 2267
joachim99@2 2268 AC_SUBST(LIBTIFF)
joachim99@2 2269 ])
joachim99@2 2270
joachim99@2 2271
joachim99@2 2272 AC_DEFUN(AC_FIND_PNG,
joachim99@2 2273 [
joachim99@2 2274 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 2275 AC_REQUIRE([AC_FIND_ZLIB])
joachim99@2 2276 AC_MSG_CHECKING([for libpng])
joachim99@2 2277 AC_CACHE_VAL(ac_cv_lib_png,
joachim99@2 2278 [
joachim99@2 2279 kde_save_LIBS="$LIBS"
joachim99@2 2280 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 2281 LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET"
joachim99@2 2282 else
joachim99@2 2283 LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm"
joachim99@2 2284 fi
joachim99@2 2285 kde_save_CFLAGS="$CFLAGS"
joachim99@2 2286 CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
joachim99@2 2287 AC_LANG_C
joachim99@2 2288 AC_TRY_LINK(dnl
joachim99@2 2289 [
joachim99@2 2290 #include<png.h>
joachim99@2 2291 ],
joachim99@2 2292 [
joachim99@2 2293 png_structp png_ptr = png_create_read_struct( /* image ptr */
joachim99@2 2294 PNG_LIBPNG_VER_STRING, 0, 0, 0 );
joachim99@2 2295 return( png_ptr != 0 );
joachim99@2 2296 ],
joachim99@2 2297 eval "ac_cv_lib_png='-lpng $LIBZ -lm'",
joachim99@2 2298 eval "ac_cv_lib_png=no"
joachim99@2 2299 )
joachim99@2 2300 LIBS="$kde_save_LIBS"
joachim99@2 2301 CFLAGS="$kde_save_CFLAGS"
joachim99@2 2302 ])dnl
joachim99@2 2303 if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then
joachim99@2 2304 AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng])
joachim99@2 2305 LIBPNG="$ac_cv_lib_png"
joachim99@2 2306 AC_SUBST(LIBPNG)
joachim99@2 2307 AC_MSG_RESULT($ac_cv_lib_png)
joachim99@2 2308 else
joachim99@2 2309 AC_MSG_RESULT(no)
joachim99@2 2310 LIBPNG=""
joachim99@2 2311 AC_SUBST(LIBPNG)
joachim99@2 2312 fi
joachim99@2 2313 ])
joachim99@2 2314
joachim99@2 2315 AC_DEFUN(AC_CHECK_BOOL,
joachim99@2 2316 [
joachim99@2 2317 AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool])
joachim99@2 2318 ])
joachim99@2 2319
joachim99@2 2320 AC_DEFUN(AC_CHECK_GNU_EXTENSIONS,
joachim99@2 2321 [
joachim99@2 2322 AC_MSG_CHECKING(if you need GNU extensions)
joachim99@2 2323 AC_CACHE_VAL(ac_cv_gnu_extensions,
joachim99@2 2324 [
joachim99@2 2325 cat > conftest.c << EOF
joachim99@2 2326 #include <features.h>
joachim99@2 2327
joachim99@2 2328 #ifdef __GNU_LIBRARY__
joachim99@2 2329 yes
joachim99@2 2330 #endif
joachim99@2 2331 EOF
joachim99@2 2332
joachim99@2 2333 if (eval "$ac_cpp conftest.c") 2>&5 |
joachim99@2 2334 egrep "yes" >/dev/null 2>&1; then
joachim99@2 2335 rm -rf conftest*
joachim99@2 2336 ac_cv_gnu_extensions=yes
joachim99@2 2337 else
joachim99@2 2338 ac_cv_gnu_extensions=no
joachim99@2 2339 fi
joachim99@2 2340 ])
joachim99@2 2341
joachim99@2 2342 AC_MSG_RESULT($ac_cv_gnu_extensions)
joachim99@2 2343 if test "$ac_cv_gnu_extensions" = "yes"; then
joachim99@2 2344 AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions])
joachim99@2 2345 fi
joachim99@2 2346 ])
joachim99@2 2347
joachim99@2 2348 AC_DEFUN(KDE_CHECK_COMPILER_FLAG,
joachim99@2 2349 [
joachim99@2 2350 AC_MSG_CHECKING(whether $CXX supports -$1)
joachim99@2 2351 kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'`
joachim99@2 2352 AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache,
joachim99@2 2353 [
joachim99@2 2354 AC_LANG_SAVE
joachim99@2 2355 AC_LANG_CPLUSPLUS
joachim99@2 2356 save_CXXFLAGS="$CXXFLAGS"
joachim99@2 2357 CXXFLAGS="$CXXFLAGS -$1"
joachim99@2 2358 AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], [])
joachim99@2 2359 CXXFLAGS="$save_CXXFLAGS"
joachim99@2 2360 AC_LANG_RESTORE
joachim99@2 2361 ])
joachim99@2 2362 if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then
joachim99@2 2363 AC_MSG_RESULT(yes)
joachim99@2 2364 :
joachim99@2 2365 $2
joachim99@2 2366 else
joachim99@2 2367 AC_MSG_RESULT(no)
joachim99@2 2368 :
joachim99@2 2369 $3
joachim99@2 2370 fi
joachim99@2 2371 ])
joachim99@2 2372
joachim99@2 2373 dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables
joachim99@2 2374 dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever])
joachim99@2 2375 dnl it's all white-space separated
joachim99@2 2376 AC_DEFUN(AC_REMOVE_FORBIDDEN,
joachim99@2 2377 [ __val=$$1
joachim99@2 2378 __forbid=" $2 "
joachim99@2 2379 if test -n "$__val"; then
joachim99@2 2380 __new=""
joachim99@2 2381 ac_save_IFS=$IFS
joachim99@2 2382 IFS=" "
joachim99@2 2383 for i in $__val; do
joachim99@2 2384 case "$__forbid" in
joachim99@2 2385 *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;;
joachim99@2 2386 *) # Careful to not add spaces, where there were none, because otherwise
joachim99@2 2387 # libtool gets confused, if we change e.g. CXX
joachim99@2 2388 if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;;
joachim99@2 2389 esac
joachim99@2 2390 done
joachim99@2 2391 IFS=$ac_save_IFS
joachim99@2 2392 $1=$__new
joachim99@2 2393 fi
joachim99@2 2394 ])
joachim99@2 2395
joachim99@2 2396 dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given
joachim99@2 2397 AC_DEFUN(AC_VALIDIFY_CXXFLAGS,
joachim99@2 2398 [dnl
joachim99@2 2399 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 2400 AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath])
joachim99@2 2401 AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath])
joachim99@2 2402 else
joachim99@2 2403 AC_REMOVE_FORBIDDEN(CXX, [-rpath])
joachim99@2 2404 AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath])
joachim99@2 2405 fi
joachim99@2 2406 ])
joachim99@2 2407
joachim99@2 2408 AC_DEFUN(AC_CHECK_COMPILERS,
joachim99@2 2409 [
joachim99@2 2410 AC_ARG_ENABLE(debug,[ --enable-debug[=ARG] enables debug symbols (yes|no|full) [default=no]],
joachim99@2 2411 [
joachim99@2 2412 case $enableval in
joachim99@2 2413 yes)
joachim99@2 2414 kde_use_debug_code="yes"
joachim99@2 2415 kde_use_debug_define=no
joachim99@2 2416 ;;
joachim99@2 2417 full)
joachim99@2 2418 kde_use_debug_code="full"
joachim99@2 2419 kde_use_debug_define=no
joachim99@2 2420 ;;
joachim99@2 2421 *)
joachim99@2 2422 kde_use_debug_code="no"
joachim99@2 2423 kde_use_debug_define=yes
joachim99@2 2424 ;;
joachim99@2 2425 esac
joachim99@2 2426 ],
joachim99@2 2427 [kde_use_debug_code="no"
joachim99@2 2428 kde_use_debug_define=no
joachim99@2 2429 ])
joachim99@2 2430
joachim99@2 2431 dnl Just for configure --help
joachim99@2 2432 AC_ARG_ENABLE(dummyoption,[ --disable-debug disables debug output and debug symbols [default=no]],[],[])
joachim99@2 2433
joachim99@2 2434 AC_ARG_ENABLE(strict,[ --enable-strict compiles with strict compiler options (may not work!)],
joachim99@2 2435 [
joachim99@2 2436 if test $enableval = "no"; then
joachim99@2 2437 kde_use_strict_options="no"
joachim99@2 2438 else
joachim99@2 2439 kde_use_strict_options="yes"
joachim99@2 2440 fi
joachim99@2 2441 ], [kde_use_strict_options="no"])
joachim99@2 2442
joachim99@2 2443 AC_ARG_ENABLE(warnings,[ --enable-warnings compiles with -Wall and similiar],
joachim99@2 2444 [
joachim99@2 2445 if test $enableval = "no"; then
joachim99@2 2446 kde_use_warnings="no"
joachim99@2 2447 else
joachim99@2 2448 kde_use_warnings="yes"
joachim99@2 2449 fi
joachim99@2 2450 ], [kde_use_warnings="no"])
joachim99@2 2451
joachim99@2 2452 dnl enable warnings for debug build
joachim99@2 2453 if test "$kde_use_debug_code" != "no"; then
joachim99@2 2454 kde_use_warnings=yes
joachim99@2 2455 fi
joachim99@2 2456
joachim99@2 2457 AC_ARG_ENABLE(profile,[ --enable-profile creates profiling infos [default=no]],
joachim99@2 2458 [kde_use_profiling=$enableval],
joachim99@2 2459 [kde_use_profiling="no"]
joachim99@2 2460 )
joachim99@2 2461
joachim99@2 2462 dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
joachim99@2 2463 CFLAGS=" $CFLAGS"
joachim99@2 2464
joachim99@2 2465 AC_PROG_CC
joachim99@2 2466
joachim99@2 2467 AC_PROG_CPP
joachim99@2 2468
joachim99@2 2469 if test "$GCC" = "yes"; then
joachim99@2 2470 if test "$kde_use_debug_code" != "no"; then
joachim99@2 2471 if test $kde_use_debug_code = "full"; then
joachim99@2 2472 CFLAGS="-g3 $CFLAGS"
joachim99@2 2473 else
joachim99@2 2474 CFLAGS="-g -O2 $CFLAGS"
joachim99@2 2475 fi
joachim99@2 2476 else
joachim99@2 2477 CFLAGS="-O2 $CFLAGS"
joachim99@2 2478 fi
joachim99@2 2479 fi
joachim99@2 2480
joachim99@2 2481 if test "$kde_use_debug_define" = "yes"; then
joachim99@2 2482 CFLAGS="-DNDEBUG $CFLAGS"
joachim99@2 2483 fi
joachim99@2 2484
joachim99@2 2485
joachim99@2 2486 case "$host" in
joachim99@2 2487 *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";;
joachim99@2 2488 *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";;
joachim99@2 2489 esac
joachim99@2 2490
joachim99@2 2491 if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then
joachim99@2 2492 LDFLAGS=""
joachim99@2 2493 fi
joachim99@2 2494
joachim99@2 2495 CXXFLAGS=" $CXXFLAGS"
joachim99@2 2496
joachim99@2 2497 AC_PROG_CXX
joachim99@2 2498
joachim99@2 2499 if test "$GXX" = "yes" || test "$CXX" = "KCC"; then
joachim99@2 2500 if test "$kde_use_debug_code" != "no"; then
joachim99@2 2501 if test "$CXX" = "KCC"; then
joachim99@2 2502 CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS"
joachim99@2 2503 else
joachim99@2 2504 if test "$kde_use_debug_code" = "full"; then
joachim99@2 2505 CXXFLAGS="-g3 $CXXFLAGS"
joachim99@2 2506 else
joachim99@2 2507 CXXFLAGS="-g -O2 $CXXFLAGS"
joachim99@2 2508 fi
joachim99@2 2509 fi
joachim99@2 2510 KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"])
joachim99@2 2511
joachim99@2 2512 dnl convenience compiler flags
joachim99@2 2513 KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""])
joachim99@2 2514 AC_SUBST(WOVERLOADED_VIRTUAL)
joachim99@2 2515 else
joachim99@2 2516 if test "$CXX" = "KCC"; then
joachim99@2 2517 CXXFLAGS="+K3 $CXXFLAGS"
joachim99@2 2518 else
joachim99@2 2519 CXXFLAGS="-O2 $CXXFLAGS"
joachim99@2 2520 fi
joachim99@2 2521 fi
joachim99@2 2522 fi
joachim99@2 2523
joachim99@2 2524 if test "$kde_use_debug_define" = "yes"; then
joachim99@2 2525 CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS"
joachim99@2 2526 fi
joachim99@2 2527
joachim99@2 2528 if test "$kde_use_profiling" = "yes"; then
joachim99@2 2529 KDE_CHECK_COMPILER_FLAG(pg,
joachim99@2 2530 [
joachim99@2 2531 CFLAGS="-pg $CFLAGS"
joachim99@2 2532 CXXFLAGS="-pg $CXXFLAGS"
joachim99@2 2533 ])
joachim99@2 2534 fi
joachim99@2 2535
joachim99@2 2536 if test "$kde_use_warnings" = "yes"; then
joachim99@2 2537 if test "$GCC" = "yes"; then
joachim99@2 2538 case $host in
joachim99@2 2539 *-*-linux-gnu)
joachim99@2 2540 CFLAGS="-ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS"
joachim99@2 2541 CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion $CXXFLAGS"
joachim99@2 2542 ;;
joachim99@2 2543 esac
joachim99@2 2544 CXXFLAGS="-Wall -pedantic -W -Wpointer-arith -Wmissing-prototypes -Wwrite-strings $CXXFLAGS"
joachim99@2 2545 KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"])
joachim99@2 2546 KDE_CHECK_COMPILER_FLAG(Wbad-function-cast,[CXXFLAGS="-Wbad-function-cast $CXXFLAGS"])
joachim99@2 2547 KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"])
joachim99@2 2548 KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"])
joachim99@2 2549 fi
joachim99@2 2550 fi
joachim99@2 2551
joachim99@2 2552 if test "$GCC" = "yes" && test "$kde_use_strict_options" = "yes"; then
joachim99@2 2553 CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS"
joachim99@2 2554 fi
joachim99@2 2555
joachim99@2 2556 if test "$GXX" = "yes"; then
joachim99@2 2557 KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"])
joachim99@2 2558 KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"])
joachim99@2 2559 KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= )
joachim99@2 2560 fi
joachim99@2 2561 if test "$CXX" = "KCC"; then
joachim99@2 2562 dnl unfortunately we currently cannot disable exception support in KCC
joachim99@2 2563 dnl because doing so is binary incompatible and Qt by default links with exceptions :-(
joachim99@2 2564 dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"])
joachim99@2 2565 dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= )
joachim99@2 2566
joachim99@2 2567 AC_ARG_ENABLE(pch,[ --enable-pch enables precompiled header support (currently only KCC) [default=no]],
joachim99@2 2568 [
joachim99@2 2569 kde_use_pch=$enableval
joachim99@2 2570 ],[kde_use_pch=no])
joachim99@2 2571
joachim99@2 2572 if test "$kde_use_pch" = "yes"; then
joachim99@2 2573 dnl TODO: support --pch-dir!
joachim99@2 2574 KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"])
joachim99@2 2575 dnl the below works (but the dir must exist), but it's
joachim99@2 2576 dnl useless for a whole package.
joachim99@2 2577 dnl The are precompiled headers for each source file, so when compiling
joachim99@2 2578 dnl from scratch, it doesn't make a difference, and they take up
joachim99@2 2579 dnl around ~5Mb _per_ sourcefile.
joachim99@2 2580 dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp,
joachim99@2 2581 dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"])
joachim99@2 2582 fi
joachim99@2 2583 dnl this flag controls inlining. by default KCC inlines in optimisation mode
joachim99@2 2584 dnl all implementations that are defined inside the class {} declaration.
joachim99@2 2585 dnl because of templates-compatibility with broken gcc compilers, this
joachim99@2 2586 dnl can cause excessive inlining. This flag limits it to a sane level
joachim99@2 2587 KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"])
joachim99@2 2588 KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"])
joachim99@2 2589 KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"])
joachim99@2 2590 KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"])
joachim99@2 2591 dnl Some source files are shared between multiple executables
joachim99@2 2592 dnl (or libraries) and some of those need template instantiations.
joachim99@2 2593 dnl In that case KCC needs to compile those sources with
joachim99@2 2594 dnl --one_instantiation_per_object. To make it easy for us we compile
joachim99@2 2595 dnl _all_ objects with that flag (--one_per is a shorthand).
joachim99@2 2596 KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"])
joachim99@2 2597 fi
joachim99@2 2598 AC_SUBST(USE_EXCEPTIONS)
joachim99@2 2599 dnl obsolete macro - provided to keep things going
joachim99@2 2600 USE_RTTI=
joachim99@2 2601 AC_SUBST(USE_RTTI)
joachim99@2 2602
joachim99@2 2603 case "$host" in
joachim99@2 2604 *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;;
joachim99@2 2605 *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";;
joachim99@2 2606 *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";;
joachim99@2 2607 *-*-solaris*)
joachim99@2 2608 if test "$GXX" = yes; then
joachim99@2 2609 libstdcpp=`$CXX -print-file-name=libstdc++.so`
joachim99@2 2610 if test ! -f $libstdcpp; then
joachim99@2 2611 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])
joachim99@2 2612 fi
joachim99@2 2613 fi
joachim99@2 2614 ;;
joachim99@2 2615 esac
joachim99@2 2616
joachim99@2 2617 AC_VALIDIFY_CXXFLAGS
joachim99@2 2618
joachim99@2 2619 AC_PROG_CXXCPP
joachim99@2 2620
joachim99@2 2621 # the following is to allow programs, that are known to
joachim99@2 2622 # have problems when compiled with -O2
joachim99@2 2623 if test -n "$CXXFLAGS"; then
joachim99@2 2624 kde_safe_IFS=$IFS
joachim99@2 2625 IFS=" "
joachim99@2 2626 NOOPT_CXXFLAGS=""
joachim99@2 2627 for i in $CXXFLAGS; do
joachim99@2 2628 case $i in
joachim99@2 2629 -O*)
joachim99@2 2630 ;;
joachim99@2 2631 *)
joachim99@2 2632 NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS $i"
joachim99@2 2633 ;;
joachim99@2 2634 esac
joachim99@2 2635 done
joachim99@2 2636 IFS=$kde_safe_IFS
joachim99@2 2637 fi
joachim99@2 2638
joachim99@2 2639 if test -n "$CFLAGS"; then
joachim99@2 2640 kde_safe_IFS=$IFS
joachim99@2 2641 IFS=" "
joachim99@2 2642 NOOPT_CFLAGS=""
joachim99@2 2643 for i in $CFLAGS; do
joachim99@2 2644 case $i in
joachim99@2 2645 -O*)
joachim99@2 2646 ;;
joachim99@2 2647 *)
joachim99@2 2648 NOOPT_CFLAGS="$NOOPT_CFLAGS $i"
joachim99@2 2649 ;;
joachim99@2 2650 esac
joachim99@2 2651 done
joachim99@2 2652 IFS=$kde_safe_IFS
joachim99@2 2653 fi
joachim99@2 2654
joachim99@2 2655 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 2656 NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS -fno-rtti -DQWS"
joachim99@2 2657 fi
joachim99@2 2658
joachim99@2 2659 AC_SUBST(NOOPT_CXXFLAGS)
joachim99@2 2660 AC_SUBST(NOOPT_CFLAGS)
joachim99@2 2661
joachim99@2 2662 KDE_CHECK_FINAL
joachim99@2 2663
joachim99@2 2664 ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), [])
joachim99@2 2665
joachim99@2 2666 KDE_CXXFLAGS=
joachim99@2 2667 AC_SUBST(KDE_CXXFLAGS)
joachim99@2 2668 ])
joachim99@2 2669
joachim99@2 2670 AC_DEFUN(KDE_ADD_DEPENDENCIES,
joachim99@2 2671 [
joachim99@2 2672 [A]M_DEPENDENCIES(CC)
joachim99@2 2673 [A]M_DEPENDENCIES(CXX)
joachim99@2 2674 ])
joachim99@2 2675
joachim99@2 2676 dnl just a wrapper to clean up configure.in
joachim99@2 2677 AC_DEFUN(KDE_PROG_LIBTOOL,
joachim99@2 2678 [
joachim99@2 2679 AC_REQUIRE([AC_CHECK_COMPILERS])
joachim99@2 2680 AC_REQUIRE([AC_ENABLE_SHARED])
joachim99@2 2681 AC_REQUIRE([AC_ENABLE_STATIC])
joachim99@2 2682
joachim99@2 2683 AC_REQUIRE([AC_LIBTOOL_DLOPEN])
joachim99@2 2684
joachim99@2 2685 AC_LANG_SAVE
joachim99@2 2686 AC_LANG_C
joachim99@2 2687 AC_OBJEXT
joachim99@2 2688 AC_EXEEXT
joachim99@2 2689 AC_LANG_RESTORE
joachim99@2 2690
joachim99@2 2691 AM_PROG_LIBTOOL
joachim99@2 2692 AC_LIBTOOL_CXX
joachim99@2 2693
joachim99@2 2694 LIBTOOL_SHELL="/bin/sh ./libtool"
joachim99@2 2695 # LIBTOOL="$LIBTOOL --silent"
joachim99@2 2696 KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)"
joachim99@2 2697 AC_SUBST(KDE_PLUGIN)
joachim99@2 2698 ])
joachim99@2 2699
joachim99@2 2700 AC_DEFUN(KDE_CHECK_TYPES,
joachim99@2 2701 [ AC_CHECK_SIZEOF(int, 4)dnl
joachim99@2 2702 AC_CHECK_SIZEOF(long, 4)dnl
joachim99@2 2703 AC_CHECK_SIZEOF(char *, 4)dnl
joachim99@2 2704 AC_CHECK_SIZEOF(char, 1)dnl
joachim99@2 2705 ])dnl
joachim99@2 2706
joachim99@2 2707 AC_DEFUN(KDE_DO_IT_ALL,
joachim99@2 2708 [
joachim99@2 2709 AC_CANONICAL_SYSTEM
joachim99@2 2710 AC_ARG_PROGRAM
joachim99@2 2711 AM_INIT_AUTOMAKE($1, $2)
joachim99@2 2712 AM_DISABLE_LIBRARIES
joachim99@2 2713 AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde})
joachim99@2 2714 AC_CHECK_COMPILERS
joachim99@2 2715 KDE_PROG_LIBTOOL
joachim99@2 2716 AM_KDE_WITH_NLS
joachim99@2 2717 AC_PATH_KDE
joachim99@2 2718 ])
joachim99@2 2719
joachim99@2 2720 AC_DEFUN(AC_CHECK_RPATH,
joachim99@2 2721 [
joachim99@2 2722 AC_MSG_CHECKING(for rpath)
joachim99@2 2723 AC_ARG_ENABLE(rpath,
joachim99@2 2724 [ --disable-rpath do not use the rpath feature of ld],
joachim99@2 2725 USE_RPATH=$enableval, USE_RPATH=yes)
joachim99@2 2726
joachim99@2 2727 if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then
joachim99@2 2728
joachim99@2 2729 KDE_RPATH="-R \$(kde_libraries)"
joachim99@2 2730
joachim99@2 2731 if test -n "$qt_libraries"; then
joachim99@2 2732 KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)"
joachim99@2 2733 fi
joachim99@2 2734 dnl $x_libraries is set to /usr/lib in case
joachim99@2 2735 if test -n "$X_LDFLAGS"; then
joachim99@2 2736 KDE_RPATH="$KDE_RPATH -R \$(x_libraries)"
joachim99@2 2737 fi
joachim99@2 2738 if test -n "$KDE_EXTRA_RPATH"; then
joachim99@2 2739 KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)"
joachim99@2 2740 fi
joachim99@2 2741 fi
joachim99@2 2742 AC_SUBST(KDE_EXTRA_RPATH)
joachim99@2 2743 AC_SUBST(KDE_RPATH)
joachim99@2 2744 AC_MSG_RESULT($USE_RPATH)
joachim99@2 2745 ])
joachim99@2 2746
joachim99@2 2747 dnl Check for the type of the third argument of getsockname
joachim99@2 2748 AC_DEFUN(AC_CHECK_SOCKLEN_T, [
joachim99@2 2749 AC_MSG_CHECKING(for socklen_t)
joachim99@2 2750 AC_CACHE_VAL(ac_cv_socklen_t, [
joachim99@2 2751 AC_LANG_SAVE
joachim99@2 2752 AC_LANG_CPLUSPLUS
joachim99@2 2753 AC_TRY_COMPILE([
joachim99@2 2754 #include <sys/types.h>
joachim99@2 2755 #include <sys/socket.h>
joachim99@2 2756 ],[
joachim99@2 2757 socklen_t a=0;
joachim99@2 2758 getsockname(0,(struct sockaddr*)0, &a);
joachim99@2 2759 ],
joachim99@2 2760 ac_cv_socklen_t=socklen_t,
joachim99@2 2761 AC_TRY_COMPILE([
joachim99@2 2762 #include <sys/types.h>
joachim99@2 2763 #include <sys/socket.h>
joachim99@2 2764 ],[
joachim99@2 2765 int a=0;
joachim99@2 2766 getsockname(0,(struct sockaddr*)0, &a);
joachim99@2 2767 ],
joachim99@2 2768 ac_cv_socklen_t=int,
joachim99@2 2769 ac_cv_socklen_t=size_t
joachim99@2 2770 )
joachim99@2 2771 )
joachim99@2 2772 AC_LANG_RESTORE
joachim99@2 2773 ])
joachim99@2 2774
joachim99@2 2775 AC_MSG_RESULT($ac_cv_socklen_t)
joachim99@2 2776 if test "$ac_cv_socklen_t" != "socklen_t"; then
joachim99@2 2777 AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t,
joachim99@2 2778 [Define the real type of socklen_t])
joachim99@2 2779 fi
joachim99@2 2780 AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define])
joachim99@2 2781
joachim99@2 2782 ])
joachim99@2 2783
joachim99@2 2784 dnl This is a merge of some macros out of the gettext aclocal.m4
joachim99@2 2785 dnl since we don't need anything, I took the things we need
joachim99@2 2786 dnl the copyright for them is:
joachim99@2 2787 dnl >
joachim99@2 2788 dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
joachim99@2 2789 dnl This Makefile.in is free software; the Free Software Foundation
joachim99@2 2790 dnl gives unlimited permission to copy and/or distribute it,
joachim99@2 2791 dnl with or without modifications, as long as this notice is preserved.
joachim99@2 2792
joachim99@2 2793 dnl This program is distributed in the hope that it will be useful,
joachim99@2 2794 dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
joachim99@2 2795 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
joachim99@2 2796 dnl PARTICULAR PURPOSE.
joachim99@2 2797 dnl >
joachim99@2 2798 dnl for this file it is relicensed under LGPL
joachim99@2 2799
joachim99@2 2800 AC_DEFUN(AM_KDE_WITH_NLS,
joachim99@2 2801 [
joachim99@2 2802 dnl If we use NLS figure out what method
joachim99@2 2803
joachim99@2 2804 AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt,
joachim99@2 2805 [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt)
joachim99@2 2806 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
joachim99@2 2807
joachim99@2 2808 if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then
joachim99@2 2809 AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it])
joachim99@2 2810 GMSGFMT=":"
joachim99@2 2811 fi
joachim99@2 2812 MSGFMT=$GMSGFMT
joachim99@2 2813 AC_SUBST(GMSGFMT)
joachim99@2 2814 AC_SUBST(MSGFMT)
joachim99@2 2815
joachim99@2 2816 AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext,
joachim99@2 2817 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
joachim99@2 2818
joachim99@2 2819 dnl Test whether we really found GNU xgettext.
joachim99@2 2820 if test "$XGETTEXT" != ":"; then
joachim99@2 2821 dnl If it is no GNU xgettext we define it as : so that the
joachim99@2 2822 dnl Makefiles still can work.
joachim99@2 2823 if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
joachim99@2 2824 : ;
joachim99@2 2825 else
joachim99@2 2826 AC_MSG_RESULT(
joachim99@2 2827 [found xgettext programs is not GNU xgettext; ignore it])
joachim99@2 2828 XGETTEXT=":"
joachim99@2 2829 fi
joachim99@2 2830 fi
joachim99@2 2831 AC_SUBST(XGETTEXT)
joachim99@2 2832
joachim99@2 2833 ])
joachim99@2 2834
joachim99@2 2835 # Search path for a program which passes the given test.
joachim99@2 2836 # Ulrich Drepper <drepper@cygnus.com>, 1996.
joachim99@2 2837
joachim99@2 2838 # serial 1
joachim99@2 2839 # Stephan Kulow: I appended a _KDE against name conflicts
joachim99@2 2840
joachim99@2 2841 dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR,
joachim99@2 2842 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
joachim99@2 2843 AC_DEFUN(AM_PATH_PROG_WITH_TEST_KDE,
joachim99@2 2844 [# Extract the first word of "$2", so it can be a program name with args.
joachim99@2 2845 set dummy $2; ac_word=[$]2
joachim99@2 2846 AC_MSG_CHECKING([for $ac_word])
joachim99@2 2847 AC_CACHE_VAL(ac_cv_path_$1,
joachim99@2 2848 [case "[$]$1" in
joachim99@2 2849 /*)
joachim99@2 2850 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
joachim99@2 2851 ;;
joachim99@2 2852 *)
joachim99@2 2853 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
joachim99@2 2854 for ac_dir in ifelse([$5], , $PATH, [$5]); do
joachim99@2 2855 test -z "$ac_dir" && ac_dir=.
joachim99@2 2856 if test -f $ac_dir/$ac_word; then
joachim99@2 2857 if [$3]; then
joachim99@2 2858 ac_cv_path_$1="$ac_dir/$ac_word"
joachim99@2 2859 break
joachim99@2 2860 fi
joachim99@2 2861 fi
joachim99@2 2862 done
joachim99@2 2863 IFS="$ac_save_ifs"
joachim99@2 2864 dnl If no 4th arg is given, leave the cache variable unset,
joachim99@2 2865 dnl so AC_PATH_PROGS will keep looking.
joachim99@2 2866 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
joachim99@2 2867 ])dnl
joachim99@2 2868 ;;
joachim99@2 2869 esac])dnl
joachim99@2 2870 $1="$ac_cv_path_$1"
joachim99@2 2871 if test -n "[$]$1"; then
joachim99@2 2872 AC_MSG_RESULT([$]$1)
joachim99@2 2873 else
joachim99@2 2874 AC_MSG_RESULT(no)
joachim99@2 2875 fi
joachim99@2 2876 AC_SUBST($1)dnl
joachim99@2 2877 ])
joachim99@2 2878
joachim99@2 2879
joachim99@2 2880 # Check whether LC_MESSAGES is available in <locale.h>.
joachim99@2 2881 # Ulrich Drepper <drepper@cygnus.com>, 1995.
joachim99@2 2882
joachim99@2 2883 # serial 1
joachim99@2 2884
joachim99@2 2885 AC_DEFUN(AM_LC_MESSAGES,
joachim99@2 2886 [if test $ac_cv_header_locale_h = yes; then
joachim99@2 2887 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
joachim99@2 2888 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
joachim99@2 2889 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
joachim99@2 2890 if test $am_cv_val_LC_MESSAGES = yes; then
joachim99@2 2891 AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES])
joachim99@2 2892 fi
joachim99@2 2893 fi])
joachim99@2 2894
joachim99@2 2895 dnl From Jim Meyering.
joachim99@2 2896 dnl FIXME: migrate into libit.
joachim99@2 2897
joachim99@2 2898 AC_DEFUN([AM_FUNC_OBSTACK],
joachim99@2 2899 [AC_CACHE_CHECK([for obstacks], am_cv_func_obstack,
joachim99@2 2900 [AC_TRY_LINK([#include "obstack.h"],
joachim99@2 2901 [struct obstack *mem;obstack_free(mem,(char *) 0)],
joachim99@2 2902 am_cv_func_obstack=yes,
joachim99@2 2903 am_cv_func_obstack=no)])
joachim99@2 2904 if test $am_cv_func_obstack = yes; then
joachim99@2 2905 AC_DEFINE(HAVE_OBSTACK)
joachim99@2 2906 else
joachim99@2 2907 LIBOBJS="$LIBOBJS obstack.o"
joachim99@2 2908 fi
joachim99@2 2909 ])
joachim99@2 2910
joachim99@2 2911 dnl From Jim Meyering. Use this if you use the GNU error.[ch].
joachim99@2 2912 dnl FIXME: Migrate into libit
joachim99@2 2913
joachim99@2 2914 AC_DEFUN([AM_FUNC_ERROR_AT_LINE],
joachim99@2 2915 [AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line,
joachim99@2 2916 [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");],
joachim99@2 2917 am_cv_lib_error_at_line=yes,
joachim99@2 2918 am_cv_lib_error_at_line=no)])
joachim99@2 2919 if test $am_cv_lib_error_at_line = no; then
joachim99@2 2920 LIBOBJS="$LIBOBJS error.o"
joachim99@2 2921 fi
joachim99@2 2922 AC_SUBST(LIBOBJS)dnl
joachim99@2 2923 ])
joachim99@2 2924
joachim99@2 2925 # Macro to add for using GNU gettext.
joachim99@2 2926 # Ulrich Drepper <drepper@cygnus.com>, 1995.
joachim99@2 2927
joachim99@2 2928 # serial 1
joachim99@2 2929 # Stephan Kulow: I put a KDE in it to avoid name conflicts
joachim99@2 2930
joachim99@2 2931 AC_DEFUN(AM_KDE_GNU_GETTEXT,
joachim99@2 2932 [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
joachim99@2 2933 AC_REQUIRE([AC_PROG_RANLIB])dnl
joachim99@2 2934 AC_REQUIRE([AC_HEADER_STDC])dnl
joachim99@2 2935 AC_REQUIRE([AC_TYPE_OFF_T])dnl
joachim99@2 2936 AC_REQUIRE([AC_TYPE_SIZE_T])dnl
joachim99@2 2937 AC_REQUIRE([AC_FUNC_ALLOCA])dnl
joachim99@2 2938 AC_REQUIRE([AC_FUNC_MMAP])dnl
joachim99@2 2939 AC_REQUIRE([AM_KDE_WITH_NLS])dnl
joachim99@2 2940 AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h string.h values.h alloca.h])
joachim99@2 2941 AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
joachim99@2 2942 __argz_count __argz_stringify __argz_next])
joachim99@2 2943
joachim99@2 2944 AC_MSG_CHECKING(for stpcpy)
joachim99@2 2945 AC_CACHE_VAL(kde_cv_func_stpcpy,
joachim99@2 2946 [
joachim99@2 2947 kde_safe_cxxflags=$CXXFLAGS
joachim99@2 2948 CXXFLAGS="-Wmissing-prototypes -Werror"
joachim99@2 2949 AC_LANG_SAVE
joachim99@2 2950 AC_LANG_CPLUSPLUS
joachim99@2 2951 AC_TRY_COMPILE([
joachim99@2 2952 #include <string.h>
joachim99@2 2953 ],
joachim99@2 2954 [
joachim99@2 2955 char buffer[200];
joachim99@2 2956 stpcpy(buffer, buffer);
joachim99@2 2957 ],
joachim99@2 2958 kde_cv_func_stpcpy=yes,
joachim99@2 2959 kde_cv_func_stpcpy=no)
joachim99@2 2960 AC_LANG_RESTORE
joachim99@2 2961 CXXFLAGS=$kde_safe_cxxflags
joachim99@2 2962 ])
joachim99@2 2963 AC_MSG_RESULT($kde_cv_func_stpcpy)
joachim99@2 2964 if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then
joachim99@2 2965 AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy])
joachim99@2 2966 fi
joachim99@2 2967
joachim99@2 2968 AM_LC_MESSAGES
joachim99@2 2969
joachim99@2 2970 if test "x$CATOBJEXT" != "x"; then
joachim99@2 2971 if test "x$ALL_LINGUAS" = "x"; then
joachim99@2 2972 LINGUAS=
joachim99@2 2973 else
joachim99@2 2974 AC_MSG_CHECKING(for catalogs to be installed)
joachim99@2 2975 NEW_LINGUAS=
joachim99@2 2976 for lang in ${LINGUAS=$ALL_LINGUAS}; do
joachim99@2 2977 case "$ALL_LINGUAS" in
joachim99@2 2978 *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
joachim99@2 2979 esac
joachim99@2 2980 done
joachim99@2 2981 LINGUAS=$NEW_LINGUAS
joachim99@2 2982 AC_MSG_RESULT($LINGUAS)
joachim99@2 2983 fi
joachim99@2 2984
joachim99@2 2985 dnl Construct list of names of catalog files to be constructed.
joachim99@2 2986 if test -n "$LINGUAS"; then
joachim99@2 2987 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
joachim99@2 2988 fi
joachim99@2 2989 fi
joachim99@2 2990
joachim99@2 2991 ])
joachim99@2 2992
joachim99@2 2993 AC_DEFUN(AC_HAVE_XPM,
joachim99@2 2994 [AC_REQUIRE_CPP()dnl
joachim99@2 2995 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 2996
joachim99@2 2997 test -z "$XPM_LDFLAGS" && XPM_LDFLAGS=
joachim99@2 2998 test -z "$XPM_INCLUDE" && XPM_INCLUDE=
joachim99@2 2999
joachim99@2 3000 AC_ARG_WITH(xpm, [ --without-xpm disable color pixmap XPM tests],
joachim99@2 3001 xpm_test=$withval, xpm_test="yes")
joachim99@2 3002 if test "x$xpm_test" = xno; then
joachim99@2 3003 ac_cv_have_xpm=no
joachim99@2 3004 else
joachim99@2 3005 AC_MSG_CHECKING(for XPM)
joachim99@2 3006 AC_CACHE_VAL(ac_cv_have_xpm,
joachim99@2 3007 [
joachim99@2 3008 AC_LANG_C
joachim99@2 3009 ac_save_ldflags="$LDFLAGS"
joachim99@2 3010 ac_save_cflags="$CFLAGS"
joachim99@2 3011 if test "x$kde_use_qt_emb" != "xyes"; then
joachim99@2 3012 LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET"
joachim99@2 3013 else
joachim99@2 3014 LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET"
joachim99@2 3015 fi
joachim99@2 3016 CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES"
joachim99@2 3017 test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS"
joachim99@2 3018 AC_TRY_LINK([#include <X11/xpm.h>],[],
joachim99@2 3019 ac_cv_have_xpm="yes",ac_cv_have_xpm="no")
joachim99@2 3020 LDFLAGS="$ac_save_ldflags"
joachim99@2 3021 CFLAGS="$ac_save_cflags"
joachim99@2 3022 ])dnl
joachim99@2 3023
joachim99@2 3024 if test "$ac_cv_have_xpm" = no; then
joachim99@2 3025 AC_MSG_RESULT(no)
joachim99@2 3026 XPM_LDFLAGS=""
joachim99@2 3027 XPMINC=""
joachim99@2 3028 $2
joachim99@2 3029 else
joachim99@2 3030 AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support])
joachim99@2 3031 if test "$XPM_LDFLAGS" = ""; then
joachim99@2 3032 XPMLIB='-lXpm $(LIB_X11)'
joachim99@2 3033 else
joachim99@2 3034 XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)'
joachim99@2 3035 fi
joachim99@2 3036 if test "$XPM_INCLUDE" = ""; then
joachim99@2 3037 XPMINC=""
joachim99@2 3038 else
joachim99@2 3039 XPMINC="-I$XPM_INCLUDE"
joachim99@2 3040 fi
joachim99@2 3041 AC_MSG_RESULT(yes)
joachim99@2 3042 $1
joachim99@2 3043 fi
joachim99@2 3044 fi
joachim99@2 3045 AC_SUBST(XPMINC)
joachim99@2 3046 AC_SUBST(XPMLIB)
joachim99@2 3047 ])
joachim99@2 3048
joachim99@2 3049 AC_DEFUN(AC_HAVE_DPMS,
joachim99@2 3050 [AC_REQUIRE_CPP()dnl
joachim99@2 3051 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 3052
joachim99@2 3053 test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS=
joachim99@2 3054 test -z "$DPMS_INCLUDE" && DPMS_INCLUDE=
joachim99@2 3055 DPMS_LIB=
joachim99@2 3056
joachim99@2 3057 AC_ARG_WITH(dpms, [ --without-dpms disable DPMS power saving],
joachim99@2 3058 dpms_test=$withval, dpms_test="yes")
joachim99@2 3059 if test "x$dpms_test" = xno; then
joachim99@2 3060 ac_cv_have_dpms=no
joachim99@2 3061 else
joachim99@2 3062 AC_MSG_CHECKING(for DPMS)
joachim99@2 3063 dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms.
joachim99@2 3064 dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms".
joachim99@2 3065 AC_CACHE_VAL(ac_cv_have_dpms,
joachim99@2 3066 [
joachim99@2 3067 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 3068 AC_MSG_RESULT(no)
joachim99@2 3069 ac_cv_have_dpms="no"
joachim99@2 3070 else
joachim99@2 3071 AC_LANG_C
joachim99@2 3072 ac_save_ldflags="$LDFLAGS"
joachim99@2 3073 ac_save_cflags="$CFLAGS"
joachim99@2 3074 ac_save_libs="$LIBS"
joachim99@2 3075 LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET"
joachim99@2 3076 CFLAGS="$CFLAGS $X_INCLUDES"
joachim99@2 3077 test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
joachim99@2 3078 AC_TRY_LINK([
joachim99@2 3079 #include <X11/Xproto.h>
joachim99@2 3080 #include <X11/X.h>
joachim99@2 3081 #include <X11/Xlib.h>
joachim99@2 3082 #include <X11/extensions/dpms.h>
joachim99@2 3083 int foo_test_dpms()
joachim99@2 3084 { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
joachim99@2 3085 ac_cv_have_dpms="yes", [
joachim99@2 3086 LDFLAGS="$ac_save_ldflags"
joachim99@2 3087 CFLAGS="$ac_save_cflags"
joachim99@2 3088 LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries -lX11 -lXext $LIBSOCKET"
joachim99@2 3089 LIBS="$LIBS -lXdpms"
joachim99@2 3090 CFLAGS="$CFLAGS $X_INCLUDES"
joachim99@2 3091 test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
joachim99@2 3092 AC_TRY_LINK([
joachim99@2 3093 #include <X11/Xproto.h>
joachim99@2 3094 #include <X11/X.h>
joachim99@2 3095 #include <X11/Xlib.h>
joachim99@2 3096 #include <X11/extensions/dpms.h>
joachim99@2 3097 int foo_test_dpms()
joachim99@2 3098 { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
joachim99@2 3099 [
joachim99@2 3100 ac_cv_have_dpms="-lXdpms"
joachim99@2 3101 ],ac_cv_have_dpms="no")
joachim99@2 3102 ])
joachim99@2 3103 LDFLAGS="$ac_save_ldflags"
joachim99@2 3104 CFLAGS="$ac_save_cflags"
joachim99@2 3105 LIBS="$ac_save_libs"
joachim99@2 3106 fi
joachim99@2 3107 ])dnl
joachim99@2 3108
joachim99@2 3109 if test "$ac_cv_have_dpms" = no; then
joachim99@2 3110 AC_MSG_RESULT(no)
joachim99@2 3111 DPMS_LDFLAGS=""
joachim99@2 3112 DPMSINC=""
joachim99@2 3113 $2
joachim99@2 3114 else
joachim99@2 3115 AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support])
joachim99@2 3116 if test "$ac_cv_have_dpms" = "-lXdpms"; then
joachim99@2 3117 DPMS_LIB="-lXdpms"
joachim99@2 3118 fi
joachim99@2 3119 if test "$DPMS_LDFLAGS" = ""; then
joachim99@2 3120 DPMSLIB="$DPMS_LIB "'$(LIB_X11)'
joachim99@2 3121 else
joachim99@2 3122 DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)'
joachim99@2 3123 fi
joachim99@2 3124 if test "$DPMS_INCLUDE" = ""; then
joachim99@2 3125 DPMSINC=""
joachim99@2 3126 else
joachim99@2 3127 DPMSINC="-I$DPMS_INCLUDE"
joachim99@2 3128 fi
joachim99@2 3129 AC_MSG_RESULT(yes)
joachim99@2 3130 $1
joachim99@2 3131 fi
joachim99@2 3132 fi
joachim99@2 3133 AC_SUBST(DPMSINC)
joachim99@2 3134 AC_SUBST(DPMSLIB)
joachim99@2 3135 ])
joachim99@2 3136
joachim99@2 3137 AC_DEFUN(AC_HAVE_GL,
joachim99@2 3138 [AC_REQUIRE_CPP()dnl
joachim99@2 3139 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 3140
joachim99@2 3141 test -z "$GL_LDFLAGS" && GL_LDFLAGS=
joachim99@2 3142 test -z "$GL_INCLUDE" && GL_INCLUDE=
joachim99@2 3143
joachim99@2 3144 AC_ARG_WITH(gl, [ --without-gl disable 3D GL modes],
joachim99@2 3145 gl_test=$withval, gl_test="yes")
joachim99@2 3146 if test "x$kde_use_qt_emb" = "xyes"; then
joachim99@2 3147 # GL and Qt Embedded is a no-go for now.
joachim99@2 3148 ac_cv_have_gl=no
joachim99@2 3149 elif test "x$gl_test" = xno; then
joachim99@2 3150 ac_cv_have_gl=no
joachim99@2 3151 else
joachim99@2 3152 AC_MSG_CHECKING(for GL)
joachim99@2 3153 AC_CACHE_VAL(ac_cv_have_gl,
joachim99@2 3154 [
joachim99@2 3155 AC_LANG_C
joachim99@2 3156 ac_save_ldflags="$LDFLAGS"
joachim99@2 3157 ac_save_cflags="$CFLAGS"
joachim99@2 3158 LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU"
joachim99@2 3159 test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
joachim99@2 3160 LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
joachim99@2 3161 CFLAGS="$CFLAGS $X_INCLUDES"
joachim99@2 3162 test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
joachim99@2 3163 AC_TRY_LINK([#include <GL/gl.h>
joachim99@2 3164 #include <GL/glu.h>
joachim99@2 3165 ], [],
joachim99@2 3166 ac_cv_have_gl="mesa", ac_cv_have_gl="no")
joachim99@2 3167 if test "x$ac_cv_have_gl" = "xno"; then
joachim99@2 3168 LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGL -lGLU"
joachim99@2 3169 test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
joachim99@2 3170 LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
joachim99@2 3171 CFLAGS="$ac_save_cflags $X_INCLUDES"
joachim99@2 3172 test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
joachim99@2 3173 AC_TRY_LINK([#include <GL/gl.h>
joachim99@2 3174 #include <GL/glu.h>
joachim99@2 3175 ], [],
joachim99@2 3176 ac_cv_have_gl="yes", ac_cv_have_gl="no")
joachim99@2 3177 fi
joachim99@2 3178 LDFLAGS="$ac_save_ldflags"
joachim99@2 3179 CFLAGS="$ac_save_cflags"
joachim99@2 3180 ])dnl
joachim99@2 3181
joachim99@2 3182 if test "$ac_cv_have_gl" = "no"; then
joachim99@2 3183 AC_MSG_RESULT(no)
joachim99@2 3184 GL_LDFLAGS=""
joachim99@2 3185 GLINC=""
joachim99@2 3186 $2
joachim99@2 3187 else
joachim99@2 3188 AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)])
joachim99@2 3189 if test "$GL_LDFLAGS" = ""; then
joachim99@2 3190 if test "$ac_cv_have_gl" = "mesa"; then
joachim99@2 3191 GLLIB='-lMesaGL -lMesaGLU $(LIB_X11)'
joachim99@2 3192 else
joachim99@2 3193 GLLIB='-lGL -lGLU $(LIB_X11)'
joachim99@2 3194 fi
joachim99@2 3195 else
joachim99@2 3196 if test "$ac_cv_have_gl" = "mesa"; then
joachim99@2 3197 GLLIB="$GL_LDFLAGS -lMesaGL -lMesaGLU "'$(LIB_X11)'
joachim99@2 3198 else
joachim99@2 3199 GLLIB="$GL_LDFLAGS -lGL -lGLU "'$(LIB_X11)'
joachim99@2 3200 fi
joachim99@2 3201 fi
joachim99@2 3202 if test "$GL_INCLUDE" = ""; then
joachim99@2 3203 GLINC=""
joachim99@2 3204 else
joachim99@2 3205 GLINC="-I$GL_INCLUDE"
joachim99@2 3206 fi
joachim99@2 3207 AC_MSG_RESULT($ac_cv_have_gl)
joachim99@2 3208 $1
joachim99@2 3209 fi
joachim99@2 3210 fi
joachim99@2 3211 AC_SUBST(GLINC)
joachim99@2 3212 AC_SUBST(GLLIB)
joachim99@2 3213 ])
joachim99@2 3214
joachim99@2 3215
joachim99@2 3216 dnl shadow password and PAM magic - maintained by ossi@kde.org
joachim99@2 3217
joachim99@2 3218 AC_DEFUN(KDE_PAM, [
joachim99@2 3219 AC_REQUIRE([KDE_CHECK_LIBDL])
joachim99@2 3220
joachim99@2 3221 AC_ARG_WITH(pam,
joachim99@2 3222 [ --with-pam[=ARG] enable support for PAM: ARG=[yes|no|service name]],
joachim99@2 3223 [ if test "x$withval" = "xyes"; then
joachim99@2 3224 use_pam=yes
joachim99@2 3225 pam_service=kde
joachim99@2 3226 elif test "x$withval" = "xno"; then
joachim99@2 3227 use_pam=no
joachim99@2 3228 else
joachim99@2 3229 use_pam=yes
joachim99@2 3230 pam_service=$withval
joachim99@2 3231 fi
joachim99@2 3232 ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service"
joachim99@2 3233 ], [
joachim99@2 3234 AC_CACHE_VAL(ac_cv_path_pam,
joachim99@2 3235 [ use_pam=no
joachim99@2 3236 AC_CHECK_LIB(pam, pam_start,
joachim99@2 3237 [ AC_CHECK_HEADER(security/pam_appl.h,
joachim99@2 3238 [ use_pam=yes
joachim99@2 3239 pam_service=kde ])
joachim99@2 3240 ], , $LIBDL)
joachim99@2 3241 ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service"
joachim99@2 3242 ])
joachim99@2 3243 ])
joachim99@2 3244 eval "$ac_cv_path_pam"
joachim99@2 3245
joachim99@2 3246 AC_MSG_CHECKING(for PAM)
joachim99@2 3247 if test "x$use_pam" = xno; then
joachim99@2 3248 AC_MSG_RESULT(no)
joachim99@2 3249 PAMLIBS=""
joachim99@2 3250 else
joachim99@2 3251 AC_MSG_RESULT(yes)
joachim99@2 3252 AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)])
joachim99@2 3253 PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL"
joachim99@2 3254
joachim99@2 3255 dnl test whether struct pam_message is const (Linux) or not (Sun)
joachim99@2 3256 AC_MSG_CHECKING(for const pam_message)
joachim99@2 3257 AC_EGREP_HEADER([struct pam_message], security/pam_appl.h,
joachim99@2 3258 [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h,
joachim99@2 3259 [AC_MSG_RESULT([const: Linux-type PAM])],
joachim99@2 3260 [AC_MSG_RESULT([nonconst: Sun-type PAM])
joachim99@2 3261 AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])]
joachim99@2 3262 )],
joachim99@2 3263 [AC_MSG_RESULT([not found - assume const, Linux-type PAM])])
joachim99@2 3264 fi
joachim99@2 3265
joachim99@2 3266 AC_SUBST(PAMLIBS)
joachim99@2 3267 ])
joachim99@2 3268
joachim99@2 3269 dnl DEF_PAM_SERVICE(arg name, full name, define name)
joachim99@2 3270 AC_DEFUN(DEF_PAM_SERVICE, [
joachim99@2 3271 AC_ARG_WITH($1-pam,
joachim99@2 3272 [ --with-$1-pam=[val] override PAM service from --with-pam for $2],
joachim99@2 3273 [ if test "x$use_pam" = xyes; then
joachim99@2 3274 $3_PAM_SERVICE="$withval"
joachim99@2 3275 else
joachim99@2 3276 AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected.
joachim99@2 3277 You may want to enforce it by using --with-pam.])
joachim99@2 3278 fi
joachim99@2 3279 ],
joachim99@2 3280 [ if test "x$use_pam" = xyes; then
joachim99@2 3281 $3_PAM_SERVICE="$pam_service"
joachim99@2 3282 fi
joachim99@2 3283 ])
joachim99@2 3284 if test -n "$$3_PAM_SERVICE"; then
joachim99@2 3285 AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE])
joachim99@2 3286 AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2])
joachim99@2 3287 fi
joachim99@2 3288 AC_SUBST($3_PAM_SERVICE)
joachim99@2 3289 ])
joachim99@2 3290
joachim99@2 3291 AC_DEFUN(KDE_SHADOWPASSWD, [
joachim99@2 3292 AC_REQUIRE([KDE_PAM])
joachim99@2 3293
joachim99@2 3294 AC_CHECK_LIB(shadow, getspent,
joachim99@2 3295 [ LIBSHADOW="-lshadow"
joachim99@2 3296 ac_use_shadow=yes
joachim99@2 3297 ],
joachim99@2 3298 [ dnl for UnixWare
joachim99@2 3299 AC_CHECK_LIB(gen, getspent,
joachim99@2 3300 [ LIBGEN="-lgen"
joachim99@2 3301 ac_use_shadow=yes
joachim99@2 3302 ],
joachim99@2 3303 [ AC_CHECK_FUNC(getspent,
joachim99@2 3304 [ ac_use_shadow=yes ],
joachim99@2 3305 [ ac_use_shadow=no ])
joachim99@2 3306 ])
joachim99@2 3307 ])
joachim99@2 3308 AC_SUBST(LIBSHADOW)
joachim99@2 3309 AC_SUBST(LIBGEN)
joachim99@2 3310
joachim99@2 3311 AC_MSG_CHECKING([for shadow passwords])
joachim99@2 3312
joachim99@2 3313 AC_ARG_WITH(shadow,
joachim99@2 3314 [ --with-shadow If you want shadow password support ],
joachim99@2 3315 [ if test "x$withval" != "xno"; then
joachim99@2 3316 use_shadow=yes
joachim99@2 3317 else
joachim99@2 3318 use_shadow=no
joachim99@2 3319 fi
joachim99@2 3320 ], [
joachim99@2 3321 use_shadow="$ac_use_shadow"
joachim99@2 3322 ])
joachim99@2 3323
joachim99@2 3324 if test "x$use_shadow" = xyes; then
joachim99@2 3325 AC_MSG_RESULT(yes)
joachim99@2 3326 AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords])
joachim99@2 3327 else
joachim99@2 3328 AC_MSG_RESULT(no)
joachim99@2 3329 LIBSHADOW=
joachim99@2 3330 LIBGEN=
joachim99@2 3331 fi
joachim99@2 3332
joachim99@2 3333 dnl finally make the relevant binaries setuid root, if we have shadow passwds.
joachim99@2 3334 dnl this still applies, if we could use it indirectly through pam.
joachim99@2 3335 if test "x$use_shadow" = xyes ||
joachim99@2 3336 ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then
joachim99@2 3337 case $host in
joachim99@2 3338 *-*-freebsd* | *-*-netbsd* | *-*-openbsd*)
joachim99@2 3339 SETUIDFLAGS="-m 4755 -o root";;
joachim99@2 3340 *)
joachim99@2 3341 SETUIDFLAGS="-m 4755";;
joachim99@2 3342 esac
joachim99@2 3343 fi
joachim99@2 3344 AC_SUBST(SETUIDFLAGS)
joachim99@2 3345
joachim99@2 3346 ])
joachim99@2 3347
joachim99@2 3348 AC_DEFUN(KDE_PASSWDLIBS, [
joachim99@2 3349 AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT
joachim99@2 3350 AC_REQUIRE([KDE_PAM])
joachim99@2 3351 AC_REQUIRE([KDE_SHADOWPASSWD])
joachim99@2 3352
joachim99@2 3353 if test "x$use_pam" = "xyes"; then
joachim99@2 3354 PASSWDLIBS="$PAMLIBS"
joachim99@2 3355 else
joachim99@2 3356 PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN"
joachim99@2 3357 fi
joachim99@2 3358
joachim99@2 3359 dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but
joachim99@2 3360 dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires
joachim99@2 3361 dnl root to read, so kcheckpass needs to be root (even when using pam, since pam
joachim99@2 3362 dnl may need to read /etc/master.passwd).
joachim99@2 3363 case $host in
joachim99@2 3364 *-*-freebsd*)
joachim99@2 3365 SETUIDFLAGS="-m 4755 -o root"
joachim99@2 3366 ;;
joachim99@2 3367 *)
joachim99@2 3368 ;;
joachim99@2 3369 esac
joachim99@2 3370
joachim99@2 3371 AC_SUBST(PASSWDLIBS)
joachim99@2 3372 ])
joachim99@2 3373
joachim99@2 3374 AC_DEFUN(KDE_CHECK_LIBDL,
joachim99@2 3375 [
joachim99@2 3376 AC_CHECK_LIB(dl, dlopen, [
joachim99@2 3377 LIBDL="-ldl"
joachim99@2 3378 ac_cv_have_dlfcn=yes
joachim99@2 3379 ])
joachim99@2 3380
joachim99@2 3381 AC_CHECK_LIB(dld, shl_unload, [
joachim99@2 3382 LIBDL="-ldld"
joachim99@2 3383 ac_cv_have_shload=yes
joachim99@2 3384 ])
joachim99@2 3385
joachim99@2 3386 AC_SUBST(LIBDL)
joachim99@2 3387 ])
joachim99@2 3388
joachim99@2 3389 AC_DEFUN(KDE_CHECK_DLOPEN,
joachim99@2 3390 [
joachim99@2 3391 KDE_CHECK_LIBDL
joachim99@2 3392 AC_CHECK_HEADERS(dlfcn.h dl.h)
joachim99@2 3393 if test "$ac_cv_header_dlfcn_h" = "no"; then
joachim99@2 3394 ac_cv_have_dlfcn=no
joachim99@2 3395 fi
joachim99@2 3396
joachim99@2 3397 if test "$ac_cv_header_dl_h" = "no"; then
joachim99@2 3398 ac_cv_have_shload=no
joachim99@2 3399 fi
joachim99@2 3400
joachim99@2 3401 dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE
joachim99@2 3402 dnl (MM)
joachim99@2 3403 AC_ARG_ENABLE(dlopen,
joachim99@2 3404 [ --disable-dlopen link statically [default=no]] ,
joachim99@2 3405 enable_dlopen=$enableval,
joachim99@2 3406 enable_dlopen=yes)
joachim99@2 3407
joachim99@2 3408 # override the user's opinion, if we know it better ;)
joachim99@2 3409 if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then
joachim99@2 3410 enable_dlopen=no
joachim99@2 3411 fi
joachim99@2 3412
joachim99@2 3413 if test "$ac_cv_have_dlfcn" = "yes"; then
joachim99@2 3414 AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn])
joachim99@2 3415 fi
joachim99@2 3416
joachim99@2 3417 if test "$ac_cv_have_shload" = "yes"; then
joachim99@2 3418 AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload])
joachim99@2 3419 fi
joachim99@2 3420
joachim99@2 3421 if test "$enable_dlopen" = no ; then
joachim99@2 3422 test -n "$1" && eval $1
joachim99@2 3423 else
joachim99@2 3424 test -n "$2" && eval $2
joachim99@2 3425 fi
joachim99@2 3426
joachim99@2 3427 ])
joachim99@2 3428
joachim99@2 3429 AC_DEFUN(KDE_CHECK_DYNAMIC_LOADING,
joachim99@2 3430 [
joachim99@2 3431 KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no)
joachim99@2 3432 KDE_PROG_LIBTOOL
joachim99@2 3433 AC_MSG_CHECKING([dynamic loading])
joachim99@2 3434 eval "`egrep '^build_libtool_libs=' libtool`"
joachim99@2 3435 if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then
joachim99@2 3436 dynamic_loading=yes
joachim99@2 3437 AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING)
joachim99@2 3438 else
joachim99@2 3439 dynamic_loading=no
joachim99@2 3440 fi
joachim99@2 3441 AC_MSG_RESULT($dynamic_loading)
joachim99@2 3442 if test "$dynamic_loading" = "yes"; then
joachim99@2 3443 $1
joachim99@2 3444 else
joachim99@2 3445 $2
joachim99@2 3446 fi
joachim99@2 3447 ])
joachim99@2 3448
joachim99@2 3449 AC_DEFUN(KDE_ADD_INCLUDES,
joachim99@2 3450 [
joachim99@2 3451 if test -z "$1"; then
joachim99@2 3452 test_include="Pix.h"
joachim99@2 3453 else
joachim99@2 3454 test_include="$1"
joachim99@2 3455 fi
joachim99@2 3456
joachim99@2 3457 AC_MSG_CHECKING([for libg++ ($test_include)])
joachim99@2 3458
joachim99@2 3459 AC_CACHE_VAL(kde_cv_libgpp_includes,
joachim99@2 3460 [
joachim99@2 3461 kde_cv_libgpp_includes=no
joachim99@2 3462
joachim99@2 3463 for ac_dir in \
joachim99@2 3464 \
joachim99@2 3465 /usr/include/g++ \
joachim99@2 3466 /usr/include \
joachim99@2 3467 /usr/unsupported/include \
joachim99@2 3468 /opt/include \
joachim99@2 3469 $extra_include \
joachim99@2 3470 ; \
joachim99@2 3471 do
joachim99@2 3472 if test -r "$ac_dir/$test_include"; then
joachim99@2 3473 kde_cv_libgpp_includes=$ac_dir
joachim99@2 3474 break
joachim99@2 3475 fi
joachim99@2 3476 done
joachim99@2 3477 ])
joachim99@2 3478
joachim99@2 3479 AC_MSG_RESULT($kde_cv_libgpp_includes)
joachim99@2 3480 if test "$kde_cv_libgpp_includes" != "no"; then
joachim99@2 3481 all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES"
joachim99@2 3482 fi
joachim99@2 3483 ])
joachim99@2 3484 ])
joachim99@2 3485
joachim99@2 3486
joachim99@2 3487 AC_DEFUN(KDE_CHECK_MICO,
joachim99@2 3488 [
joachim99@2 3489 AC_REQUIRE([KDE_CHECK_LIBDL])
joachim99@2 3490 AC_REQUIRE([KDE_MISC_TESTS])
joachim99@2 3491 AC_MSG_CHECKING(for MICO)
joachim99@2 3492
joachim99@2 3493 if test -z "$MICODIR"; then
joachim99@2 3494 kde_micodir=/usr/local
joachim99@2 3495 else
joachim99@2 3496 kde_micodir="$MICODIR"
joachim99@2 3497 fi
joachim99@2 3498
joachim99@2 3499 AC_ARG_WITH(micodir,
joachim99@2 3500 [ --with-micodir=micodir where mico is installed ],
joachim99@2 3501 kde_micodir=$withval,
joachim99@2 3502 kde_micodir=$kde_micodir
joachim99@2 3503 )
joachim99@2 3504
joachim99@2 3505 AC_CACHE_VAL(kde_cv_mico_incdir,
joachim99@2 3506 [
joachim99@2 3507 mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes"
joachim99@2 3508 AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir)
joachim99@2 3509
joachim99@2 3510 ])
joachim99@2 3511 kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'`
joachim99@2 3512
joachim99@2 3513 if test ! -r $kde_micodir/include/CORBA.h; then
joachim99@2 3514 AC_MSG_ERROR([No CORBA.h found, specify another micodir])
joachim99@2 3515 fi
joachim99@2 3516
joachim99@2 3517 AC_MSG_RESULT($kde_micodir)
joachim99@2 3518
joachim99@2 3519 MICO_INCLUDES=-I$kde_micodir/include
joachim99@2 3520 AC_SUBST(MICO_INCLUDES)
joachim99@2 3521 MICO_LDFLAGS=-L$kde_micodir/lib
joachim99@2 3522 AC_SUBST(MICO_LDFLAGS)
joachim99@2 3523 micodir=$kde_micodir
joachim99@2 3524 AC_SUBST(micodir)
joachim99@2 3525
joachim99@2 3526 AC_MSG_CHECKING([for MICO version])
joachim99@2 3527 AC_CACHE_VAL(kde_cv_mico_version,
joachim99@2 3528 [
joachim99@2 3529 AC_LANG_C
joachim99@2 3530 cat >conftest.$ac_ext <<EOF
joachim99@2 3531 #include <stdio.h>
joachim99@2 3532 #include <mico/version.h>
joachim99@2 3533 int main() {
joachim99@2 3534
joachim99@2 3535 printf("MICO_VERSION=%s\n",MICO_VERSION);
joachim99@2 3536 return (0);
joachim99@2 3537 }
joachim99@2 3538 EOF
joachim99@2 3539 ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest'
joachim99@2 3540 if AC_TRY_EVAL(ac_compile); then
joachim99@2 3541 if eval `./conftest 2>&5`; then
joachim99@2 3542 kde_cv_mico_version=$MICO_VERSION
joachim99@2 3543 else
joachim99@2 3544 AC_MSG_ERROR([your system is not able to execute a small application to
joachim99@2 3545 find MICO version! Check $kde_micodir/include/mico/version.h])
joachim99@2 3546 fi
joachim99@2 3547 else
joachim99@2 3548 AC_MSG_ERROR([your system is not able to compile a small application to
joachim99@2 3549 find MICO version! Check $kde_micodir/include/mico/version.h])
joachim99@2 3550 fi
joachim99@2 3551 ])
joachim99@2 3552
joachim99@2 3553 dnl installed MICO version
joachim99@2 3554 mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'`
joachim99@2 3555 mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'`
joachim99@2 3556 mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'`
joachim99@2 3557
joachim99@2 3558 if test "x$1" = "x"; then
joachim99@2 3559 req_version="2.3.0"
joachim99@2 3560 else
joachim99@2 3561 req_version=$1
joachim99@2 3562 fi
joachim99@2 3563
joachim99@2 3564 dnl required MICO version
joachim99@2 3565 req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'`
joachim99@2 3566 req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'`
joachim99@2 3567 req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'`
joachim99@2 3568
joachim99@2 3569 if test "$mico_v_maj" -lt "$req_v_maj" || \
joachim99@2 3570 ( test "$mico_v_maj" -eq "$req_v_maj" && \
joachim99@2 3571 test "$mico_v_mid" -lt "$req_v_mid" ) || \
joachim99@2 3572 ( test "$mico_v_mid" -eq "$req_v_mid" && \
joachim99@2 3573 test "$mico_v_min" -lt "$req_v_min" )
joachim99@2 3574
joachim99@2 3575 then
joachim99@2 3576 AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \
joachim99@2 3577 at least is required. You should upgrade MICO.])
joachim99@2 3578 else
joachim99@2 3579 AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)])
joachim99@2 3580 fi
joachim99@2 3581
joachim99@2 3582 LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL"
joachim99@2 3583 AC_SUBST(LIBMICO)
joachim99@2 3584 if test -z "$IDL"; then
joachim99@2 3585 IDL='$(kde_bindir)/cuteidl'
joachim99@2 3586 fi
joachim99@2 3587 AC_SUBST(IDL)
joachim99@2 3588 IDL_DEPENDENCIES='$(kde_includes)/CUTE.h'
joachim99@2 3589 AC_SUBST(IDL_DEPENDENCIES)
joachim99@2 3590
joachim99@2 3591 idldir="\$(includedir)/idl"
joachim99@2 3592 AC_SUBST(idldir)
joachim99@2 3593
joachim99@2 3594 ])
joachim99@2 3595
joachim99@2 3596 AC_DEFUN(KDE_CHECK_MINI_STL,
joachim99@2 3597 [
joachim99@2 3598 AC_REQUIRE([KDE_CHECK_MICO])
joachim99@2 3599
joachim99@2 3600 AC_MSG_CHECKING(if we use mico's mini-STL)
joachim99@2 3601 AC_CACHE_VAL(kde_cv_have_mini_stl,
joachim99@2 3602 [
joachim99@2 3603 AC_LANG_SAVE
joachim99@2 3604 AC_LANG_CPLUSPLUS
joachim99@2 3605 kde_save_cxxflags="$CXXFLAGS"
joachim99@2 3606 CXXFLAGS="$CXXFLAGS $MICO_INCLUDES"
joachim99@2 3607 AC_TRY_COMPILE(
joachim99@2 3608 [
joachim99@2 3609 #include <mico/config.h>
joachim99@2 3610 ],
joachim99@2 3611 [
joachim99@2 3612 #ifdef HAVE_MINI_STL
joachim99@2 3613 #error "nothing"
joachim99@2 3614 #endif
joachim99@2 3615 ],
joachim99@2 3616 kde_cv_have_mini_stl=no,
joachim99@2 3617 kde_cv_have_mini_stl=yes)
joachim99@2 3618 CXXFLAGS="$kde_save_cxxflags"
joachim99@2 3619 AC_LANG_RESTORE
joachim99@2 3620 ])
joachim99@2 3621
joachim99@2 3622 if test "x$kde_cv_have_mini_stl" = "xyes"; then
joachim99@2 3623 AC_MSG_RESULT(yes)
joachim99@2 3624 $1
joachim99@2 3625 else
joachim99@2 3626 AC_MSG_RESULT(no)
joachim99@2 3627 $2
joachim99@2 3628 fi
joachim99@2 3629 ])
joachim99@2 3630
joachim99@2 3631 ])
joachim99@2 3632
joachim99@2 3633
joachim99@2 3634 AC_DEFUN(KDE_CHECK_LIBPTHREAD,
joachim99@2 3635 [
joachim99@2 3636 AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] )
joachim99@2 3637 AC_SUBST(LIBPTHREAD)
joachim99@2 3638 ])
joachim99@2 3639
joachim99@2 3640 AC_DEFUN(KDE_CHECK_PTHREAD_OPTION,
joachim99@2 3641 [
joachim99@2 3642 AC_ARG_ENABLE(kernel-threads, [ --enable-kernel-threads Enable the use of the LinuxThreads port on FreeBSD/i386 only.],
joachim99@2 3643 kde_use_kernthreads=$enableval, kde_use_kernthreads=no)
joachim99@2 3644
joachim99@2 3645 if test "$kde_use_kernthreads" = "yes"; then
joachim99@2 3646 ac_save_CXXFLAGS="$CXXFLAGS"
joachim99@2 3647 ac_save_CFLAGS="$CXXFLAGS"
joachim99@2 3648 CXXFLAGS="-I/usr/local/include/pthread/linuxthreads $CXXFLAGS"
joachim99@2 3649 CFLAGS="-I/usr/local/include/pthread/linuxthreads $CFLAGS"
joachim99@2 3650 AC_CHECK_HEADERS(pthread/linuxthreads/pthread.h)
joachim99@2 3651 CXXFLAGS="$ac_save_CXXFLAGS"
joachim99@2 3652 CFLAGS="$ac_save_CFLAGS"
joachim99@2 3653 if test "$ac_cv_header_pthread_linuxthreads_pthread_h" = "no"; then
joachim99@2 3654 kde_use_kernthreads=no
joachim99@2 3655 else
joachim99@2 3656 dnl Add proper -I and -l statements
joachim99@2 3657 AC_CHECK_LIB(lthread, pthread_join, [LIBPTHREAD="-llthread -llgcc_r"]) dnl for FreeBSD
joachim99@2 3658 if test "x$LIBPTHREAD" = "x"; then
joachim99@2 3659 kde_use_kernthreads=no
joachim99@2 3660 else
joachim99@2 3661 USE_THREADS="-D_THREAD_SAFE -I/usr/local/include/pthread/linuxthreads"
joachim99@2 3662 fi
joachim99@2 3663 fi
joachim99@2 3664 else
joachim99@2 3665 USE_THREADS=""
joachim99@2 3666 if test -z "$LIBPTHREAD"; then
joachim99@2 3667 KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-pthread"] )
joachim99@2 3668 fi
joachim99@2 3669 fi
joachim99@2 3670
joachim99@2 3671 case $host_os in
joachim99@2 3672 solaris*)
joachim99@2 3673 KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"])
joachim99@2 3674 CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4"
joachim99@2 3675 ;;
joachim99@2 3676 freebsd*)
joachim99@2 3677 CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"
joachim99@2 3678 ;;
joachim99@2 3679 aix*)
joachim99@2 3680 CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"
joachim99@2 3681 LIBPTHREAD="$LIBPTHREAD -lc_r"
joachim99@2 3682 ;;
joachim99@2 3683 linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT"
joachim99@2 3684 if test "$CXX" = "KCC"; then
joachim99@2 3685 CXXFLAGS="$CXXFLAGS --thread_safe"
joachim99@2 3686 NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe"
joachim99@2 3687 fi
joachim99@2 3688 ;;
joachim99@2 3689 *)
joachim99@2 3690 ;;
joachim99@2 3691 esac
joachim99@2 3692 AC_SUBST(USE_THREADS)
joachim99@2 3693 AC_SUBST(LIBPTHREAD)
joachim99@2 3694 ])
joachim99@2 3695
joachim99@2 3696 AC_DEFUN(KDE_CHECK_THREADING,
joachim99@2 3697 [
joachim99@2 3698 AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
joachim99@2 3699 AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION])
joachim99@2 3700 dnl default is yes if libpthread is found and no if no libpthread is available
joachim99@2 3701 if test -z "$LIBPTHREAD"; then
joachim99@2 3702 if test -z "$USE_THREADS"; then
joachim99@2 3703 kde_check_threading_default=no
joachim99@2 3704 else
joachim99@2 3705 kde_check_threading_default=yes
joachim99@2 3706 fi
joachim99@2 3707 else
joachim99@2 3708 kde_check_threading_default=yes
joachim99@2 3709 fi
joachim99@2 3710 AC_ARG_ENABLE(threading, [ --disable-threading disables threading even if libpthread found ],
joachim99@2 3711 kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default)
joachim99@2 3712 if test "x$kde_use_threading" = "xyes"; then
joachim99@2 3713 AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)])
joachim99@2 3714 fi
joachim99@2 3715 ])
joachim99@2 3716
joachim99@2 3717 AC_DEFUN(KDE_TRY_LINK_PYTHON,
joachim99@2 3718 [
joachim99@2 3719 if test "$kde_python_link_found" = no; then
joachim99@2 3720
joachim99@2 3721 if test "$1" = normal; then
joachim99@2 3722 AC_MSG_CHECKING(if a Python application links)
joachim99@2 3723 else
joachim99@2 3724 AC_MSG_CHECKING(if Python depends on $2)
joachim99@2 3725 fi
joachim99@2 3726
joachim99@2 3727 AC_CACHE_VAL(kde_cv_try_link_python_$1,
joachim99@2 3728 [
joachim99@2 3729 AC_LANG_SAVE
joachim99@2 3730 AC_LANG_C
joachim99@2 3731 kde_save_cflags="$CFLAGS"
joachim99@2 3732 CFLAGS="$CFLAGS $PYTHONINC"
joachim99@2 3733 kde_save_libs="$LIBS"
joachim99@2 3734 LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET"
joachim99@2 3735 kde_save_ldflags="$LDFLAGS"
joachim99@2 3736 LDFLAGS="$LDFLAGS $PYTHONLIB"
joachim99@2 3737
joachim99@2 3738 AC_TRY_LINK(
joachim99@2 3739 [
joachim99@2 3740 #include <Python.h>
joachim99@2 3741 ],[
joachim99@2 3742 PySys_SetArgv(1, 0);
joachim99@2 3743 ],
joachim99@2 3744 [kde_cv_try_link_python_$1=yes],
joachim99@2 3745 [kde_cv_try_link_python_$1=no]
joachim99@2 3746 )
joachim99@2 3747 CFLAGS="$kde_save_cflags"
joachim99@2 3748 LIBS="$kde_save_libs"
joachim99@2 3749 LDFLAGS="$kde_save_ldflags"
joachim99@2 3750 ])
joachim99@2 3751
joachim99@2 3752 if test "$kde_cv_try_link_python_$1" = "yes"; then
joachim99@2 3753 AC_MSG_RESULT(yes)
joachim99@2 3754 kde_python_link_found=yes
joachim99@2 3755 if test ! "$1" = normal; then
joachim99@2 3756 LIBPYTHON="$LIBPYTHON $2"
joachim99@2 3757 fi
joachim99@2 3758 $3
joachim99@2 3759 else
joachim99@2 3760 AC_MSG_RESULT(no)
joachim99@2 3761 $4
joachim99@2 3762 fi
joachim99@2 3763 AC_LANG_RESTORE
joachim99@2 3764
joachim99@2 3765 fi
joachim99@2 3766
joachim99@2 3767 ])
joachim99@2 3768
joachim99@2 3769 AC_DEFUN(KDE_CHECK_PYTHON_DIR,
joachim99@2 3770 [
joachim99@2 3771 AC_MSG_CHECKING([for Python directory])
joachim99@2 3772
joachim99@2 3773 AC_CACHE_VAL(kde_cv_pythondir,
joachim99@2 3774 [
joachim99@2 3775 if test -z "$PYTHONDIR"; then
joachim99@2 3776 kde_cv_pythondir=/usr/local
joachim99@2 3777 else
joachim99@2 3778 kde_cv_pythondir="$PYTHONDIR"
joachim99@2 3779 fi
joachim99@2 3780 ])
joachim99@2 3781
joachim99@2 3782 AC_ARG_WITH(pythondir,
joachim99@2 3783 [ --with-pythondir=pythondir use python installed in pythondir ],
joachim99@2 3784 [
joachim99@2 3785 ac_python_dir=$withval
joachim99@2 3786 ], ac_python_dir=$kde_cv_pythondir
joachim99@2 3787 )
joachim99@2 3788
joachim99@2 3789 AC_MSG_RESULT($ac_python_dir)
joachim99@2 3790 ])
joachim99@2 3791
joachim99@2 3792 AC_DEFUN(KDE_CHECK_PYTHON_INTERN,
joachim99@2 3793 [
joachim99@2 3794 AC_REQUIRE([KDE_CHECK_LIBDL])
joachim99@2 3795 AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
joachim99@2 3796 AC_REQUIRE([KDE_CHECK_PYTHON_DIR])
joachim99@2 3797
joachim99@2 3798 if test -z "$1"; then
joachim99@2 3799 version="1.5"
joachim99@2 3800 else
joachim99@2 3801 version="$1"
joachim99@2 3802 fi
joachim99@2 3803
joachim99@2 3804 AC_MSG_CHECKING([for Python$version])
joachim99@2 3805
joachim99@2 3806 python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes"
joachim99@2 3807 AC_FIND_FILE(Python.h, $python_incdirs, python_incdir)
joachim99@2 3808 if test ! -r $python_incdir/Python.h; then
joachim99@2 3809 AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir)
joachim99@2 3810 python_incdir=$python_incdir/python$version
joachim99@2 3811 if test ! -r $python_incdir/Python.h; then
joachim99@2 3812 python_incdir=no
joachim99@2 3813 fi
joachim99@2 3814 fi
joachim99@2 3815
joachim99@2 3816 PYTHONINC=-I$python_incdir
joachim99@2 3817
joachim99@2 3818 python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs"
joachim99@2 3819 AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir)
joachim99@2 3820 if test ! -r $python_libdir/libpython$version.a; then
joachim99@2 3821 AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir)
joachim99@2 3822 python_libdir=$python_libdir/python$version/config
joachim99@2 3823 if test ! -r $python_libdir/libpython$version.a; then
joachim99@2 3824 python_libdir=no
joachim99@2 3825 fi
joachim99@2 3826 fi
joachim99@2 3827
joachim99@2 3828 PYTHONLIB=-L$python_libdir
joachim99@2 3829 kde_orig_LIBPYTHON=$LIBPYTHON
joachim99@2 3830 if test -z "$LIBPYTHON"; then
joachim99@2 3831 LIBPYTHON=-lpython$version
joachim99@2 3832 fi
joachim99@2 3833
joachim99@2 3834 python_libdirs="$ac_python_dir/lib /usr/lib /usr/local /usr/lib $kde_extra_libs"
joachim99@2 3835 AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir)
joachim99@2 3836 python_moddir=$python_moddir/python$version
joachim99@2 3837 if test ! -r $python_moddir/copy.py; then
joachim99@2 3838 python_moddir=no
joachim99@2 3839 fi
joachim99@2 3840
joachim99@2 3841 PYTHONMODDIR=$python_moddir
joachim99@2 3842
joachim99@2 3843 AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir)
joachim99@2 3844
joachim99@2 3845 if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then
joachim99@2 3846 LIBPYTHON=$kde_orig_LIBPYTHON
joachim99@2 3847 test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB=""
joachim99@2 3848 test "x$PYTHONINC" = "x-Ino" && PYTHONINC=""
joachim99@2 3849 $2
joachim99@2 3850 else
joachim99@2 3851 dnl Note: this test is very weak
joachim99@2 3852 kde_python_link_found=no
joachim99@2 3853 KDE_TRY_LINK_PYTHON(normal)
joachim99@2 3854 KDE_TRY_LINK_PYTHON(m, -lm)
joachim99@2 3855 KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD)
joachim99@2 3856 KDE_TRY_LINK_PYTHON(tcl, -ltcl)
joachim99@2 3857 KDE_TRY_LINK_PYTHON(db2, -ldb2)
joachim99@2 3858 KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm])
joachim99@2 3859 KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil])
joachim99@2 3860 KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil])
joachim99@2 3861 KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3])
joachim99@2 3862 KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil])
joachim99@2 3863 KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm])
joachim99@2 3864 KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [],
joachim99@2 3865 [AC_MSG_WARN([it seems, Python depends on another library.
joachim99@2 3866 Pleae set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this
joachim99@2 3867 and contact the authors to let them know about this problem])
joachim99@2 3868 ])
joachim99@2 3869
joachim99@2 3870 LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET"
joachim99@2 3871 AC_SUBST(PYTHONINC)
joachim99@2 3872 AC_SUBST(PYTHONLIB)
joachim99@2 3873 AC_SUBST(LIBPYTHON)
joachim99@2 3874 AC_SUBST(PYTHONMODDIR)
joachim99@2 3875 AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python])
joachim99@2 3876 fi
joachim99@2 3877
joachim99@2 3878 ])
joachim99@2 3879
joachim99@2 3880
joachim99@2 3881 AC_DEFUN(KDE_CHECK_PYTHON,
joachim99@2 3882 [
joachim99@2 3883 KDE_CHECK_PYTHON_INTERN("2.1", [KDE_CHECK_PYTHON_INTERN("2.0",
joachim99@2 3884 [ KDE_CHECK_PYTHON_INTERN($1, $2) ])
joachim99@2 3885 ])
joachim99@2 3886 ])
joachim99@2 3887
joachim99@2 3888 AC_DEFUN(KDE_CHECK_STL_SGI,
joachim99@2 3889 [
joachim99@2 3890 AC_MSG_CHECKING([if STL implementation is SGI like])
joachim99@2 3891 AC_CACHE_VAL(kde_cv_stl_type_sgi,
joachim99@2 3892 [
joachim99@2 3893 AC_TRY_COMPILE([
joachim99@2 3894 #include <string>
joachim99@2 3895 using namespace std;
joachim99@2 3896 ],[
joachim99@2 3897 string astring="Hallo Welt.";
joachim99@2 3898 astring.erase(0, 6); // now astring is "Welt"
joachim99@2 3899 return 0;
joachim99@2 3900 ], kde_cv_stl_type_sgi=yes,
joachim99@2 3901 kde_cv_stl_type_sgi=no)
joachim99@2 3902 ])
joachim99@2 3903
joachim99@2 3904 AC_MSG_RESULT($kde_cv_stl_type_sgi)
joachim99@2 3905
joachim99@2 3906 if test "$kde_cv_stl_type_sgi" = "yes"; then
joachim99@2 3907 AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI])
joachim99@2 3908 fi
joachim99@2 3909 ])
joachim99@2 3910
joachim99@2 3911 AC_DEFUN(KDE_CHECK_STL_HP,
joachim99@2 3912 [
joachim99@2 3913 AC_MSG_CHECKING([if STL implementation is HP like])
joachim99@2 3914 AC_CACHE_VAL(kde_cv_stl_type_hp,
joachim99@2 3915 [
joachim99@2 3916 AC_TRY_COMPILE([
joachim99@2 3917 #include <string>
joachim99@2 3918 using namespace std;
joachim99@2 3919 ],[
joachim99@2 3920 string astring="Hello World";
joachim99@2 3921 astring.remove(0, 6); // now astring is "World"
joachim99@2 3922 return 0;
joachim99@2 3923 ], kde_cv_stl_type_hp=yes,
joachim99@2 3924 kde_cv_stl_type_hp=no)
joachim99@2 3925 ])
joachim99@2 3926 AC_MSG_RESULT($kde_cv_stl_type_hp)
joachim99@2 3927
joachim99@2 3928 if test "$kde_cv_stl_type_hp" = "yes"; then
joachim99@2 3929 AC_DEFINE_UNQUOTED(HAVE_HP_STL, 1, [Define if you have a STL implementation by HP])
joachim99@2 3930 fi
joachim99@2 3931 ])
joachim99@2 3932
joachim99@2 3933 AC_DEFUN(KDE_CHECK_STL,
joachim99@2 3934 [
joachim99@2 3935 AC_LANG_SAVE
joachim99@2 3936 AC_LANG_CPLUSPLUS
joachim99@2 3937 ac_save_CXXFLAGS="$CXXFLAGS"
joachim99@2 3938 CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`"
joachim99@2 3939 KDE_CHECK_STL_SGI
joachim99@2 3940
joachim99@2 3941 if test "$kde_cv_stl_type_sgi" = "no"; then
joachim99@2 3942 KDE_CHECK_STL_HP
joachim99@2 3943
joachim99@2 3944 if test "$kde_cv_stl_type_hp" = "no"; then
joachim99@2 3945 AC_MSG_ERROR("no known STL type found - did you forget to install libstdc++[-devel] ?")
joachim99@2 3946 fi
joachim99@2 3947 fi
joachim99@2 3948
joachim99@2 3949 CXXFLAGS="$ac_save_CXXFLAGS"
joachim99@2 3950 AC_LANG_RESTORE
joachim99@2 3951 ])
joachim99@2 3952
joachim99@2 3953 AC_DEFUN(AC_FIND_QIMGIO,
joachim99@2 3954 [AC_REQUIRE([AC_FIND_JPEG])
joachim99@2 3955 AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
joachim99@2 3956 AC_MSG_CHECKING([for qimgio])
joachim99@2 3957 AC_CACHE_VAL(ac_cv_lib_qimgio,
joachim99@2 3958 [
joachim99@2 3959 AC_LANG_SAVE
joachim99@2 3960 AC_LANG_CPLUSPLUS
joachim99@2 3961 ac_save_LIBS="$LIBS"
joachim99@2 3962 ac_save_CXXFLAGS="$CXXFLAGS"
joachim99@2 3963 LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT"
joachim99@2 3964 CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
joachim99@2 3965 AC_TRY_RUN(dnl
joachim99@2 3966 [
joachim99@2 3967 #include <qimageio.h>
joachim99@2 3968 #include <qstring.h>
joachim99@2 3969 int main() {
joachim99@2 3970 QString t = "hallo";
joachim99@2 3971 t.fill('t');
joachim99@2 3972 qInitImageIO();
joachim99@2 3973 }
joachim99@2 3974 ],
joachim99@2 3975 ac_cv_lib_qimgio=yes,
joachim99@2 3976 ac_cv_lib_qimgio=no,
joachim99@2 3977 ac_cv_lib_qimgio=no)
joachim99@2 3978 LIBS="$ac_save_LIBS"
joachim99@2 3979 CXXFLAGS="$ac_save_CXXFLAGS"
joachim99@2 3980 AC_LANG_RESTORE
joachim99@2 3981 ])dnl
joachim99@2 3982 if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then
joachim99@2 3983 LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG"
joachim99@2 3984 AC_MSG_RESULT(yes)
joachim99@2 3985 AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available])
joachim99@2 3986 AC_SUBST(LIBQIMGIO)
joachim99@2 3987 else
joachim99@2 3988 AC_MSG_RESULT(not found)
joachim99@2 3989 fi
joachim99@2 3990 ])
joachim99@2 3991
joachim99@2 3992 AC_DEFUN(KDE_CHECK_ANSI,
joachim99@2 3993 [
joachim99@2 3994 ])
joachim99@2 3995
joachim99@2 3996 AC_DEFUN(KDE_CHECK_INSURE,
joachim99@2 3997 [
joachim99@2 3998 AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]],
joachim99@2 3999 [
joachim99@2 4000 if test $enableval = "no"; dnl
joachim99@2 4001 then ac_use_insure="no"
joachim99@2 4002 else ac_use_insure="yes"
joachim99@2 4003 fi
joachim99@2 4004 ], [ac_use_insure="no"])
joachim99@2 4005
joachim99@2 4006 AC_MSG_CHECKING(if we will use Insure++ to debug)
joachim99@2 4007 AC_MSG_RESULT($ac_use_insure)
joachim99@2 4008 if test "$ac_use_insure" = "yes"; dnl
joachim99@2 4009 then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "????
joachim99@2 4010 fi
joachim99@2 4011 ])
joachim99@2 4012
joachim99@2 4013 AC_DEFUN(AM_DISABLE_LIBRARIES,
joachim99@2 4014 [
joachim99@2 4015 AC_PROVIDE([AM_ENABLE_STATIC])
joachim99@2 4016 AC_PROVIDE([AM_ENABLE_SHARED])
joachim99@2 4017 enable_static=no
joachim99@2 4018 enable_shared=yes
joachim99@2 4019 ])
joachim99@2 4020
joachim99@2 4021
joachim99@2 4022 AC_DEFUN(AC_CHECK_UTMP_FILE,
joachim99@2 4023 [
joachim99@2 4024 AC_MSG_CHECKING([for utmp file])
joachim99@2 4025
joachim99@2 4026 AC_CACHE_VAL(kde_cv_utmp_file,
joachim99@2 4027 [
joachim99@2 4028 kde_cv_utmp_file=no
joachim99@2 4029
joachim99@2 4030 for ac_file in \
joachim99@2 4031 \
joachim99@2 4032 /var/run/utmp \
joachim99@2 4033 /var/adm/utmp \
joachim99@2 4034 /etc/utmp \
joachim99@2 4035 ; \
joachim99@2 4036 do
joachim99@2 4037 if test -r "$ac_file"; then
joachim99@2 4038 kde_cv_utmp_file=$ac_file
joachim99@2 4039 break
joachim99@2 4040 fi
joachim99@2 4041 done
joachim99@2 4042 ])
joachim99@2 4043
joachim99@2 4044 if test "$kde_cv_utmp_file" != "no"; then
joachim99@2 4045 AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries])
joachim99@2 4046 $1
joachim99@2 4047 AC_MSG_RESULT($kde_cv_utmp_file)
joachim99@2 4048 else
joachim99@2 4049 $2
joachim99@2 4050 AC_MSG_RESULT([non found])
joachim99@2 4051 fi
joachim99@2 4052 ])
joachim99@2 4053
joachim99@2 4054
joachim99@2 4055 AC_DEFUN(KDE_CREATE_SUBDIRSLIST,
joachim99@2 4056 [
joachim99@2 4057
joachim99@2 4058 DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin"
joachim99@2 4059
joachim99@2 4060 if test ! -s $srcdir/subdirs; then
joachim99@2 4061 dnl Note: Makefile.common creates subdirs, so this is just a fallback
joachim99@2 4062 TOPSUBDIRS=""
joachim99@2 4063 files=`cd $srcdir && ls -1`
joachim99@2 4064 dirs=`for i in $files; do if test -d $i; then echo $i; fi; done`
joachim99@2 4065 for i in $dirs; do
joachim99@2 4066 echo $i >> $srcdir/subdirs
joachim99@2 4067 done
joachim99@2 4068 fi
joachim99@2 4069
joachim99@2 4070 if test -s $srcdir/inst-apps; then
joachim99@2 4071 ac_topsubdirs="`cat $srcdir/inst-apps`"
joachim99@2 4072 else
joachim99@2 4073 ac_topsubdirs="`cat $srcdir/subdirs`"
joachim99@2 4074 fi
joachim99@2 4075
joachim99@2 4076 for i in $ac_topsubdirs; do
joachim99@2 4077 AC_MSG_CHECKING([if $i should be compiled])
joachim99@2 4078 if test -d $srcdir/$i; then
joachim99@2 4079 install_it="yes"
joachim99@2 4080 for j in $DO_NOT_COMPILE; do
joachim99@2 4081 if test $i = $j; then
joachim99@2 4082 install_it="no"
joachim99@2 4083 fi
joachim99@2 4084 done
joachim99@2 4085 else
joachim99@2 4086 install_it="no"
joachim99@2 4087 fi
joachim99@2 4088 AC_MSG_RESULT($install_it)
joachim99@2 4089 if test $install_it = "yes"; then
joachim99@2 4090 TOPSUBDIRS="$TOPSUBDIRS $i"
joachim99@2 4091 fi
joachim99@2 4092 done
joachim99@2 4093
joachim99@2 4094 AC_SUBST(TOPSUBDIRS)
joachim99@2 4095 ])
joachim99@2 4096
joachim99@2 4097 AC_DEFUN(KDE_CHECK_NAMESPACES,
joachim99@2 4098 [
joachim99@2 4099 AC_MSG_CHECKING(whether C++ compiler supports namespaces)
joachim99@2 4100 AC_LANG_SAVE
joachim99@2 4101 AC_LANG_CPLUSPLUS
joachim99@2 4102 AC_TRY_COMPILE([
joachim99@2 4103 ],
joachim99@2 4104 [
joachim99@2 4105 namespace Foo {
joachim99@2 4106 extern int i;
joachim99@2 4107 namespace Bar {
joachim99@2 4108 extern int i;
joachim99@2 4109 }
joachim99@2 4110 }
joachim99@2 4111
joachim99@2 4112 int Foo::i = 0;
joachim99@2 4113 int Foo::Bar::i = 1;
joachim99@2 4114 ],[
joachim99@2 4115 AC_MSG_RESULT(yes)
joachim99@2 4116 AC_DEFINE(HAVE_NAMESPACES)
joachim99@2 4117 ], [
joachim99@2 4118 AC_MSG_RESULT(no)
joachim99@2 4119 ])
joachim99@2 4120 AC_LANG_RESTORE
joachim99@2 4121 ])
joachim99@2 4122
joachim99@2 4123 AC_DEFUN(KDE_CHECK_NEWLIBS,
joachim99@2 4124 [
joachim99@2 4125
joachim99@2 4126 ])
joachim99@2 4127
joachim99@2 4128 dnl ------------------------------------------------------------------------
joachim99@2 4129 dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org
joachim99@2 4130 dnl ------------------------------------------------------------------------
joachim99@2 4131 dnl
joachim99@2 4132 AC_DEFUN(AC_CHECK_S_ISSOCK,
joachim99@2 4133 [
joachim99@2 4134 AC_MSG_CHECKING(for S_ISSOCK)
joachim99@2 4135 AC_CACHE_VAL(ac_cv_have_s_issock,
joachim99@2 4136 [
joachim99@2 4137 AC_LANG_SAVE
joachim99@2 4138 AC_LANG_C
joachim99@2 4139 AC_TRY_LINK(
joachim99@2 4140 [
joachim99@2 4141 #include <sys/stat.h>
joachim99@2 4142 ],
joachim99@2 4143 [
joachim99@2 4144 struct stat buff;
joachim99@2 4145 int b = S_ISSOCK( buff.st_mode );
joachim99@2 4146 ],
joachim99@2 4147 ac_cv_have_s_issock=yes,
joachim99@2 4148 ac_cv_have_s_issock=no)
joachim99@2 4149 AC_LANG_RESTORE
joachim99@2 4150 ])
joachim99@2 4151 AC_MSG_RESULT($ac_cv_have_s_issock)
joachim99@2 4152 if test "$ac_cv_have_s_issock" = "yes"; then
joachim99@2 4153 AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.])
joachim99@2 4154 fi
joachim99@2 4155 ])
joachim99@2 4156
joachim99@2 4157 dnl ------------------------------------------------------------------------
joachim99@2 4158 dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org
joachim99@2 4159 dnl ------------------------------------------------------------------------
joachim99@2 4160 dnl
joachim99@2 4161 AC_DEFUN(AC_CHECK_KDEMAXPATHLEN,
joachim99@2 4162 [
joachim99@2 4163 AC_MSG_CHECKING(for MAXPATHLEN)
joachim99@2 4164 AC_CACHE_VAL(ac_cv_maxpathlen,
joachim99@2 4165 [
joachim99@2 4166 AC_LANG_C
joachim99@2 4167 cat > conftest.$ac_ext <<EOF
joachim99@2 4168 #ifdef STDC_HEADERS
joachim99@2 4169 # include <stdlib.h>
joachim99@2 4170 #endif
joachim99@2 4171 #include <stdio.h>
joachim99@2 4172 #include <sys/param.h>
joachim99@2 4173 #ifndef MAXPATHLEN
joachim99@2 4174 #define MAXPATHLEN 1024
joachim99@2 4175 #endif
joachim99@2 4176
joachim99@2 4177 KDE_HELLO MAXPATHLEN
joachim99@2 4178
joachim99@2 4179 EOF
joachim99@2 4180
joachim99@2 4181 ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out"
joachim99@2 4182
joachim99@2 4183 if AC_TRY_EVAL(ac_try) && test -s conftest.out; then
joachim99@2 4184 ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out`
joachim99@2 4185 else
joachim99@2 4186 ac_cv_maxpathlen=1024
joachim99@2 4187 fi
joachim99@2 4188
joachim99@2 4189 rm conftest.*
joachim99@2 4190
joachim99@2 4191 ])
joachim99@2 4192 AC_MSG_RESULT($ac_cv_maxpathlen)
joachim99@2 4193 AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] )
joachim99@2 4194 ])
joachim99@2 4195
joachim99@2 4196 dnl -------------------------------------------------------------------------
joachim99@2 4197 dnl See if the compiler supports a template repository bero@redhat.de
joachim99@2 4198 dnl -------------------------------------------------------------------------
joachim99@2 4199 AC_DEFUN(KDE_COMPILER_REPO,
joachim99@2 4200 [
joachim99@2 4201 REPO=""
joachim99@2 4202 NOREPO=""
joachim99@2 4203
joachim99@2 4204 KDE_CHECK_COMPILER_FLAG(frepo,
joachim99@2 4205 [
joachim99@2 4206 REPO="-frepo"
joachim99@2 4207 NOREPO="-fno-repo"
joachim99@2 4208 ])
joachim99@2 4209
joachim99@2 4210 if test -z "$REPO"; then
joachim99@2 4211 KDE_CHECK_COMPILER_FLAG(instances=explicit,
joachim99@2 4212 [
joachim99@2 4213 REPO="-instances=explicit"
joachim99@2 4214 NOREPO="-instances=extern"
joachim99@2 4215 ])
joachim99@2 4216 fi
joachim99@2 4217
joachim99@2 4218 if test -n "$REPO"; then
joachim99@2 4219 AC_DEFINE_UNQUOTED(HAVE_TEMPLATE_REPOSITORY, 1,
joachim99@2 4220 [C++ compiler supports template repository])
joachim99@2 4221 $1
joachim99@2 4222 fi
joachim99@2 4223
joachim99@2 4224 AC_SUBST(REPO)
joachim99@2 4225 AC_SUBST(NOREPO)
joachim99@2 4226 ])
joachim99@2 4227
joachim99@2 4228 AC_DEFUN(KDE_CHECK_HEADER,
joachim99@2 4229 [
joachim99@2 4230 AC_LANG_SAVE
joachim99@2 4231 kde_safe_cppflags=$CPPFLAGS
joachim99@2 4232 CPPFLAGS="$CPPFLAGS $all_includes"
joachim99@2 4233 AC_LANG_CPLUSPLUS
joachim99@2 4234 AC_CHECK_HEADER($1, $2, $3)
joachim99@2 4235 CPPFLAGS=$kde_safe_cppflags
joachim99@2 4236 AC_LANG_RESTORE
joachim99@2 4237 ])
joachim99@2 4238
joachim99@2 4239 AC_DEFUN(KDE_FAST_CONFIGURE,
joachim99@2 4240 [
joachim99@2 4241 dnl makes configure fast (needs perl)
joachim99@2 4242 AC_ARG_ENABLE(fast-perl, [ --disable-fast-perl disable fast Makefile generation (needs perl)],
joachim99@2 4243 with_fast_perl=$enableval, with_fast_perl=yes)
joachim99@2 4244 ])
joachim99@2 4245
joachim99@2 4246 AC_DEFUN(KDE_CONF_FILES,
joachim99@2 4247 [
joachim99@2 4248 val=
joachim99@2 4249 if test -f $srcdir/configure.files ; then
joachim99@2 4250 val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files`
joachim99@2 4251 fi
joachim99@2 4252 CONF_FILES=
joachim99@2 4253 if test -n "$val" ; then
joachim99@2 4254 for i in $val ; do
joachim99@2 4255 CONF_FILES="$CONF_FILES $i"
joachim99@2 4256 done
joachim99@2 4257 fi
joachim99@2 4258 AC_SUBST(CONF_FILES)
joachim99@2 4259 ])dnl
joachim99@2 4260
joachim99@2 4261 AC_DEFUN(KDE_SET_PREFIX,
joachim99@2 4262 [
joachim99@2 4263 unset CDPATH
joachim99@2 4264 dnl make $KDEDIR the default for the installation
joachim99@2 4265 AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde})
joachim99@2 4266
joachim99@2 4267 if test "x$prefix" = "xNONE"; then
joachim99@2 4268 prefix=$ac_default_prefix
joachim99@2 4269 ac_configure_args="$ac_configure_args --prefix $prefix"
joachim99@2 4270 fi
joachim99@2 4271 KDE_FAST_CONFIGURE
joachim99@2 4272 KDE_CONF_FILES
joachim99@2 4273 ])
joachim99@2 4274
joachim99@2 4275 pushdef([AC_PROG_INSTALL],
joachim99@2 4276 [
joachim99@2 4277 dnl our own version, testing for a -p flag
joachim99@2 4278 popdef([AC_PROG_INSTALL])
joachim99@2 4279 dnl as AC_PROG_INSTALL works as it works we first have
joachim99@2 4280 dnl to save if the user didn't specify INSTALL, as the
joachim99@2 4281 dnl autoconf one overwrites INSTALL and we have no chance to find
joachim99@2 4282 dnl out afterwards
joachim99@2 4283 test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL
joachim99@2 4284 test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM
joachim99@2 4285 test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT
joachim99@2 4286 AC_PROG_INSTALL
joachim99@2 4287
joachim99@2 4288 if test -z "$kde_save_INSTALL_given" ; then
joachim99@2 4289 # OK, user hasn't given any INSTALL, autoconf found one for us
joachim99@2 4290 # now we test, if it supports the -p flag
joachim99@2 4291 AC_MSG_CHECKING(for -p flag to install)
joachim99@2 4292 rm -f confinst.$$.* > /dev/null 2>&1
joachim99@2 4293 echo "Testtest" > confinst.$$.orig
joachim99@2 4294 ac_res=no
joachim99@2 4295 if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then
joachim99@2 4296 if test -f confinst.$$.new ; then
joachim99@2 4297 # OK, -p seems to do no harm to install
joachim99@2 4298 INSTALL="${INSTALL} -p"
joachim99@2 4299 ac_res=yes
joachim99@2 4300 fi
joachim99@2 4301 fi
joachim99@2 4302 rm -f confinst.$$.*
joachim99@2 4303 AC_MSG_RESULT($ac_res)
joachim99@2 4304 fi
joachim99@2 4305 dnl the following tries to resolve some signs and wonders coming up
joachim99@2 4306 dnl with different autoconf/automake versions
joachim99@2 4307 dnl e.g.:
joachim99@2 4308 dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s
joachim99@2 4309 dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS)
joachim99@2 4310 dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s
joachim99@2 4311 dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has
joachim99@2 4312 dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the
joachim99@2 4313 dnl install-@DIR@PROGRAMS targets to explicitly use that flag
joachim99@2 4314 dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as
joachim99@2 4315 dnl INSTALL_SCRIPT, which breaks with automake <= 1.4
joachim99@2 4316 dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure
joachim99@2 4317 dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from
joachim99@2 4318 dnl automake (due to broken Makefile.am or whatever) to install programs,
joachim99@2 4319 dnl and so does not see the -s flag in automake > 1.4
joachim99@2 4320 dnl to clean up that mess we:
joachim99@2 4321 dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG
joachim99@2 4322 dnl which cleans KDE's program with automake > 1.4;
joachim99@2 4323 dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems
joachim99@2 4324 dnl with automake<=1.4
joachim99@2 4325 dnl note that dues to this sometimes two '-s' flags are used (if KDE
joachim99@2 4326 dnl properly uses install-@DIR@PROGRAMS, but I don't care
joachim99@2 4327 dnl
joachim99@2 4328 dnl And to all this comes, that I even can't write in comments variable
joachim99@2 4329 dnl names used by automake, because it is so stupid to think I wanted to
joachim99@2 4330 dnl _use_ them, therefor I have written A_M_... instead of AM_
joachim99@2 4331 dnl hmm, I wanted to say something ... ahh yes: Arghhh.
joachim99@2 4332
joachim99@2 4333 if test -z "$kde_save_INSTALL_PROGRAM_given" ; then
joachim99@2 4334 INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)'
joachim99@2 4335 fi
joachim99@2 4336 if test -z "$kde_save_INSTALL_SCRIPT_given" ; then
joachim99@2 4337 INSTALL_SCRIPT='${INSTALL}'
joachim99@2 4338 fi
joachim99@2 4339 ])dnl
joachim99@2 4340
joachim99@2 4341 AC_DEFUN(KDE_LANG_CPLUSPLUS,
joachim99@2 4342 [AC_LANG_CPLUSPLUS
joachim99@2 4343 ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC'
joachim99@2 4344 pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS])
joachim99@2 4345 ])
joachim99@2 4346
joachim99@2 4347 pushdef([AC_LANG_CPLUSPLUS],
joachim99@2 4348 [popdef([AC_LANG_CPLUSPLUS])
joachim99@2 4349 KDE_LANG_CPLUSPLUS
joachim99@2 4350 ])
joachim99@2 4351
joachim99@2 4352 AC_DEFUN(KDE_CHECK_LONG_LONG,
joachim99@2 4353 [
joachim99@2 4354 AC_MSG_CHECKING(for long long)
joachim99@2 4355 AC_CACHE_VAL(kde_cv_c_long_long,
joachim99@2 4356 [
joachim99@2 4357 AC_LANG_SAVE
joachim99@2 4358 AC_LANG_CPLUSPLUS
joachim99@2 4359 AC_TRY_LINK([], [
joachim99@2 4360 long long foo = 0;
joachim99@2 4361 foo = foo+1;
joachim99@2 4362 ],
joachim99@2 4363 kde_cv_c_long_long=yes, kde_cv_c_long_long=no)
joachim99@2 4364 AC_LANG_RESTORE
joachim99@2 4365 ])
joachim99@2 4366 AC_MSG_RESULT($kde_cv_c_long_long)
joachim99@2 4367 if test "$kde_cv_c_long_long" = yes; then
joachim99@2 4368 AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype])
joachim99@2 4369 fi
joachim99@2 4370 ])
joachim99@2 4371
joachim99@2 4372 AC_DEFUN(KDE_CHECK_LIB,
joachim99@2 4373 [
joachim99@2 4374 kde_save_LIBS="$LIBS"
joachim99@2 4375 LIBS="$LIBS $all_libraries"
joachim99@2 4376 case $host_os in
joachim99@2 4377 aix*) LIBS="-brtl $LIBS"
joachim99@2 4378 test "$GCC" = yes && LIBS="-Wl,$LIBS"
joachim99@2 4379 ;;
joachim99@2 4380 esac
joachim99@2 4381 AC_CHECK_LIB($1, $2, $3, $4, $5)
joachim99@2 4382 LIBS="$kde_save_LIBS"
joachim99@2 4383 ])
joachim99@2 4384
joachim99@2 4385
joachim99@2 4386
joachim99@2 4387
joachim99@2 4388 AC_DEFUN(KDE_CHECK_INITGROUPS,
joachim99@2 4389 [
joachim99@2 4390 AC_REQUIRE([AC_CANONICAL_HOST])
joachim99@2 4391 AC_CHECK_FUNCS(initgroups)
joachim99@2 4392 if test "x$ac_cv_func_initgroups" = "xyes"; then
joachim99@2 4393 case $host_os in
joachim99@2 4394 aix*) AC_LANG_SAVE
joachim99@2 4395 AC_LANG_CPLUSPLUS
joachim99@2 4396 AC_MSG_CHECKING([for initgroups prototype])
joachim99@2 4397 AC_CACHE_VAL(kde_cv_check_initgroups_proto,
joachim99@2 4398 [ AC_TRY_COMPILE(
joachim99@2 4399 [ #include <grp.h>
joachim99@2 4400 ],
joachim99@2 4401 [ char buffer[10];
joachim99@2 4402 gid_t id;
joachim99@2 4403 int x = initgroups(buffer,id);
joachim99@2 4404 ],
joachim99@2 4405 kde_cv_check_initgroups_proto=yes,
joachim99@2 4406 kde_cv_check_initgroups_proto=no)
joachim99@2 4407 ])
joachim99@2 4408 AC_MSG_RESULT($kde_cv_check_initgroups_proto)
joachim99@2 4409 AC_LANG_RESTORE
joachim99@2 4410 ;;
joachim99@2 4411 *)
joachim99@2 4412 kde_cv_check_initgroups_proto=yes
joachim99@2 4413 ;;
joachim99@2 4414 esac
joachim99@2 4415 else
joachim99@2 4416 kde_cv_check_initgroups_proto=no
joachim99@2 4417 fi
joachim99@2 4418 if test "x$kde_cv_check_initgroups_proto" = "xyes"; then
joachim99@2 4419 kde_check_initgroups_proto=1
joachim99@2 4420 else
joachim99@2 4421 kde_check_initgroups_proto=0
joachim99@2 4422 fi
joachim99@2 4423 AC_DEFINE_UNQUOTED(HAVE_INITGROUPS_PROTO,$kde_check_initgroups_proto,
joachim99@2 4424 [initgroups may exist but not its prototype (e.g. AIX<4.3.3:8)])
joachim99@2 4425 ])
joachim99@2 4426
joachim99@2 4427
joachim99@2 4428 AC_DEFUN(KDE_CHECK_JAVA_DIR,
joachim99@2 4429 [
joachim99@2 4430 AC_MSG_CHECKING([for Java directory])
joachim99@2 4431
joachim99@2 4432 AC_ARG_WITH(java,
joachim99@2 4433 [ --with-java=javadir use java installed in javadir, --without-java disables ],
joachim99@2 4434 [ ac_java_dir=$withval
joachim99@2 4435 ], ac_java_dir=""
joachim99@2 4436 )
joachim99@2 4437
joachim99@2 4438 dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH
joachim99@2 4439 if test "x$ac_java_dir" = xno; then
joachim99@2 4440 kde_cv_java_bindir=no
joachim99@2 4441 kde_cv_java_includedir=no
joachim99@2 4442 kde_java_libjvmdir=no
joachim99@2 4443 kde_java_libhpidir=no
joachim99@2 4444 else
joachim99@2 4445 if test "x$ac_java_dir" = x; then
joachim99@2 4446 dnl No option set -> look in $PATH
joachim99@2 4447 AC_CACHE_VAL(kde_cv_java_bindir,
joachim99@2 4448 [
joachim99@2 4449 dnl First look for javac in $PATH. If not found we'll look at the option.
joachim99@2 4450 KDE_FIND_PATH(javac, JAVAC, [], [])
joachim99@2 4451 if test -n "$JAVAC"; then
joachim99@2 4452 kde_cv_java_bindir=`echo $JAVAC | sed -e 's,/javac$,/,'`
joachim99@2 4453 dnl this substitution might not work - well, we test for jni.h below
joachim99@2 4454 kde_cv_java_includedir=`echo $kde_cv_java_bindir | sed -e 's,bin/$,include/,'`
joachim99@2 4455 else
joachim99@2 4456 kde_cv_java_bindir=no
joachim99@2 4457 fi
joachim99@2 4458 ])
joachim99@2 4459 else
joachim99@2 4460 dnl config option set
joachim99@2 4461 kde_cv_java_bindir=$ac_java_dir/bin
joachim99@2 4462 kde_cv_java_includedir=$ac_java_dir/include
joachim99@2 4463 fi
joachim99@2 4464 fi
joachim99@2 4465
joachim99@2 4466 dnl At this point kde_cv_java_bindir and kde_cv_java_includedir are either set or "no"
joachim99@2 4467 if test ! "x$kde_cv_java_bindir" = xno; then
joachim99@2 4468
joachim99@2 4469 dnl Look for libjvm.so
joachim99@2 4470 kde_java_libjvmdir=`find $kde_cv_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1`
joachim99@2 4471 dnl Look for libhpi.so and avoid green threads
joachim99@2 4472 kde_java_libhpidir=`find $kde_cv_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,'`
joachim99@2 4473
joachim99@2 4474 dnl Now check everything's fine under there
joachim99@2 4475
joachim99@2 4476 if test ! -x "$kde_cv_java_bindir/javac"; then
joachim99@2 4477 AC_MSG_ERROR([javac not found under $kde_cv_java_bindir - it seems you passed a wrong --with-java.])
joachim99@2 4478 fi
joachim99@2 4479 if test ! -x "$kde_cv_java_bindir/javah"; then
joachim99@2 4480 AC_MSG_ERROR([javah not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.])
joachim99@2 4481 fi
joachim99@2 4482 if test ! -x "$kde_cv_java_bindir/jar"; then
joachim99@2 4483 AC_MSG_ERROR([jar not found under $kde_cv_java_bindir. javac was found though! Use --with-java or --without-java.])
joachim99@2 4484 fi
joachim99@2 4485 if test ! -r "$kde_cv_java_includedir/jni.h"; then
joachim99@2 4486 AC_MSG_ERROR([jni.h not found under $kde_cv_java_includedir. Use --with-java or --without-java.])
joachim99@2 4487 fi
joachim99@2 4488 if test ! -r "$kde_java_libjvmdir/libjvm.so"; then
joachim99@2 4489 AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.])
joachim99@2 4490 fi
joachim99@2 4491 if test ! -r "$kde_java_libhpidir/libhpi.so"; then
joachim99@2 4492 AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.])
joachim99@2 4493 fi
joachim99@2 4494
joachim99@2 4495 jni_includes="-I$kde_cv_java_includedir"
joachim99@2 4496 dnl Strange thing, jni.h requires jni_md.h which is under genunix here..
joachim99@2 4497 dnl and under linux here..
joachim99@2 4498 test -d "$kde_cv_java_includedir/linux" && jni_includes="$jni_includes -I$kde_cv_java_includedir/linux"
joachim99@2 4499 test -d "$kde_cv_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_cv_java_includedir/genunix"
joachim99@2 4500
joachim99@2 4501 dnl Check for JNI version
joachim99@2 4502 AC_LANG_SAVE
joachim99@2 4503 AC_LANG_CPLUSPLUS
joachim99@2 4504 ac_cxxflags_safe="$CXXFLAGS"
joachim99@2 4505 CXXFLAGS="$CXXFLAGS $all_includes $jni_includes"
joachim99@2 4506
joachim99@2 4507 AC_TRY_COMPILE([
joachim99@2 4508 #include <jni.h>
joachim99@2 4509 ],
joachim99@2 4510 [
joachim99@2 4511 #ifndef JNI_VERSION_1_2
joachim99@2 4512 Syntax Error
joachim99@2 4513 #endif
joachim99@2 4514 ],[ kde_jni_works=yes ],
joachim99@2 4515 [ kde_jni_works=no ])
joachim99@2 4516
joachim99@2 4517 if test $kde_jni_works = no; then
joachim99@2 4518 AC_MSG_ERROR([Incorrect version of $kde_cv_java_includedir/jni.h.
joachim99@2 4519 You need to have Java Development Kit (JDK) version 1.2.
joachim99@2 4520
joachim99@2 4521 Use --with-java to specify another location.
joachim99@2 4522 Use --without-java to configure without java support.
joachim99@2 4523 Or download a newer JDK and try again.
joachim99@2 4524 See e.g. http://java.sun.com/products/jdk/1.2 ])
joachim99@2 4525 fi
joachim99@2 4526
joachim99@2 4527 CXXFLAGS="$ac_cxxflags_safe"
joachim99@2 4528 AC_LANG_RESTORE
joachim99@2 4529
joachim99@2 4530 dnl All tests ok, inform and subst the variables
joachim99@2 4531 AC_MSG_RESULT([javac/javah/jar in $kde_cv_java_bindir, jni.h in $kde_cv_java_includedir])
joachim99@2 4532
joachim99@2 4533 JAVAC=$kde_cv_java_bindir/javac
joachim99@2 4534 AC_SUBST(JAVAC)
joachim99@2 4535 JAVAH=$kde_cv_java_bindir/javah
joachim99@2 4536 AC_SUBST(JAVAH)
joachim99@2 4537 JAR=$kde_cv_java_bindir/jar
joachim99@2 4538 AC_SUBST(JAR)
joachim99@2 4539 AC_SUBST(jni_includes)
joachim99@2 4540 JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_cv_java_libhpidir -lhpi"
joachim99@2 4541 AC_SUBST(JVMLIBS)
joachim99@2 4542 fi
joachim99@2 4543 ])
joachim99@2 4544
joachim99@2 4545 dnl this is a redefinition of autoconf 2.5x's AC_FOREACH.
joachim99@2 4546 dnl When the argument list becomes big, as in KDE for AC_OUTPUT in
joachim99@2 4547 dnl big packages, m4_foreach is dog-slow. So use our own version of
joachim99@2 4548 dnl it. (matz@kde.org)
joachim99@2 4549 m4_define([mm_foreach],
joachim99@2 4550 [m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])])
joachim99@2 4551 m4_define([mm_car], [[$1]])
joachim99@2 4552 m4_define([mm_car2], [[$@]])
joachim99@2 4553 m4_define([_mm_foreach],
joachim99@2 4554 [m4_if(m4_quote($2), [], [],
joachim99@2 4555 [m4_define([$1], [mm_car($2)])$3[]_mm_foreach([$1],
joachim99@2 4556 mm_car2(m4_shift($2)),
joachim99@2 4557 [$3])])])
joachim99@2 4558 m4_define([AC_FOREACH],
joachim99@2 4559 [mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])])
joachim99@2 4560
joachim99@2 4561 AC_DEFUN(KDE_NEED_FLEX,
joachim99@2 4562 [
joachim99@2 4563 AC_REQUIRE([AM_PROG_LEX])
joachim99@2 4564 if test -z "$LEXLIB"; then
joachim99@2 4565 AC_MSG_ERROR([You need to have flex installed.])
joachim99@2 4566 fi
joachim99@2 4567 AC_SUBST(LEXLIB)
joachim99@2 4568 ])
joachim99@2 4569
joachim99@2 4570 AC_DEFUN(AC_PATH_QTOPIA,
joachim99@2 4571 [
joachim99@2 4572 dnl TODO: use AC_CACHE_VAL
joachim99@2 4573
joachim99@2 4574 if test -z "$1"; then
joachim99@2 4575 qtopia_minver_maj=1
joachim99@2 4576 qtopia_minver_min=5
joachim99@2 4577 qtopia_minver_pat=0
joachim99@2 4578 else
joachim99@2 4579 qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"`
joachim99@2 4580 qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"`
joachim99@2 4581 qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"`
joachim99@2 4582 fi
joachim99@2 4583
joachim99@2 4584 qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat"
joachim99@2 4585 qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat"
joachim99@2 4586
joachim99@2 4587 AC_REQUIRE([AC_PATH_QT])
joachim99@2 4588
joachim99@2 4589 AC_MSG_CHECKING([for Qtopia])
joachim99@2 4590
joachim99@2 4591 LIB_QTOPIA="-lqpe"
joachim99@2 4592 AC_SUBST(LIB_QTOPIA)
joachim99@2 4593
joachim99@2 4594 kde_qtopia_dirs="$QPEDIR /opt/Qtopia"
joachim99@2 4595
joachim99@2 4596 ac_qtopia_incdir=NO
joachim99@2 4597
joachim99@2 4598 AC_ARG_WITH(qtopia-dir,
joachim99@2 4599 [ --with-qtopia-dir=DIR where the root of Qtopia is installed ],
joachim99@2 4600 [ ac_qtopia_incdir="$withval"/include] )
joachim99@2 4601
joachim99@2 4602 qtopia_incdirs=""
joachim99@2 4603 for dir in $kde_qtopia_dirs; do
joachim99@2 4604 qtopia_incdirs="$qtopia_incdirs $dir/include"
joachim99@2 4605 done
joachim99@2 4606
joachim99@2 4607 if test ! "$ac_qtopia_incdir" = "NO"; then
joachim99@2 4608 qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs"
joachim99@2 4609 fi
joachim99@2 4610
joachim99@2 4611 qtopia_incdir=""
joachim99@2 4612 AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir)
joachim99@2 4613 ac_qtopia_incdir="$qtopia_incdir"
joachim99@2 4614
joachim99@2 4615 if test -z "$qtopia_incdir"; then
joachim99@2 4616 AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.])
joachim99@2 4617 fi
joachim99@2 4618
joachim99@2 4619 qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`;
joachim99@2 4620 qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`;
joachim99@2 4621 qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`;
joachim99@2 4622
joachim99@2 4623 qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat"
joachim99@2 4624 qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat"
joachim99@2 4625 if test "$qtopia_ver" -lt "$qtopia_minver"; then
joachim99@2 4626 AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr
joachim99@2 4627 is required.])
joachim99@2 4628 fi
joachim99@2 4629
joachim99@2 4630 AC_LANG_SAVE
joachim99@2 4631 AC_LANG_CPLUSPLUS
joachim99@2 4632
joachim99@2 4633 ac_cxxflags_safe="$CXXFLAGS"
joachim99@2 4634 ac_ldflags_safe="$LDFLAGS"
joachim99@2 4635 ac_libs_safe="$LIBS"
joachim99@2 4636
joachim99@2 4637 CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes"
joachim99@2 4638 LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
joachim99@2 4639 LIBS="$LIBS $LIB_QTOPIA $LIBQT"
joachim99@2 4640
joachim99@2 4641 cat > conftest.$ac_ext <<EOF
joachim99@2 4642 #include "confdefs.h"
joachim99@2 4643 #include <qpe/qpeapplication.h>
joachim99@2 4644 #include <qpe/version.h>
joachim99@2 4645
joachim99@2 4646 int main( int argc, char **argv )
joachim99@2 4647 {
joachim99@2 4648 QPEApplication app( argc, argv );
joachim99@2 4649 return 0;
joachim99@2 4650 }
joachim99@2 4651 EOF
joachim99@2 4652
joachim99@2 4653 if AC_TRY_EVAL(ac_link) && test -s conftest; then
joachim99@2 4654 rm -f conftest*
joachim99@2 4655 else
joachim99@2 4656 rm -f conftest*
joachim99@2 4657 AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at
joachim99@2 4658 the end of config.log])
joachim99@2 4659 fi
joachim99@2 4660
joachim99@2 4661 CXXFLAGS="$ac_cxxflags_safe"
joachim99@2 4662 LDFLAGS="$ac_ldflags_safe"
joachim99@2 4663 LIBS="$ac_libs_safe"
joachim99@2 4664
joachim99@2 4665 AC_LANG_RESTORE
joachim99@2 4666
joachim99@2 4667 QTOPIA_INCLUDES="-I$qtopia_incdir"
joachim99@2 4668 AC_SUBST(QTOPIA_INCLUDES)
joachim99@2 4669
joachim99@2 4670 AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir])
joachim99@2 4671 ])
joachim99@2 4672