You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ktorrent/configure.in

458 lines
17 KiB

dnl =======================================================
dnl FILE: ./admin/configure.in.min
dnl =======================================================
dnl This file is part of the KDE libraries/packages
dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org)
dnl This file is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Library General Public
dnl License as published by the Free Software Foundation; either
dnl version 2 of the License, or (at your option) any later version.
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl Library General Public License for more details.
dnl You should have received a copy of the GNU Library General Public License
dnl along with this library; see the file COPYING.LIB. If not, write to
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
dnl Boston, MA 02110-1301, USA.
# Original Author was Kalle@kde.org
# I lifted it in some mater. (Stephan Kulow)
# I used much code from Janos Farkas
dnl Process this file with autoconf to produce a configure script.
AC_INIT(acinclude.m4) dnl a source file from your sub dir
dnl This is so we can use kde-common
AC_CONFIG_AUX_DIR(admin)
dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
unset CDPATH
dnl Checking host/target/build systems, for make, install etc.
AC_CANONICAL_SYSTEM
dnl Perform program name transformation
AC_ARG_PROGRAM
dnl Automake doc recommends to do this only here. (Janos)
AM_INIT_AUTOMAKE(ktorrent, 2.2.8) dnl searches for some needed programs
KDE_SET_PREFIX
dnl generate the config header
AM_CONFIG_HEADER(config.h) dnl at the distribution this done
dnl Checks for programs.
AC_CHECK_COMPILERS
AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
KDE_PROG_LIBTOOL
dnl for NLS support. Call them in this order!
dnl WITH_NLS is for the po files
AM_KDE_WITH_NLS
KDE_USE_QT(3.3)
AC_PATH_KDE
dnl =======================================================
dnl FILE: configure.in.in
dnl =======================================================
#MIN_CONFIG(3.3)
dnl PACKAGE set before
dnl #### Check for FSEEK variants
AC_SYS_LARGEFILE
AC_FUNC_FSEEKO
AC_CHECK_FUNCS(fopen64, ktorrent_cv_func_fopen64=yes, ktorrent_cv_func_fopen64=no)
AC_CHECK_FUNCS(fseeko64, ktorrent_cv_func_fseek64=yes, ktorrent_cv_func_fseek64=no)
AC_CHECK_FUNCS(ftello64, ktorrent_cv_func_ftell64=yes, ktorrent_cv_func_ftell64=no)
AC_CHECK_FUNCS(fstat64, ktorrent_cv_func_fstat64=yes, ktorrent_cv_func_fstat64=no)
AC_CHECK_FUNCS(stat64, ktorrent_cv_func_stat64=yes, ktorrent_cv_func_stat64=no)
AC_CHECK_FUNCS(ftruncate64, ktorrent_cv_func_ftruncate64=yes, ktorrent_cv_func_ftruncate64=no)
AC_CHECK_FUNCS(lseek64, ktorrent_cv_func_lseek64=yes, ktorrent_cv_func_lseek64=no)
AC_CHECK_FUNCS(mmap64, ktorrent_cv_func_mmap64=yes, ktorrent_cv_func_mmap64=no)
AC_CHECK_FUNCS(munmap64, ktorrent_cv_func_munmap64=yes, ktorrent_cv_func_munmap64=no)
AC_CHECK_FUNCS(posix_fallocate, ktorrent_cv_func_posix_fallocate=yes,ktorrent_cv_func_posix_fallocate=no)
AC_CHECK_FUNCS(posix_fallocate64, ktorrent_cv_func_posix_fallocate64=yes,ktorrent_cv_func_posix_fallocate64=no)
AC_CHECK_FUNCS(statvfs, ktorrent_cv_func_statvfs=yes,ktorrent_cv_func_statvfs=no)
AC_CHECK_FUNCS(statvfs64, ktorrent_cv_func_statvfs64=yes,ktorrent_cv_func_statvfs64=no)
AC_LANG_PUSH([C++])
AC_CHECK_HEADERS([xfs/xfs.h])
AC_CHECK_TYPES([__u64, __s64], [], [], [#include <xfs/xfs.h>])
AC_LANG_POP
if test "$ktorrent_cv_func_posix_fallocate" = yes ; then
AC_DEFINE(HAVE_POSIX_FALLOCATE, 1)
else
AC_DEFINE(HAVE_POSIX_FALLOCATE, 0)
fi
if test "$ktorrent_cv_func_posix_fallocate64" = yes ; then
AC_DEFINE(HAVE_POSIX_FALLOCATE64, 1)
else
AC_DEFINE(HAVE_POSIX_FALLOCATE64, 0)
fi
if test "$ktorrent_cv_func_fopen64" = yes ; then
AC_DEFINE(HAVE_FOPEN64, 1)
else
AC_DEFINE(HAVE_FOPEN64, 0)
fi
if test "$ktorrent_cv_func_fseek64" = yes -a "$ktorrent_cv_func_ftell64" = yes; then
AC_DEFINE(HAVE_FSEEKO64, 1)
else
AC_DEFINE(HAVE_FSEEKO64, 0)
fi
if test "$ktorrent_cv_func_fstat64" = yes -a "$ktorrent_cv_func_stat64" = yes ; then
AC_DEFINE(HAVE_STAT64,1)
else
AC_DEFINE(HAVE_STAT64,0)
fi
if test "$ktorrent_cv_func_ftruncate64" = yes ; then
AC_DEFINE(HAVE_FTRUNCATE64,1)
else
AC_DEFINE(HAVE_FTRUNCATE64,0)
fi
if test "$ktorrent_cv_func_lseek64" = yes ; then
AC_DEFINE(HAVE_LSEEK64,1)
else
AC_DEFINE(HAVE_LSEEK64,0)
fi
if test "$ktorrent_cv_func_mmap64" = yes ; then
AC_DEFINE(HAVE_MMAP64, 1)
else
AC_DEFINE(HAVE_MMAP64, 0)
fi
if test "$ktorrent_cv_func_munmap64" = yes ; then
AC_DEFINE(HAVE_MUNMAP64, 1)
else
AC_DEFINE(HAVE_MUNMAP64, 0)
fi
if test "$ktorrent_cv_func_statvfs" = yes ; then
AC_DEFINE(HAVE_STATVFS, 1)
else
AC_DEFINE(HAVE_STATVFS, 0)
fi
if test "$ktorrent_cv_func_statvfs64" = yes ; then
AC_DEFINE(HAVE_STATVFS64, 1)
else
AC_DEFINE(HAVE_STATVFS64, 0)
fi
KDE_CHECK_LIB(gmp, __gmpz_init, [have_gmp=yes],
[
have_gmp=no
AC_MSG_ERROR(libgmp is required to install this program)
])
KDE_CHECK_HEADER(gmp.h, [have_gmp=yes],
[
have_gmp=no
AC_MSG_ERROR(libgmp is required to install this program)
])
KDE_CHECK_HEADER(GeoIP.h, [have_system_geoip=yes], [have_system_geoip=no])
KDE_INIT_DOXYGEN([The API Reference], [Version $VERSION])
AC_ARG_ENABLE(
memleak-check,
[AS_HELP_STRING(--enable-memleak-check,[Enable memory leak checking])],
[CXXFLAGS="$CXXFLAGS -DKT_LEAKTRACE"])
AC_ARG_ENABLE(
profile,
[AS_HELP_STRING(--enable-profile,[Enable profiling])],
[CXXFLAGS="$CXXFLAGS -DKT_PROFILE"])
AC_ARG_ENABLE(geoip,
[AS_HELP_STRING(--enable-geoip,[Enables builtin GeoIP database installation])],
[case "${enableval}" in
yes) geoip=true ;;
no) geoip=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-geoip) ;;
esac],[geoip=true])
AC_ARG_ENABLE(system-geoip,
[AS_HELP_STRING(--enable-system-geoip,[Enables use of system-wide GeoIP database (implies --disable-geoip) (no by default)])],
[case "${enableval}" in
yes) if test "$have_system_geoip" = yes; then
system_geoip=true
geoip=false
else
AC_MSG_ERROR(cannot enable system geoip. GeoIP library headers were not found on your system)
fi ;;
no) system_geoip=true ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-system-geoip) ;;
esac],[system_geoip=false])
AM_CONDITIONAL(ENABLE_GEOIP, test x$geoip = xtrue)
AM_CONDITIONAL(USE_SYSTEM_GEOIP, test x$system_geoip = xtrue)
if test x$system_geoip = xtrue; then
AC_DEFINE(USE_SYSTEM_GEOIP, 1, [Use system geoip])
fi
AC_ARG_ENABLE(builtin-country-flags,
[AS_HELP_STRING(--enable-builtin-country-flags,[Install and prefer builtin country flags to the ones provided by KDE (yes by default)])],
[case "${enableval}" in
yes) builtin_country_flags=true ;;
no) builtin_country_flags=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-builtin-country-flags) ;;
esac],[builtin_country_flags=true])
AM_CONDITIONAL(ENABLE_BUILTIN_COUNTRY_FLAGS, test x$builtin_country_flags = xtrue)
AC_ARG_ENABLE(torrent-mimetype,
[ --enable-torrent-mimetype Enables the installation of the torrent mimetype which uses a KTorrent based icon],
[case "${enableval}" in
yes) mimetype_install=true ;;
no) mimetype_install=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-torrent-mimetype) ;;
esac],[mimetype_install=false])
AM_CONDITIONAL(ENABLE_TORRENT_MIMETYPE, test x$mimetype_install = xtrue)
## -- BEGIN -- ADDED BY Kevin ---
# Check for pkg-config manually first, as if its not installed the
# PKG_PROG_PKG_CONFIG macro won't be defined.
AC_CHECK_PROG(have_pkg_config, pkg-config, yes, no)
if test x"$have_pkg_config" = "xno"; then
AC_MSG_ERROR(pkg-config is required to install this program)
fi
m4_pattern_allow(PKG_CONFIG_MIN_VERSION)
PKG_PROG_PKG_CONFIG
PKG_CHECK_MODULES( AVAHI, avahi-client >= 0.6.10,
[
AC_SUBST(AVAHI_CFLAGS)
AC_SUBST(AVAHI_LIBS)
avahi=true
],
[
missing_avahi_warning=yes
avahi=false
])
PKG_CHECK_MODULES( AVAHI_TQT, avahi-tqt >= 0.6.10,
[
AC_SUBST(AVAHI_TQT_CFLAGS)
AC_SUBST(AVAHI_TQT_LIBS)
avahi=true
],
[
missing_avahi_warning=yes
avahi=false
])
AM_CONDITIONAL(COMPILE_ZEROCONF, test x$avahi = xtrue)
KDE_CREATE_SUBDIRSLIST
AC_CONFIG_FILES([ Makefile ])
AC_CONFIG_FILES([ apps/Makefile ])
AC_CONFIG_FILES([ apps/ktcachecheck/Makefile ])
AC_CONFIG_FILES([ apps/ktorrent/Makefile ])
AC_CONFIG_FILES([ apps/ktorrent/groups/Makefile ])
AC_CONFIG_FILES([ apps/ktorrent/newui/Makefile ])
AC_CONFIG_FILES([ apps/kttorinfo/Makefile ])
AC_CONFIG_FILES([ apps/ktupnptest/Makefile ])
AC_CONFIG_FILES([ libktorrent/Makefile ])
AC_CONFIG_FILES([ libktorrent/datachecker/Makefile ])
AC_CONFIG_FILES([ libktorrent/interfaces/Makefile ])
AC_CONFIG_FILES([ libktorrent/kademlia/Makefile ])
AC_CONFIG_FILES([ libktorrent/migrate/Makefile ])
AC_CONFIG_FILES([ libktorrent/mse/Makefile ])
AC_CONFIG_FILES([ libktorrent/net/Makefile ])
AC_CONFIG_FILES([ libktorrent/torrent/Makefile ])
AC_CONFIG_FILES([ libktorrent/util/Makefile ])
AC_CONFIG_FILES([ plugins/Makefile ])
AC_CONFIG_FILES([ plugins/infowidget/Makefile ])
AC_CONFIG_FILES([ plugins/infowidget/geoip/Makefile ])
AC_CONFIG_FILES([ plugins/ipfilter/Makefile ])
AC_CONFIG_FILES([ plugins/logviewer/Makefile ])
AC_CONFIG_FILES([ plugins/partfileimport/Makefile ])
AC_CONFIG_FILES([ plugins/rssfeed/Makefile ])
AC_CONFIG_FILES([ plugins/rssfeed/rss/Makefile ])
AC_CONFIG_FILES([ plugins/scanfolder/Makefile ])
AC_CONFIG_FILES([ plugins/scheduler/Makefile ])
AC_CONFIG_FILES([ plugins/search/Makefile ])
AC_CONFIG_FILES([ plugins/stats/Makefile ])
AC_CONFIG_FILES([ plugins/upnp/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/16x16/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/22x22/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/32x32/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/48x48/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/coldmilk/icons/64x64/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/default/Makefile ])
AC_CONFIG_FILES([ plugins/webinterface/www/mobile/Makefile ])
AC_CONFIG_FILES([ plugins/zeroconf/Makefile ])
AC_CONFIG_FILES([ scripts/Makefile ])
AC_CONFIG_FILES([ translations/Makefile ])
AC_CONFIG_FILES([ translations/ar/Makefile ])
AC_CONFIG_FILES([ translations/ar/messages/Makefile ])
AC_CONFIG_FILES([ translations/bg/Makefile ])
AC_CONFIG_FILES([ translations/bg/messages/Makefile ])
AC_CONFIG_FILES([ translations/br/Makefile ])
AC_CONFIG_FILES([ translations/br/messages/Makefile ])
AC_CONFIG_FILES([ translations/ca/Makefile ])
AC_CONFIG_FILES([ translations/ca/messages/Makefile ])
AC_CONFIG_FILES([ translations/cs/Makefile ])
AC_CONFIG_FILES([ translations/cs/messages/Makefile ])
AC_CONFIG_FILES([ translations/cy/Makefile ])
AC_CONFIG_FILES([ translations/cy/messages/Makefile ])
AC_CONFIG_FILES([ translations/da/Makefile ])
AC_CONFIG_FILES([ translations/da/messages/Makefile ])
AC_CONFIG_FILES([ translations/de/Makefile ])
AC_CONFIG_FILES([ translations/de/messages/Makefile ])
AC_CONFIG_FILES([ translations/el/Makefile ])
AC_CONFIG_FILES([ translations/el/messages/Makefile ])
AC_CONFIG_FILES([ translations/en_GB/Makefile ])
AC_CONFIG_FILES([ translations/en_GB/messages/Makefile ])
AC_CONFIG_FILES([ translations/es/Makefile ])
AC_CONFIG_FILES([ translations/es/messages/Makefile ])
AC_CONFIG_FILES([ translations/et/Makefile ])
AC_CONFIG_FILES([ translations/et/messages/Makefile ])
AC_CONFIG_FILES([ translations/fa/Makefile ])
AC_CONFIG_FILES([ translations/fa/messages/Makefile ])
AC_CONFIG_FILES([ translations/fr/Makefile ])
AC_CONFIG_FILES([ translations/fr/messages/Makefile ])
AC_CONFIG_FILES([ translations/gl/Makefile ])
AC_CONFIG_FILES([ translations/gl/messages/Makefile ])
AC_CONFIG_FILES([ translations/hu/Makefile ])
AC_CONFIG_FILES([ translations/hu/messages/Makefile ])
AC_CONFIG_FILES([ translations/it/Makefile ])
AC_CONFIG_FILES([ translations/it/messages/Makefile ])
AC_CONFIG_FILES([ translations/ja/Makefile ])
AC_CONFIG_FILES([ translations/ja/messages/Makefile ])
AC_CONFIG_FILES([ translations/ka/Makefile ])
AC_CONFIG_FILES([ translations/ka/messages/Makefile ])
AC_CONFIG_FILES([ translations/lt/Makefile ])
AC_CONFIG_FILES([ translations/lt/messages/Makefile ])
AC_CONFIG_FILES([ translations/ms/Makefile ])
AC_CONFIG_FILES([ translations/ms/messages/Makefile ])
AC_CONFIG_FILES([ translations/nb/Makefile ])
AC_CONFIG_FILES([ translations/nb/messages/Makefile ])
AC_CONFIG_FILES([ translations/nds/Makefile ])
AC_CONFIG_FILES([ translations/nds/messages/Makefile ])
AC_CONFIG_FILES([ translations/nl/Makefile ])
AC_CONFIG_FILES([ translations/nl/messages/Makefile ])
AC_CONFIG_FILES([ translations/pa/Makefile ])
AC_CONFIG_FILES([ translations/pa/messages/Makefile ])
AC_CONFIG_FILES([ translations/pl/Makefile ])
AC_CONFIG_FILES([ translations/pl/messages/Makefile ])
AC_CONFIG_FILES([ translations/pt/Makefile ])
AC_CONFIG_FILES([ translations/pt/messages/Makefile ])
AC_CONFIG_FILES([ translations/pt_BR/Makefile ])
AC_CONFIG_FILES([ translations/pt_BR/messages/Makefile ])
AC_CONFIG_FILES([ translations/ru/Makefile ])
AC_CONFIG_FILES([ translations/ru/messages/Makefile ])
AC_CONFIG_FILES([ translations/rw/Makefile ])
AC_CONFIG_FILES([ translations/rw/messages/Makefile ])
AC_CONFIG_FILES([ translations/sk/Makefile ])
AC_CONFIG_FILES([ translations/sk/messages/Makefile ])
AC_CONFIG_FILES([ translations/sr/Makefile ])
AC_CONFIG_FILES([ translations/sr/messages/Makefile ])
AC_CONFIG_FILES([ translations/sr@Latn/Makefile ])
AC_CONFIG_FILES([ translations/sr@Latn/messages/Makefile ])
AC_CONFIG_FILES([ translations/sv/Makefile ])
AC_CONFIG_FILES([ translations/sv/messages/Makefile ])
AC_CONFIG_FILES([ translations/tr/Makefile ])
AC_CONFIG_FILES([ translations/tr/messages/Makefile ])
AC_CONFIG_FILES([ translations/uk/Makefile ])
AC_CONFIG_FILES([ translations/uk/messages/Makefile ])
AC_CONFIG_FILES([ translations/zh_CN/Makefile ])
AC_CONFIG_FILES([ translations/zh_CN/messages/Makefile ])
AC_CONFIG_FILES([ translations/zh_TW/Makefile ])
AC_CONFIG_FILES([ translations/zh_TW/messages/Makefile ])
AC_OUTPUT
if test x$have_gmp = xno; then
echo ""
echo "----------------------------------------------------------"
echo "KTorrent ERROR:"
echo "KTorrent requires gmp (http://www.swox.com/gmp)"
echo "----------------------------------------------------------"
echo ""
fi
if test x$missing_avahi_warning = xyes; then
echo ""
echo "----------------------------------------------------------"
echo "KTorrent WARNING:"
echo "Cannot find avahi-client with version 0.6.10 or later or"
echo "cannot find avahi-tqt."
echo "The zeroconf plugin will not be installed because of this."
echo "----------------------------------------------------------"
echo ""
fi
# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure
if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then
# And if so, warn when they don't match
if test "$kde_libs_prefix" != "$given_prefix"; then
# And if kde doesn't know about the prefix yet
echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null
if test $? -ne 0; then
echo ""
echo "Warning: you chose to install this package in $given_prefix,"
echo "but KDE was found in $kde_libs_prefix."
echo "For this to work, you will need to tell KDE about the new prefix, by ensuring"
echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix"
echo "Then restart KDE."
echo ""
fi
fi
fi
if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then
echo ""
echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility"
echo "was not included. Therefore, GCC symbol visibility support remains disabled."
echo ""
echo "For better performance, consider including the Qt visibility supporting patch"
echo "located at:"
echo ""
echo "http://bugs.kde.org/show_bug.cgi?id=109386"
echo ""
echo "and recompile all of Qt and KDE. Note, this is entirely optional and"
echo "everything will continue to work just fine without it."
echo ""
fi
if test "$all_tests" = "bad"; then
if test ! "$cache_file" = "/dev/null"; then
echo ""
echo "Please remove the file $cache_file after changing your setup"
echo "so that configure will find the changes next time."
echo ""
fi
else
echo ""
echo "Good - your configure finished. Start make now"
echo ""
fi