17
17
dnl You should have received a copy of the GNU Library General Public License
18
18
dnl along with this library; see the file COPYING.LIB. If not, write to
19
dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20
dnl Boston, MA 02111-1307, USA.
19
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
dnl Boston, MA 02110-1301, USA.
22
22
dnl IMPORTANT NOTE:
23
23
dnl Please do not modify this file unless you expect your modifications to be
176
dnl KDE_FIND_PATH(programm-name, variable-name, list of directories,
177
dnl if-not-found, test-parameter)
176
dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs,
177
dnl if-not-found, test-parameter, prepend-path)
179
dnl Look for program-name in list-of-dirs+$PATH.
180
dnl If prepend-path is set, look in $PATH+list-of-dirs instead.
181
dnl If found, $variable-name is set. If not, if-not-found is evaluated.
182
dnl test-parameter: if set, the program is executed with this arg,
183
dnl and only a successful exit code is required.
178
184
AC_DEFUN([KDE_FIND_PATH],
180
186
AC_MSG_CHECKING([for $1])
547
AC_DEFUN([KDE_SET_DEFAULT_BINDIRS],
549
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"
550
test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs"
551
if test -n "$KDEDIRS"; then
554
for dir in $KDEDIRS; do
555
kde_default_bindirs="$dir/bin $kde_default_bindirs "
536
561
AC_DEFUN([KDE_SUBST_PROGRAMS],
538
563
AC_ARG_WITH(arts,
539
AC_HELP_STRING([--without-arts],[build without aRts [default=yes]]),
564
AC_HELP_STRING([--without-arts],[build without aRts [default=no]]),
540
565
[build_arts=$withval],
543
AM_CONDITIONAL(include_ARTS, test "$build_arts" != "no")
568
AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no")
569
if test "$build_arts" = "no"; then
570
AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts])
545
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"
546
test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs"
547
if test -n "$KDEDIRS"; then
550
for dir in $KDEDIRS; do
551
kde_default_bindirs="$dir/bin $kde_default_bindirs "
555
kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_default_bindirs"
573
KDE_SET_DEFAULT_BINDIRS
574
kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs"
556
575
KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)])
557
576
KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)])
558
if test "$build_arts" != "no"; then
577
if test "$build_arts" '!=' "no"; then
559
578
KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)])
560
579
KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)])
562
KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs])
563
581
KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs])
566
585
if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then
569
if test "$kde_qtver" = "3" && test "$kde_qtsubver" -le 1; then
589
if test "$kde_qtver" = "3"; then
590
if test "$kde_qtsubver" -le 1; then
593
if test "$kde_qtsubver" -le 2; then
596
if test "$KDECONFIG" != "compiled"; then
597
if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then
575
605
KDE_FIND_PATH(kconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kconfig_compiler)])
576
606
KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)])
578
KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin], [XMLLINT=""])
608
if test -n "$kde33ornewer"; then
609
KDE_FIND_PATH(makekdewidgets, MAKEKDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(makekdewidgets)])
610
AC_SUBST(MAKEKDEWIDGETS)
612
KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""])
580
if test -n "$MEINPROC" && test ! "$MEINPROC" = "compiled"; then
614
if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then
581
615
kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share"
582
616
test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs"
583
617
AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET)
601
635
AC_SUBST(DCOP_DEPENDENCIES)
602
636
AC_SUBST(MCOPIDL)
603
637
AC_SUBST(ARTSCCONFIG)
605
638
AC_SUBST(MEINPROC)
606
639
AC_SUBST(KDE_XSL_STYLESHEET)
607
640
AC_SUBST(XMLLINT)
609
if test -x "$KDECONFIG"; then # it can be "compiled"
610
kde_libs_prefix=`$KDECONFIG --prefix`
611
if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then
612
AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs.
613
This means it has been moved since you installed it.
614
This won't work. Please recompile kdelibs for the new prefix.
617
kde_libs_htmldir=`$KDECONFIG --install html --expandvars`
619
kde_libs_prefix='$(prefix)'
620
kde_libs_htmldir='$(kde_htmldir)'
622
AC_SUBST(kde_libs_prefix)
623
AC_SUBST(kde_libs_htmldir)
626
643
AC_DEFUN([AC_CREATE_KFSSTND],
755
772
# more headers that need to be explicitly included on darwin
756
773
AC_CHECK_HEADERS(sys/types.h stdint.h)
775
# sys/bitypes.h is needed for uint32_t and friends on Tru64
776
AC_CHECK_HEADERS(sys/bitypes.h)
758
778
# darwin requires a poll emulation library
759
779
AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll")
781
# for some image handling on Mac OS X
782
AC_CHECK_HEADERS(Carbon/Carbon.h)
761
784
# CoreAudio framework
762
785
AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [
763
786
AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API])
764
FRAMEWORK_COREAUDIO="-Xlinker -framework -Xlinker CoreAudio"
787
FRAMEWORK_COREAUDIO="-Wl,-framework,CoreAudio"
767
790
AC_CHECK_RES_INIT
1152
1179
if test "$kde_qtver" = "3"; then
1153
1180
if test $kde_qtsubver -gt 0; then
1154
1181
if test $kde_qtsubver -gt 1; then
1155
kde_qt_minversion=">= Qt 3.2"
1182
if test $kde_qtsubver -gt 2; then
1183
kde_qt_minversion=">= Qt 3.3 and < 4.0"
1185
kde_qt_minversion=">= Qt 3.2 and < 4.0"
1157
kde_qt_minversion=">= Qt 3.1 (20021021)"
1188
kde_qt_minversion=">= Qt 3.1 (20021021) and < 4.0"
1160
kde_qt_minversion=">= Qt 3.0"
1191
kde_qt_minversion=">= Qt 3.0 and < 4.0"
1163
1194
if test "$kde_qtver" = "1"; then
1170
1201
if test -z "$3"; then
1171
1202
if test $kde_qtver = 3; then
1172
1203
if test $kde_qtsubver -gt 0; then
1173
kde_qt_verstring="QT_VERSION >= 0x03@VER@00"
1204
kde_qt_verstring="QT_VERSION >= 0x03@VER@00 && QT_VERSION < 0x040000"
1174
1205
qtsubver=`echo "00$kde_qtsubver" | sed -e 's,.*\(..\)$,\1,'`
1175
1206
kde_qt_verstring=`echo $kde_qt_verstring | sed -e "s,@VER@,$qtsubver,"`
1177
kde_qt_verstring="QT_VERSION >= 300"
1208
kde_qt_verstring="QT_VERSION >= 300 && QT_VERSION < 0x040000"
1180
1211
if test $kde_qtver = 2; then
1672
1704
AC_SUBST(KDE_NO_UNDEFINED)
1707
dnl Check if the linker supports --enable-new-dtags and --as-needed
1708
AC_DEFUN([KDE_CHECK_NEW_LDFLAGS],
1710
AC_ARG_ENABLE(new_ldflags,
1711
AC_HELP_STRING([--enable-new-ldflags],
1712
[enable the new linker flags]),
1713
kde_use_new_ldflags=$enableval,
1714
kde_use_new_ldflags=no)
1716
LDFLAGS_AS_NEEDED=""
1717
LDFLAGS_NEW_DTAGS=""
1718
if test "x$kde_use_new_ldflags" = "xyes"; then
1719
LDFLAGS_NEW_DTAGS=""
1720
KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags],
1721
[LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],)
1723
KDE_CHECK_COMPILER_FLAG([Wl,--as-needed],
1724
[LDFLAGS_AS_NEEDED="-Wl,--as-needed"],)
1726
AC_SUBST(LDFLAGS_AS_NEEDED)
1727
AC_SUBST(LDFLAGS_NEW_DTAGS)
1675
1730
AC_DEFUN([KDE_CHECK_NMCHECK],
1677
1732
AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]),
2008
2063
AC_REQUIRE([K_PATH_X])
2010
2065
if test $kde_qtver = 3; then
2067
*cygwin*) lib_kded="-lkdeinit_kded" ;;
2070
AC_SUBST(LIB_KDED, $lib_kded)
2011
2071
AC_SUBST(LIB_KDECORE, "-lkdecore")
2012
2072
AC_SUBST(LIB_KDEUI, "-lkdeui")
2013
2073
AC_SUBST(LIB_KIO, "-lkio")
2074
AC_SUBST(LIB_KJS, "-lkjs")
2014
2075
AC_SUBST(LIB_SMB, "-lsmb")
2015
2076
AC_SUBST(LIB_KAB, "-lkab")
2016
2077
AC_SUBST(LIB_KABC, "-lkabc")
2020
2081
AC_SUBST(LIB_KDEPRINT, "-lkdeprint")
2021
2082
AC_SUBST(LIB_KUTILS, "-lkutils")
2022
2083
AC_SUBST(LIB_KDEPIM, "-lkdepim")
2084
AC_SUBST(LIB_KIMPROXY, "-lkimproxy")
2085
AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff")
2086
AC_SUBST(LIB_KDNSSD, "-lkdnssd")
2087
AC_SUBST(LIB_KUNITTEST, "-lkunittest")
2023
2088
# these are for backward compatibility
2024
2089
AC_SUBST(LIB_KSYCOCA, "-lkio")
2025
2090
AC_SUBST(LIB_KFILE, "-lkio")
2430
AC_DEFUN([AC_CHECK_RES_QUERY],
2432
KDE_CHECK_FUNC_EXT(res_query, [
2433
#include <sys/types.h>
2434
#include <netinet/in.h>
2435
#include <arpa/nameser.h>
2440
res_query(NULL, 0, 0, NULL, 0);
2442
[int res_query(const char *, int, int, unsigned char *, int)],
2446
AC_DEFUN([AC_CHECK_DN_SKIPNAME],
2448
KDE_CHECK_FUNC_EXT(dn_skipname, [
2449
#include <sys/types.h>
2450
#include <netinet/in.h>
2451
#include <arpa/nameser.h>
2455
dn_skipname (NULL, NULL);
2457
[int dn_skipname (unsigned char *, unsigned char *)],
2359
2462
AC_DEFUN([AC_FIND_GIF],
2360
2463
[AC_MSG_CHECKING([for giflib])
2361
2464
AC_CACHE_VAL(ac_cv_lib_gif,
2400
2503
ac_save_CFLAGS="$CFLAGS"
2401
2504
CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
2403
[/* Override any gcc2 internal prototype to avoid an error. */
2404
struct jpeg_decompress_struct;
2405
typedef struct jpeg_decompress_struct * j_decompress_ptr;
2407
2507
#ifdef __cplusplus
2410
void jpeg_CreateDecompress(j_decompress_ptr cinfo,
2411
int version, size_t structsize);
2510
void jpeg_CreateDecompress();
2412
2511
#ifdef __cplusplus
2415
/* We use char because int might match the return type of a gcc2
2416
builtin and then its argument prototype would still apply. */
2418
[jpeg_CreateDecompress(0L, 0, 0);],
2515
[jpeg_CreateDecompress();],
2419
2516
eval "ac_cv_lib_jpeg_$1=-ljpeg$2",
2420
2517
eval "ac_cv_lib_jpeg_$1=no")
2421
2518
LIBS="$ac_save_LIBS"
2622
2719
AC_SUBST(LIBTIFF)
2722
AC_DEFUN([KDE_FIND_LIBEXR],
2724
AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
2725
AC_REQUIRE([AC_FIND_ZLIB])
2726
AC_CACHE_VAL(ac_cv_libexr,
2728
if test -z "$PKG_CONFIG"; then
2729
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
2732
AC_MSG_CHECKING([for OpenEXR libraries])
2734
if test "$PKG_CONFIG" = "no" ; then
2736
echo "*** The pkg-config script could not be found. Make sure it is"
2737
echo "*** in your path, or set the PKG_CONFIG environment variable"
2738
echo "*** to the full path to pkg-config."
2739
echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
2741
if !(`$PKG_CONFIG --exists OpenEXR`) ; then
2745
if !(`$PKG_CONFIG --atleast-version="1.1.1" OpenEXR`) ; then
2749
kde_save_LIBS="$LIBS"
2750
LIBS="$LIBS $all_libraries $USER_LDFLAGS `pkg-config --libs OpenEXR` $LIBZ"
2753
kde_save_CXXFLAGS="$CXXFLAGS"
2754
EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR`
2755
CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS"
2759
#include <ImfRgbaFile.h>
2762
using namespace Imf;
2763
RgbaInputFile file ("dummy");
2766
eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'",
2767
eval "ac_cv_libexr=no"
2769
LIBS="$kde_save_LIBS"
2770
CXXFLAGS="$kde_save_CXXFLAGS"
2773
if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then
2774
AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR])
2775
LIB_EXR="$ac_cv_libexr"
2776
AC_MSG_RESULT($ac_cv_libexr)
2626
2790
AC_DEFUN([AC_FIND_PNG],
2928
AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG],
2930
AC_MSG_CHECKING([whether $CC supports -$1])
2931
kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'`
2932
AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache,
2936
save_CFLAGS="$CFLAGS"
2937
CFLAGS="$CFLAGS -$1"
2938
AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], [])
2939
CFLAGS="$save_CFLAGS"
2942
if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then
2764
2954
dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables
2765
2955
dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever])
2766
2956
dnl it's all white-space separated
2978
AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER],
2980
AC_MSG_CHECKING([whether $CC is blacklisted])
2982
dnl In theory we have tu run this test against $CC and $CXX
2983
dnl in C and in C++ mode, because its perfectly legal for
2984
dnl the user to mix compiler versions, since C has a defined
2987
dnl For now, we assume the user is not on crack.
2991
#if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0
2996
kde_bad_compiler=no,
2997
kde_bad_compiler=yes
3000
AC_MSG_RESULT($kde_bad_compiler)
3002
if test "$kde_bad_compiler" = "yes"; then
3005
This particular compiler version is blacklisted because it
3006
is known to miscompile KDE. Please use a newer version, or
3007
if that is not yet available, choose an older version.
3009
Please do not report a bug or bother us reporting this
3010
configure error. We know about it, and we introduced
3011
it by intention to avoid untraceable bugs or crashes in KDE.
3019
AC_DEFUN([KDE_CHECK_FOR_OPT_NOINLINE_MATCH],
3021
AC_CACHE_CHECK([whether system headers can cope with -O2 -fno-inline],
3022
kde_cv_opt_noinline_match,
3024
kde_cv_opt_noinline_match=irrelevant
3025
dnl if we don't use both -O2 and -fno-inline, this check is moot
3026
if echo "$CFLAGS" | grep -e -O2 >/dev/null 2>/dev/null \
3027
&& echo "$CFLAGS" | grep -e -fno-inline >/dev/null 2>/dev/null ; then
3029
ac_cflags_save="$CFLAGS"
3030
CFLAGS="$CFLAGS -D_USE_GNU"
3034
], [ const char *pt, *et;
3035
et = __extension__ ({ char __a0, __a1, __a2; (__builtin_constant_p ( ";," ) && ((size_t)(const void *)(( ";," )+ 1) - (size_t)(const void *)( ";," ) == 1) ? ((__a0 =((__const char *) ( ";," ))[0], __a0 == '\0') ? ((void) ( pt ),((void *)0) ) : ((__a1 = ((__const char *) ( ";," ))[1], __a1== '\0') ? (__extension__ (__builtin_constant_p ( __a0 ) && ( __a0 ) == '\0' ? (char *) __rawmemchr ( pt , __a0) : strchr( pt , __a0 ))) : ((__a2 = ((__const char *) ( ";," ))[2], __a2 == '\0') ? __strpbrk_c2 ( pt , __a0, __a1) :(((__const char *) ( ";," ))[3] == '\0' ? __strpbrk_c3 ( pt ,__a0, __a1, __a2): strpbrk ( pt , ";," ))))) : strpbrk ( pt , ";," )); }) ;
3037
kde_cv_opt_noinline_match=yes,
3038
kde_cv_opt_noinline_match=no
3041
CFLAGS="$ac_cflags_save"
2787
3047
dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given
2788
3048
AC_DEFUN([AC_VALIDIFY_CXXFLAGS],
2933
3195
if test "$kde_use_warnings" = "yes"; then
2934
3196
if test "$GCC" = "yes"; then
3197
CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS"
2937
CFLAGS="-ansi -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS"
3200
CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS"
2938
3201
CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts $CXXFLAGS"
2939
KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"; CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"])
3202
KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"])
3203
KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"])
2942
CXXFLAGS="-Wall -W -Wpointer-arith -Wwrite-strings $CXXFLAGS"
2943
3206
KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"])
2944
3207
KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"])
2945
KDE_CHECK_COMPILER_FLAG(Wnon-virtual-dtor,[CXXFLAGS="-Wnon-virtual-dtor $CXXFLAGS"])
3208
dnl ### FIXME: revert for KDE 4
3209
KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"])
2949
3213
if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then
2950
3214
CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS"
3218
AC_HELP_STRING([--enable-pch],
3219
[enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]),
3220
[ kde_use_pch=$enableval ],[ kde_use_pch=no ])
3222
HAVE_GCC_VISIBILITY=0
3223
AC_SUBST([HAVE_GCC_VISIBILITY])
2953
3225
if test "$GXX" = "yes"; then
3226
gcc_no_reorder_blocks=NO
3227
KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES])
3228
if test $kde_use_debug_code != "no" && \
3229
test $kde_use_debug_code != "full" && \
3230
test "YES" = "$gcc_no_reorder_blocks" ; then
3231
CXXFLAGS="$CXXFLAGS -fno-reorder-blocks"
3232
CFLAGS="$CFLAGS -fno-reorder-blocks"
2954
3234
KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"])
2955
3235
KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"])
2956
3236
KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"])
2957
3237
KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= )
3238
ENABLE_PERMISSIVE_FLAG="-fpermissive"
3240
if test "$kde_use_pch" = "yes"; then
3241
AC_MSG_CHECKING(whether gcc supports precompiling c header files)
3243
if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then
3244
kde_gcc_supports_pch=yes
3247
kde_gcc_supports_pch=no
3250
if test "$kde_gcc_supports_pch" = "yes"; then
3251
AC_MSG_CHECKING(whether gcc supports precompiling c++ header files)
3252
if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then
3253
kde_gcc_supports_pch=yes
3256
kde_gcc_supports_pch=no
3260
rm -f conftest.h conftest.h.gch
3263
KDE_CHECK_FOR_OPT_NOINLINE_MATCH
3264
if test "x$kde_cv_opt_noinline_match" = "xno" ; then
3265
CFLAGS="`echo "$CFLAGS" | sed "s/ -fno-inline//"`"
3268
AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes")
2959
3269
if test "$CXX" = "KCC"; then
2960
3270
dnl unfortunately we currently cannot disable exception support in KCC
2961
3271
dnl because doing so is binary incompatible and Qt by default links with exceptions :-(
2962
3272
dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"])
2963
3273
dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= )
2966
AC_HELP_STRING([--enable-pch],
2967
[enables precompiled header support (currently only KCC) [default=no]]),
2969
kde_use_pch=$enableval
2972
3275
if test "$kde_use_pch" = "yes"; then
2973
3276
dnl TODO: support --pch-dir!
2974
3277
KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"])
3024
3327
KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0])
3329
AC_ARG_ENABLE(coverage,
3330
AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [
3331
if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then
3332
ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
3333
ac_coverage_linker="-lgcc"
3334
elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then
3335
ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
3336
ac_coverage_linker=""
3338
AC_MSG_ERROR([coverage with your compiler is not supported])
3340
CFLAGS="$CFLAGS $ac_coverage_compiler"
3341
CXXFLAGS="$CXXFLAGS $ac_coverage_compiler"
3342
LDFLAGS="$LDFLAGS $ac_coverage_linker"
3026
3345
AC_SUBST(NOOPT_CXXFLAGS)
3027
3346
AC_SUBST(NOOPT_CFLAGS)
3347
AC_SUBST(ENABLE_PERMISSIVE_FLAG)
3349
KDE_CHECK_NEW_LDFLAGS
3029
3350
KDE_CHECK_FINAL
3030
3351
KDE_CHECK_CLOSURE
3031
3352
KDE_CHECK_NMCHECK
3033
3354
ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), [])
3357
AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG],
3359
AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug,
3364
safe_CXXFLAGS=$CXXFLAGS
3365
safe_LDFLAGS=$LDFLAGS
3366
CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0"
3367
LDFLAGS="$LDFLAGS -shared -fPIC"
3371
/* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */
3373
int some_function( void ) __attribute__ ((visibility("default")));
3374
int some_function( void )
3376
std::string s("blafasel");
3379
], [/* elvis is alive */],
3380
kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes)
3382
CXXFLAGS=$safe_CXXFLAGS
3383
LDFLAGS=$safe_LDFLAGS
3388
if test x$kde_cv_val_gcc_visibility_bug = xno; then
3389
CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden"
3394
AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY],
3396
AC_BEFORE([AC_PATH_QT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY])
3398
AC_MSG_CHECKING([grepping for visibility push/pop in headers])
3400
if test "x$GXX" = "xyes"; then
3404
[GCC visibility push],
3405
[ #include <exception>
3409
kde_stdc_visibility_patched=yes ],
3412
AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for
3413
visibility support. Disabling -fvisibility=hidden])
3415
kde_stdc_visibility_patched=no ])
3419
kde_have_gcc_visibility=no
3420
KDE_CHECK_COMPILER_FLAG(fvisibility=hidden,
3422
kde_have_gcc_visibility=yes
3423
dnl the whole toolchain is just a mess, gcc is just too buggy
3424
dnl to handle STL with visibility enabled. Lets reconsider
3425
dnl when gcc 4.2 is out or when things get fixed in the compiler.
3426
dnl Contact mueller@kde.org for details.
3427
AC_ARG_ENABLE(gcc-hidden-visibility,
3428
AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]),
3429
[kde_have_gcc_visibility=$enableval],
3430
[kde_have_gcc_visibility=no])
3432
AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched,
3437
safe_CXXFLAGS=$CXXFLAGS
3438
CXXFLAGS="$CXXFLAGS $all_includes"
3442
#include <qglobal.h>
3443
#if Q_EXPORT - 0 != 0
3444
/* if this compiles, then Q_EXPORT is undefined */
3445
/* if Q_EXPORT is nonempty, this will break compilation */
3447
], [/* elvis is alive */],
3448
kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes)
3450
CXXFLAGS=$safe_CXXFLAGS
3455
if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then
3456
CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
3457
KDE_CHECK_VISIBILITY_GCC_BUG
3458
HAVE_GCC_VISIBILITY=1
3459
AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported])
3036
3465
AC_DEFUN([KDE_ADD_DEPENDENCIES],
3038
3467
[A]M_DEPENDENCIES(CC)
3060
3489
KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)"
3061
3490
AC_SUBST(KDE_PLUGIN)
3492
# This hack ensures that libtool creates shared libs for kunittest plugins. By default check_LTLIBRARIES makes static libs.
3493
KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)"
3494
AC_SUBST(KDE_CHECK_PLUGIN)
3063
3496
# we patch configure quite some so we better keep that consistent for incremental runs
3064
3497
AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure')
3067
3500
AC_DEFUN([KDE_CHECK_LIB64],
3070
3502
AC_ARG_ENABLE(libsuffix,
3071
3503
AC_HELP_STRING([--enable-libsuffix],
3072
[/lib directory suffix (64,32,none[=default])]),
3073
kdelibsuff=$enableval)
3074
# TODO: add an auto case that compiles a little C app to check
3075
# where the glibc is
3076
if test "$kdelibsuff" = "no"; then
3504
[/lib directory suffix (64,32,none,auto[=default])]),
3505
kdelibsuff=$enableval, kdelibsuff="auto")
3507
if test "$kdelibsuff" = "auto"; then
3509
cat > conftest.c << EOF
3515
kdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out |sed -ne '/libc.so/{
3516
s,.*/lib\([[^\/]]*\)/.*,\1,
3522
if test "$kdelibsuff" = "no" || test "$kdelibsuff" = "none"; then
3079
3525
if test -z "$kdelibsuff"; then
3141
3592
dnl Check for the type of the third argument of getsockname
3142
AC_DEFUN([AC_CHECK_SOCKLEN_T], [
3143
AC_MSG_CHECKING(for socklen_t)
3144
AC_CACHE_VAL(ac_cv_socklen_t, [
3148
#include <sys/types.h>
3149
#include <sys/socket.h>
3152
getsockname(0,(struct sockaddr*)0, &a);
3154
ac_cv_socklen_t=socklen_t,
3593
AC_DEFUN([AC_CHECK_SOCKLEN_T],
3595
AC_MSG_CHECKING(for socklen_t)
3596
AC_CACHE_VAL(kde_cv_socklen_t,
3155
3600
AC_TRY_COMPILE([
3156
#include <sys/types.h>
3157
#include <sys/socket.h>
3160
getsockname(0,(struct sockaddr*)0, &a);
3162
ac_cv_socklen_t=int,
3163
ac_cv_socklen_t=size_t
3169
AC_MSG_RESULT($ac_cv_socklen_t)
3170
if test "$ac_cv_socklen_t" != "socklen_t"; then
3171
AC_DEFINE_UNQUOTED(socklen_t, $ac_cv_socklen_t,
3172
[Define the real type of socklen_t])
3174
AC_DEFINE_UNQUOTED(ksize_t, socklen_t, [Compatibility define])
3601
#include <sys/types.h>
3602
#include <sys/socket.h>
3606
getpeername(0,0,&len);
3609
kde_cv_socklen_t=yes
3610
kde_cv_socklen_t_equiv=socklen_t
3614
AC_MSG_RESULT($kde_cv_socklen_t)
3615
if test $kde_cv_socklen_t = no; then
3616
AC_MSG_CHECKING([for socklen_t equivalent for socket functions])
3617
AC_CACHE_VAL(kde_cv_socklen_t_equiv,
3619
kde_cv_socklen_t_equiv=int
3621
for t in int size_t unsigned long "unsigned long"; do
3623
#include <sys/types.h>
3624
#include <sys/socket.h>
3628
getpeername(0,0,&len);
3631
kde_cv_socklen_t_equiv="$t"
3637
AC_MSG_RESULT($kde_cv_socklen_t_equiv)
3639
AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv,
3640
[type to use in place of socklen_t if not defined])
3641
AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv,
3642
[type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)])
3178
3645
dnl This is a merge of some macros out of the gettext aclocal.m4
3529
3992
[Define if you have the DPMSCapable prototype in <X11/extensions/dpms.h>])
3530
3993
AC_CHECK_DECL(DPMSCapable,
3531
3994
AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),,
3532
[#include <X11/extensions/dpms.h>])
3995
[#include <X11/Xlib.h>
3996
#include <X11/extensions/dpms.h>])
3533
3997
AH_TEMPLATE(HAVE_DPMSINFO_PROTO,
3534
3998
[Define if you have the DPMSInfo prototype in <X11/extensions/dpms.h>])
3535
3999
AC_CHECK_DECL(DPMSInfo,
3536
4000
AC_DEFINE(HAVE_DPMSINFO_PROTO),,
3537
[#include <X11/extensions/dpms.h>])
4001
[#include <X11/Xlib.h>
4002
#include <X11/extensions/dpms.h>])
3538
4003
CFLAGS="$ac_save_cflags"
3539
4004
AC_SUBST(DPMSINC)
3540
4005
AC_SUBST(DPMSLIB)
3562
4027
AC_LANG_CPLUSPLUS
3563
ac_save_ldflags="$LDFLAGS"
3564
ac_save_cxxflags="$CXXFLAGS"
3565
LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU"
3566
test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
3567
LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
4028
ac_save_ldflags=$LDFLAGS
4029
ac_save_cxxflags=$CXXFLAGS
4031
LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries"
4032
LIBS="$LIBS -lGL -lGLU"
4033
test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11"
4034
LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET"
3568
4035
CXXFLAGS="$CFLAGS $X_INCLUDES"
3569
4036
test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
3570
4037
AC_TRY_LINK([#include <GL/gl.h>
3571
4038
#include <GL/glu.h>
3573
ac_cv_have_gl="mesa", ac_cv_have_gl="no")
3574
if test "x$ac_cv_have_gl" = "xno"; then
3575
LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGLU -lGL"
3576
test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
3577
LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
3578
CXXFLAGS="$ac_save_cflags $X_INCLUDES"
3579
test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
3580
AC_TRY_LINK([#include <GL/gl.h>
3583
ac_cv_have_gl="yes", ac_cv_have_gl="no")
4040
ac_cv_have_gl="yes", ac_cv_have_gl="no")
3585
4041
AC_LANG_RESTORE
3586
LDFLAGS="$ac_save_ldflags"
3587
CXXFLAGS="$ac_save_cxxflags"
4042
LDFLAGS=$ac_save_ldflags
4043
CXXFLAGS=$ac_save_cxxflags
3590
4047
if test "$ac_cv_have_gl" = "no"; then
3596
4053
AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)])
3597
4054
if test "$GL_LDFLAGS" = ""; then
3598
if test "$ac_cv_have_gl" = "mesa"; then
3599
GLLIB='-lMesaGLU -lMesaGL $(LIB_X11)'
3601
GLLIB='-lGLU -lGL $(LIB_X11)'
4055
GLLIB='-lGLU -lGL $(LIB_X11)'
3604
if test "$ac_cv_have_gl" = "mesa"; then
3605
GLLIB="$GL_LDFLAGS -lMesaGLU -lMesaGL "'$(LIB_X11)'
3607
GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)'
4057
GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)'
3610
4059
if test "$GL_INCLUDE" = ""; then
3905
4354
AC_DEFUN([KDE_CHECK_LIBPTHREAD],
4356
dnl This code is here specifically to handle the
4357
dnl various flavors of threading library on FreeBSD
4358
dnl 4-, 5-, and 6-, and the (weird) rules around it.
4359
dnl There may be an environment PTHREAD_LIBS that
4360
dnl specifies what to use; otherwise, search for it.
4361
dnl -pthread is special cased and unsets LIBPTHREAD
3909
4365
if test -n "$PTHREAD_LIBS"; then
3910
PTHREAD_LIBS_save="$PTHREAD_LIBS"
3911
PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'`
3912
KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [LIBPTHREAD="$PTHREAD_LIBS_save"] )
3913
PTHREAD_LIBS="$PTHREAD_LIBS_save"
4366
if test "x$PTHREAD_LIBS" = "x-pthread" ; then
4367
LIBPTHREAD="PTHREAD"
4369
PTHREAD_LIBS_save="$PTHREAD_LIBS"
4370
PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'`
4371
AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS])
4372
KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [
4373
LIBPTHREAD="$PTHREAD_LIBS_save"])
4374
PTHREAD_LIBS="$PTHREAD_LIBS_save"
4378
dnl Is this test really needed, in the face of the Tru64 test below?
3916
4379
if test -z "$LIBPTHREAD"; then
3917
AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"] )
4380
AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"])
4383
dnl This is a special Tru64 check, see BR 76171 issue #18.
4384
if test -z "$LIBPTHREAD" ; then
4385
AC_MSG_CHECKING([for pthread_create in -lpthread])
4387
LIBS="$LIBS -lpthread"
4388
AC_TRY_LINK([#include <pthread.h>],[(void)pthread_create(0,0,0,0);],[
4390
LIBPTHREAD="-lpthread"],[
4395
dnl Un-special-case for FreeBSD.
4396
if test "x$LIBPTHREAD" = "xPTHREAD" ; then
3920
4400
AC_SUBST(LIBPTHREAD)
4145
4625
AC_DEFUN([KDE_CHECK_PYTHON],
4147
KDE_CHECK_PYTHON_INTERN("2.3",
4148
[KDE_CHECK_PYTHON_INTERN("2.2",
4149
[KDE_CHECK_PYTHON_INTERN("2.1",
4150
[KDE_CHECK_PYTHON_INTERN("2.0",
4151
[KDE_CHECK_PYTHON_INTERN($1, $2) ])
4627
KDE_CHECK_PYTHON_INTERN("2.5",
4628
[KDE_CHECK_PYTHON_INTERN("2.4",
4629
[KDE_CHECK_PYTHON_INTERN("2.3",
4630
[KDE_CHECK_PYTHON_INTERN("2.2",
4631
[KDE_CHECK_PYTHON_INTERN("2.1",
4632
[KDE_CHECK_PYTHON_INTERN("2.0",
4633
[KDE_CHECK_PYTHON_INTERN($1, $2) ])
4157
4641
AC_DEFUN([KDE_CHECK_STL],
4475
4962
# And delete superfluous '/' to make compares easier
4476
4963
prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
4477
4964
exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
4966
kde_libs_prefix='$(prefix)'
4967
kde_libs_htmldir='$(kde_htmldir)'
4968
AC_SUBST(kde_libs_prefix)
4969
AC_SUBST(kde_libs_htmldir)
4975
AC_DEFUN([KDE_SET_PREFIX],
4978
dnl We can't give real code to that macro, only a value.
4979
dnl It only matters for --help, since we set the prefix in this function anyway.
4980
AC_PREFIX_DEFAULT(${KDEDIR:-the kde prefix})
4982
KDE_SET_DEFAULT_BINDIRS
4983
if test "x$prefix" = "xNONE"; then
4984
dnl no prefix given: look for kde-config in the PATH and deduce the prefix from it
4985
KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend)
4987
dnl prefix given: look for kde-config, preferrably in prefix, otherwise in PATH
4988
kde_save_PATH="$PATH"
4989
PATH="$exec_prefix/bin:$prefix/bin:$PATH"
4990
KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend)
4991
PATH="$kde_save_PATH"
4994
kde_libs_prefix=`$KDECONFIG --prefix`
4995
if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then
4996
AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs.
4997
This means it has been moved since you installed it.
4998
This won't work. Please recompile kdelibs for the new prefix.
5001
kde_libs_htmldir=`$KDECONFIG --install html --expandvars`
5003
AC_MSG_CHECKING([where to install])
5004
if test "x$prefix" = "xNONE"; then
5005
prefix=$kde_libs_prefix
5006
AC_MSG_RESULT([$prefix (as returned by kde-config)])
5008
dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different
5009
given_prefix=$prefix
5010
AC_MSG_RESULT([$prefix (as requested)])
5013
# And delete superfluous '/' to make compares easier
5014
prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
5015
exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
5016
given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
5019
AC_SUBST(kde_libs_prefix)
5020
AC_SUBST(kde_libs_htmldir)
4478
5022
KDE_FAST_CONFIGURE
5899
AC_DEFUN([KDE_CHECK_LARGEFILE],
5902
if test "$ac_cv_sys_file_offset_bits" != no; then
5903
CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
5906
if test "x$ac_cv_sys_large_files" != "xno"; then
5907
CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1"
5912
dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in)
5913
dnl which allows to search for libs that get installed into the KDE prefix.
5915
dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not)
5916
dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page
5917
dnl also defines KSTUFF_PKG_ERRORS on error
5918
AC_DEFUN([KDE_PKG_CHECK_MODULES], [
5920
PKG_CONFIG_PATH="$prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
5921
if test "$prefix" != "$kde_libs_prefix"; then
5922
PKG_CONFIG_PATH="$kde_libs_prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
5924
export PKG_CONFIG_PATH
5925
PKG_CHECK_MODULES([$1],[$2],[$3],[$4])
5929
dnl Check for PIE support in the compiler and linker
5930
AC_DEFUN([KDE_CHECK_PIE_SUPPORT],
5932
AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support,
5936
safe_CXXFLAGS=$CXXFLAGS
5937
safe_LDFLAGS=$LDFLAGS
5938
CXXFLAGS="$CXXFLAGS -fPIE"
5939
LDFLAGS="$LDFLAGS -pie"
5941
AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no])
5943
CXXFLAGS=$safe_CXXFLAGS
5944
LDFLAGS=$safe_LDFLAGS
5948
AC_MSG_CHECKING(if enabling -pie/fPIE support)
5951
AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]),
5952
[kde_has_pie_support=$enableval],
5953
[kde_has_pie_support=detect])
5955
if test "$kde_has_pie_support" = "detect"; then
5956
kde_has_pie_support=$kde_cv_val_pie_support
5959
AC_MSG_RESULT([$kde_has_pie_support])
5964
AC_SUBST([KDE_USE_FPIE])
5965
AC_SUBST([KDE_USE_PIE])
5967
if test "$kde_has_pie_support" = "yes"; then
5968
KDE_USE_FPIE="-fPIE"