Merge Trond
[m6w6/libmemcached] / m4 / pandora_with_perl.m4
1 dnl -*- mode: m4; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2 dnl vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
3 dnl
4 dnl pandora-build: A pedantic build system
5 dnl Copyright (C) 2009 Sun Microsystems, Inc.
6 dnl This file is free software; the Free Software Foundation
7 dnl gives unlimited permission to copy and/or distribute it,
8 dnl with or without modifications, as long as this notice is preserved.
9 dnl
10 dnl From Monty Taylor
11
12
13 AC_DEFUN([PANDORA_WITH_PERL], [
14
15 AC_ARG_WITH([perl],
16 [AS_HELP_STRING([--with-perl],
17 [Build Perl Bindings @<:@default=yes@:>@])],
18 [with_perl=$withval],
19 [with_perl=yes])
20
21 AC_ARG_WITH([perl-arch],
22 [AS_HELP_STRING([--with-perl-arch],
23 [Install Perl bindings into system location @<:@default=no@:>@])],
24 [with_perl_arch=$withval],
25 [with_perl_arch=no])
26
27 AS_IF([test "x$with_perl" != "xno"],[
28 AS_IF([test "x$with_perl" != "xyes"],
29 [ac_chk_perl=$with_perl],
30 [ac_chk_perl=perl])
31 AC_CHECK_PROGS(PERL,$ac_chk_perl)
32 ])
33 AS_IF([test "x$PERL" != "x"],[
34 AC_CACHE_CHECK([for Perl include path],[pandora_cv_perl_include],[
35 pandora_cv_perl_include=`$PERL -MConfig -e 'print $Config{archlib};'`
36 pandora_cv_perl_include="${pandora_cv_perl_include}/CORE"
37 ])
38 AC_CACHE_CHECK([for Perl CPPFLAGS],[pandora_cv_perl_cppflags],[
39 pandora_cv_perl_cppflags=`$PERL -MConfig -e 'print $Config{cppflags};'`
40 pandora_cv_perl_cppflags="${pandora_cv_perl_cppflags}"
41 ])
42 PERL_CPPFLAGS="-I${pandora_cv_perl_include} ${pandora_cv_perl_cppflags}"
43
44 AC_CACHE_CHECK([for Perl development headers],
45 [pandora_cv_perl_dev],[
46
47 save_CPPFLAGS="${CPPFLAGS}"
48 CPPFLAGS="${CPPFLAGS} ${PERL_CPPFLAGS}"
49 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
50 #include <math.h>
51 #include <stdlib.h>
52 #include "EXTERN.h"
53 #include "perl.h"
54 #include "XSUB.h"
55 ]])],
56 [pandora_cv_perl_dev=yes],
57 [pandora_cv_perl_dev=no])
58 CPPFLAGS="${save_CPPFLAGS}"
59 ])
60
61 AS_IF([test "${pandora_cv_perl_dev}" = "no"],
62 [with_perl=no])
63
64 AC_CACHE_CHECK([for Perl install location],
65 [pandora_cv_perl_archdir],[
66 AS_IF([test "${with_perl_arch}" = "no"],[
67 pandora_cv_perl_archdir=`$PERL -MConfig -e 'print $Config{sitearch}'`
68 ],[
69 pandora_cv_perl_archdir=`$PERL -MConfig -e 'print $Config{archlib}'`
70 ])
71 pandora_cv_perl_archdir="${pandora_cv_perl_archdir}"
72 ])
73
74 PERL_ARCHDIR="${pandora_cv_perl_archdir}"
75 ])
76 AC_SUBST([PERL_CPPFLAGS])
77 AC_SUBST([PERL_ARCHDIR])
78
79 AM_CONDITIONAL(BUILD_PERL, [test "$with_perl" != "no"])
80
81 ])