~sharpie/geos/3.3.2

« back to all changes in this revision

Viewing changes to .pc/swig/macros/ac_pkg_swig.m4

  • Committer: Bazaar Package Importer
  • Author(s): Francesco Paolo Lovergine
  • Date: 2011-07-18 12:23:11 UTC
  • Revision ID: james.westby@ubuntu.com-20110718122311-n0cvqxlq0qux69af
Tags: 3.2.2-3
* New patch: swig. Fixed for strong version detection in ac_pkg_swig.m4.
  Merged from 3.3 series. Thanks strk. (closes: #631819)
* Removed obsolete python build-deps, because now the suggested binding
  is via shapely. (closes: #616823)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
dnl @synopsis AC_PROG_SWIG([major.minor.micro])
 
2
dnl
 
3
dnl This macro searches for a SWIG installation on your system. If
 
4
dnl found you should call SWIG via $(SWIG). You can use the optional
 
5
dnl first argument to check if the version of the available SWIG is
 
6
dnl greater than or equal to the value of the argument. It should have
 
7
dnl the format: N[.N[.N]] (N is a number between 0 and 999. Only the
 
8
dnl first N is mandatory.)
 
9
dnl
 
10
dnl If the version argument is given (e.g. 1.3.17), AC_PROG_SWIG checks
 
11
dnl that the swig package is this version number or higher.
 
12
dnl
 
13
dnl In configure.in, use as:
 
14
dnl
 
15
dnl             AC_PROG_SWIG(1.3.17)
 
16
dnl             SWIG_ENABLE_CXX
 
17
dnl             SWIG_MULTI_MODULE_SUPPORT
 
18
dnl             SWIG_PYTHON
 
19
dnl
 
20
dnl @category InstalledPackages
 
21
dnl @author Sebastian Huber <sebastian-huber@web.de>
 
22
dnl @author Alan W. Irwin <irwin@beluga.phys.uvic.ca>
 
23
dnl @author Rafael Laboissiere <rafael@laboissiere.net>
 
24
dnl @author Andrew Collier <abcollier@yahoo.com>
 
25
dnl @version 2004-09-20
 
26
dnl @license GPLWithACException
 
27
 
 
28
AC_DEFUN([AC_PROG_SWIG],[
 
29
        AC_PATH_PROG([SWIG],[swig])
 
30
        if test -z "$SWIG" ; then
 
31
                AC_MSG_WARN([cannot find 'swig' program. You should look at http://www.swig.org])
 
32
                SWIG=''
 
33
        elif test -n "$1" ; then
 
34
                AC_MSG_CHECKING([for SWIG version])
 
35
                [swig_version=`$SWIG -version 2>&1 | grep 'SWIG Version' | sed 's/.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*/\1/g'`]
 
36
                AC_MSG_RESULT([$swig_version])
 
37
                if test -n "$swig_version" ; then
 
38
                        # Calculate the required version number components
 
39
                        [required=$1]
 
40
                        [required_major=`echo $required | sed 's/[^0-9].*//'`]
 
41
                        if test -z "$required_major" ; then
 
42
                                [required_major=0]
 
43
                        fi
 
44
                        [required=`echo $required | sed 's/[0-9]*[^0-9]//'`]
 
45
                        [required_minor=`echo $required | sed 's/[^0-9].*//'`]
 
46
                        if test -z "$required_minor" ; then
 
47
                                [required_minor=0]
 
48
                        fi
 
49
                        [required=`echo $required | sed 's/[0-9]*[^0-9]//'`]
 
50
                        [required_patch=`echo $required | sed 's/[^0-9].*//'`]
 
51
                        if test -z "$required_patch" ; then
 
52
                                [required_patch=0]
 
53
                        fi
 
54
                        # Calculate the available version number components
 
55
                        [available=$swig_version]
 
56
                        [available_major=`echo $available | sed 's/[^0-9].*//'`]
 
57
                        if test -z "$available_major" ; then
 
58
                                [available_major=0]
 
59
                        fi
 
60
                        [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
 
61
                        [available_minor=`echo $available | sed 's/[^0-9].*//'`]
 
62
                        if test -z "$available_minor" ; then
 
63
                                [available_minor=0]
 
64
                        fi
 
65
                        [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
 
66
                        [available_patch=`echo $available | sed 's/[^0-9].*//'`]
 
67
                        if test -z "$available_patch" ; then
 
68
                                [available_patch=0]
 
69
                        fi
 
70
                        if test $available_major -ne $required_major \
 
71
                                -o $available_minor -ne $required_minor \
 
72
                                -o $available_patch -lt $required_patch ; then
 
73
                                AC_MSG_WARN([SWIG version >= $1 is required.  You have $swig_version.  You should look at http://www.swig.org])
 
74
                                SWIG=''
 
75
                        else
 
76
                                AC_MSG_NOTICE([SWIG executable is '$SWIG'])
 
77
                                SWIG_LIB=`$SWIG -swiglib | sed -e :a -e N -e 's/\n/ /' -e ta`
 
78
                                AC_MSG_NOTICE([SWIG library directory is '$SWIG_LIB'])
 
79
                        fi
 
80
                else
 
81
                        AC_MSG_WARN([cannot determine SWIG version])
 
82
                        SWIG=''
 
83
                fi
 
84
        fi
 
85
        AC_SUBST([SWIG_LIB])
 
86
])
 
87
 
 
88
# SWIG_ENABLE_CXX()
 
89
#
 
90
# Enable SWIG C++ support.  This affects all invocations of $(SWIG).
 
91
AC_DEFUN([SWIG_ENABLE_CXX],[
 
92
        AC_REQUIRE([AC_PROG_SWIG])
 
93
        AC_REQUIRE([AC_PROG_CXX])
 
94
        SWIG="$SWIG -c++"
 
95
])
 
96
 
 
97
# SWIG_MULTI_MODULE_SUPPORT()
 
98
#
 
99
# Enable support for multiple modules.  This effects all invocations
 
100
# of $(SWIG).  You have to link all generated modules against the
 
101
# appropriate SWIG runtime library.  If you want to build Python
 
102
# modules for example, use the SWIG_PYTHON() macro and link the
 
103
# modules against $(SWIG_PYTHON_LIBS).
 
104
#
 
105
AC_DEFUN([SWIG_MULTI_MODULE_SUPPORT],[
 
106
        AC_REQUIRE([AC_PROG_SWIG])
 
107
        SWIG="$SWIG -noruntime"
 
108
])
 
109
 
 
110
# SWIG_PYTHON([use-shadow-classes = {no, yes}])
 
111
#
 
112
# Checks for Python and provides the $(SWIG_PYTHON_CPPFLAGS),
 
113
# and $(SWIG_PYTHON_OPT) output variables.
 
114
#
 
115
# $(SWIG_PYTHON_OPT) contains all necessary SWIG options to generate
 
116
# code for Python.  Shadow classes are enabled unless the value of the
 
117
# optional first argument is exactly 'no'.  If you need multi module
 
118
# support (provided by the SWIG_MULTI_MODULE_SUPPORT() macro) use
 
119
# $(SWIG_PYTHON_LIBS) to link against the appropriate library.  It
 
120
# contains the SWIG Python runtime library that is needed by the type
 
121
# check system for example.
 
122
AC_DEFUN([SWIG_PYTHON],[
 
123
        AC_REQUIRE([AC_PROG_SWIG])
 
124
        AC_REQUIRE([AC_PYTHON_DEVEL])
 
125
        test "x$1" != "xno" || swig_shadow=" -noproxy"
 
126
        AC_SUBST([SWIG_PYTHON_OPT],["-python -modern$swig_shadow"])
 
127
        AC_SUBST([SWIG_PYTHON_CPPFLAGS],[$PYTHON_CPPFLAGS])
 
128
])
 
129
 
 
130
 
 
131
dnl @synopsis AC_LIB_WAD
 
132
dnl
 
133
dnl This macro searches for installed WAD library.
 
134
dnl
 
135
AC_DEFUN([AC_LIB_WAD],
 
136
[
 
137
        AC_REQUIRE([AC_PYTHON_DEVEL])
 
138
        AC_ARG_ENABLE(wad,
 
139
        AC_HELP_STRING([--enable-wad], [enable wad module]),
 
140
        [
 
141
                case "${enableval}" in
 
142
                        no)     ;;
 
143
                        *)      if test "x${enableval}" = xyes;
 
144
                                then
 
145
                                        check_wad="yes"
 
146
                                fi ;;
 
147
                esac
 
148
        ], [])
 
149
 
 
150
        if test -n "$check_wad";
 
151
        then
 
152
                AC_CHECK_LIB(wadpy, _init, [WADPY=-lwadpy], [], $PYTHON_LDFLAGS $PYTHON_EXTRA_LIBS)
 
153
                AC_SUBST(WADPY)
 
154
        fi
 
155
])