~statik/ubuntu/maverick/erlang/erlang-merge-testing

« back to all changes in this revision

Viewing changes to lib/wx/wxwin.m4

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-05-01 10:14:38 UTC
  • mfrom: (3.1.4 sid)
  • Revision ID: james.westby@ubuntu.com-20090501101438-6qlr6rsdxgyzrg2z
Tags: 1:13.b-dfsg-2
* Cleaned up patches: removed unneeded patch which helped to support
  different SCTP library versions, made sure that changes for m68k
  architecture applied only when building on this architecture.
* Removed duplicated information from binary packages descriptions.
* Don't require libsctp-dev build-dependency on solaris-i386 architecture
  which allows to build Erlang on Nexenta (thanks to Tim Spriggs for
  the suggestion).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
dnl ---------------------------------------------------------------------------
 
2
dnl Macros for wxWidgets detection. Typically used in configure.in as:
 
3
dnl
 
4
dnl     AC_ARG_ENABLE(...)
 
5
dnl     AC_ARG_WITH(...)
 
6
dnl        ...
 
7
dnl     AM_OPTIONS_WXCONFIG
 
8
dnl        ...
 
9
dnl        ...
 
10
dnl     AM_PATH_WXCONFIG(2.6.0, wxWin=1)
 
11
dnl     if test "$wxWin" != 1; then
 
12
dnl        AC_MSG_ERROR([
 
13
dnl                wxWidgets must be installed on your system
 
14
dnl                but wx-config script couldn't be found.
 
15
dnl
 
16
dnl                Please check that wx-config is in path, the directory
 
17
dnl                where wxWidgets libraries are installed (returned by
 
18
dnl                'wx-config --libs' command) is in LD_LIBRARY_PATH or
 
19
dnl                equivalent variable and wxWidgets version is 2.3.4 or above.
 
20
dnl        ])
 
21
dnl     fi
 
22
dnl     CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
 
23
dnl     CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
 
24
dnl     CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
 
25
dnl
 
26
dnl     LIBS="$LIBS $WX_LIBS"
 
27
dnl ---------------------------------------------------------------------------
 
28
 
 
29
dnl ---------------------------------------------------------------------------
 
30
dnl AM_OPTIONS_WXCONFIG
 
31
dnl
 
32
dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and
 
33
dnl --wx-config command line options
 
34
dnl ---------------------------------------------------------------------------
 
35
 
 
36
AC_DEFUN([AM_OPTIONS_WXCONFIG],
 
37
[
 
38
    AC_ARG_WITH(wxdir,
 
39
                [  --with-wxdir=PATH       Use uninstalled version of wxWidgets in PATH],
 
40
                [ wx_config_name="$withval/wx-config"
 
41
                  wx_config_args="--inplace"])
 
42
    AC_ARG_WITH(wx-config,
 
43
                [  --with-wx-config=CONFIG wx-config script to use (optional)],
 
44
                wx_config_name="$withval" )
 
45
    AC_ARG_WITH(wx-prefix,
 
46
                [  --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)],
 
47
                wx_config_prefix="$withval", wx_config_prefix="")
 
48
    AC_ARG_WITH(wx-exec-prefix,
 
49
                [  --with-wx-exec-prefix=PREFIX
 
50
                          Exec prefix where wxWidgets is installed (optional)],
 
51
                wx_config_exec_prefix="$withval", wx_config_exec_prefix="")
 
52
])
 
53
 
 
54
dnl Helper macro for checking if wx version is at least $1.$2.$3, set's
 
55
dnl wx_ver_ok=yes if it is:
 
56
AC_DEFUN([_WX_PRIVATE_CHECK_VERSION],
 
57
[
 
58
    wx_ver_ok=""
 
59
    if test "x$WX_VERSION" != x ; then
 
60
      if test $wx_config_major_version -gt $1; then
 
61
        wx_ver_ok=yes
 
62
      else
 
63
        if test $wx_config_major_version -eq $1; then
 
64
           if test $wx_config_minor_version -gt $2; then
 
65
              wx_ver_ok=yes
 
66
           else
 
67
              if test $wx_config_minor_version -eq $2; then
 
68
                 if test $wx_config_micro_version -ge $3; then
 
69
                    wx_ver_ok=yes
 
70
                 fi
 
71
              fi
 
72
           fi
 
73
        fi
 
74
      fi
 
75
    fi
 
76
])
 
77
 
 
78
dnl ---------------------------------------------------------------------------
 
79
dnl AM_PATH_WXCONFIG(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
 
80
dnl                  [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]])
 
81
dnl
 
82
dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC
 
83
dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME
 
84
dnl environment variable to override the default name of the wx-config script
 
85
dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this
 
86
dnl case the macro won't even waste time on tests for its existence.
 
87
dnl
 
88
dnl Optional WX-LIBS argument contains comma- or space-separated list of
 
89
dnl wxWidgets libraries to link against (it may include contrib libraries). If
 
90
dnl it is not specified then WX_LIBS and WX_LIBS_STATIC will contain flags to
 
91
dnl link with all of the core wxWidgets libraries.
 
92
dnl
 
93
dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config
 
94
dnl invocation command in present. It can be used to fine-tune lookup of
 
95
dnl best wxWidgets build available.
 
96
dnl
 
97
dnl Example use:
 
98
dnl   AM_PATH_WXCONFIG([2.6.0], [wxWin=1], [wxWin=0], [html,core,net]
 
99
dnl                    [--unicode --debug])
 
100
dnl ---------------------------------------------------------------------------
 
101
 
 
102
dnl
 
103
dnl Get the cflags and libraries from the wx-config script
 
104
dnl
 
105
AC_DEFUN([AM_PATH_WXCONFIG],
 
106
[
 
107
  dnl do we have wx-config name: it can be wx-config or wxd-config or ...
 
108
  if test x${WX_CONFIG_NAME+set} != xset ; then
 
109
     WX_CONFIG_NAME=wx-config
 
110
  fi
 
111
 
 
112
  if test "x$wx_config_name" != x ; then
 
113
     WX_CONFIG_NAME="$wx_config_name"
 
114
  fi
 
115
 
 
116
  dnl deal with optional prefixes
 
117
  if test x$wx_config_exec_prefix != x ; then
 
118
     wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix"
 
119
     WX_LOOKUP_PATH="$wx_config_exec_prefix/bin"
 
120
  fi
 
121
  if test x$wx_config_prefix != x ; then
 
122
     wx_config_args="$wx_config_args --prefix=$wx_config_prefix"
 
123
     WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin"
 
124
  fi
 
125
  if test "$cross_compiling" = "yes"; then
 
126
     wx_config_args="$wx_config_args --host=$host_alias"
 
127
  fi
 
128
 
 
129
  dnl don't search the PATH if WX_CONFIG_NAME is absolute filename
 
130
  if test -x "$WX_CONFIG_NAME" ; then
 
131
     AC_MSG_CHECKING(for wx-config)
 
132
     WX_CONFIG_PATH="$WX_CONFIG_NAME"
 
133
     AC_MSG_RESULT($WX_CONFIG_PATH)
 
134
  else
 
135
     AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH")
 
136
  fi
 
137
 
 
138
  if test "$WX_CONFIG_PATH" != "no" ; then
 
139
    WX_VERSION=""
 
140
 
 
141
    min_wx_version=ifelse([$1], ,2.2.1,$1)
 
142
    if test -z "$5" ; then
 
143
      AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version])
 
144
    else
 
145
      AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)])
 
146
    fi
 
147
 
 
148
    WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5 $4"
 
149
 
 
150
    WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null`
 
151
    wx_config_major_version=`echo $WX_VERSION | \
 
152
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
 
153
    wx_config_minor_version=`echo $WX_VERSION | \
 
154
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
 
155
    wx_config_micro_version=`echo $WX_VERSION | \
 
156
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
 
157
 
 
158
    wx_requested_major_version=`echo $min_wx_version | \
 
159
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
 
160
    wx_requested_minor_version=`echo $min_wx_version | \
 
161
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
 
162
    wx_requested_micro_version=`echo $min_wx_version | \
 
163
           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
 
164
 
 
165
    _WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version],
 
166
                              [$wx_requested_minor_version],
 
167
                              [$wx_requested_micro_version])
 
168
 
 
169
    if test -n "$wx_ver_ok"; then
 
170
 
 
171
      AC_MSG_RESULT(yes (version $WX_VERSION))
 
172
      WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs`
 
173
 
 
174
      dnl is this even still appropriate?  --static is a real option now
 
175
      dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is
 
176
      dnl what the user actually wants, making this redundant at best.
 
177
      dnl For now keep it in case anyone actually used it in the past.
 
178
      AC_MSG_CHECKING([for wxWidgets static library])
 
179
      WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs 2>/dev/null`
 
180
      if test "x$WX_LIBS_STATIC" = "x"; then
 
181
        AC_MSG_RESULT(no)
 
182
      else
 
183
        AC_MSG_RESULT(yes)
 
184
      fi
 
185
 
 
186
      dnl starting with version 2.2.6 wx-config has --cppflags argument
 
187
      wx_has_cppflags=""
 
188
      if test $wx_config_major_version -gt 2; then
 
189
        wx_has_cppflags=yes
 
190
      else
 
191
        if test $wx_config_major_version -eq 2; then
 
192
           if test $wx_config_minor_version -gt 2; then
 
193
              wx_has_cppflags=yes
 
194
           else
 
195
              if test $wx_config_minor_version -eq 2; then
 
196
                 if test $wx_config_micro_version -ge 6; then
 
197
                    wx_has_cppflags=yes
 
198
                 fi
 
199
              fi
 
200
           fi
 
201
        fi
 
202
      fi
 
203
 
 
204
      dnl starting with version 2.7.0 wx-config has --rescomp option
 
205
      wx_has_rescomp=""
 
206
      if test $wx_config_major_version -gt 2; then
 
207
        wx_has_rescomp=yes
 
208
      else
 
209
        if test $wx_config_major_version -eq 2; then
 
210
           if test $wx_config_minor_version -ge 7; then
 
211
              wx_has_rescomp=yes
 
212
           fi
 
213
        fi
 
214
      fi
 
215
      if test "x$wx_has_rescomp" = x ; then
 
216
         dnl cannot give any useful info for resource compiler
 
217
         WX_RESCOMP=
 
218
      else
 
219
         WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp`
 
220
      fi
 
221
 
 
222
      if test "x$wx_has_cppflags" = x ; then
 
223
         dnl no choice but to define all flags like CFLAGS
 
224
         WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags`
 
225
         WX_CPPFLAGS=$WX_CFLAGS
 
226
         WX_CXXFLAGS=$WX_CFLAGS
 
227
 
 
228
         WX_CFLAGS_ONLY=$WX_CFLAGS
 
229
         WX_CXXFLAGS_ONLY=$WX_CFLAGS
 
230
      else
 
231
         dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS
 
232
         WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags`
 
233
         WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags`
 
234
         WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags`
 
235
 
 
236
         WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"`
 
237
         WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"`
 
238
      fi
 
239
 
 
240
      ifelse([$2], , :, [$2])
 
241
 
 
242
    else
 
243
 
 
244
       if test "x$WX_VERSION" = x; then
 
245
          dnl no wx-config at all
 
246
          AC_MSG_RESULT(no)
 
247
       else
 
248
          AC_MSG_RESULT(no (version $WX_VERSION is not new enough))
 
249
       fi
 
250
 
 
251
       WX_CFLAGS=""
 
252
       WX_CPPFLAGS=""
 
253
       WX_CXXFLAGS=""
 
254
       WX_LIBS=""
 
255
       WX_LIBS_STATIC=""
 
256
       WX_RESCOMP=""
 
257
       ifelse([$3], , :, [$3])
 
258
 
 
259
    fi
 
260
  else
 
261
 
 
262
    WX_CFLAGS=""
 
263
    WX_CPPFLAGS=""
 
264
    WX_CXXFLAGS=""
 
265
    WX_LIBS=""
 
266
    WX_LIBS_STATIC=""
 
267
    WX_RESCOMP=""
 
268
 
 
269
    ifelse([$3], , :, [$3])
 
270
 
 
271
  fi
 
272
 
 
273
  AC_SUBST(WX_CPPFLAGS)
 
274
  AC_SUBST(WX_CFLAGS)
 
275
  AC_SUBST(WX_CXXFLAGS)
 
276
  AC_SUBST(WX_CFLAGS_ONLY)
 
277
  AC_SUBST(WX_CXXFLAGS_ONLY)
 
278
  AC_SUBST(WX_LIBS)
 
279
  AC_SUBST(WX_LIBS_STATIC)
 
280
  AC_SUBST(WX_VERSION)
 
281
  AC_SUBST(WX_RESCOMP)
 
282
])
 
283
 
 
284
dnl ---------------------------------------------------------------------------
 
285
dnl Get information on the wxrc program for making C++, Python and xrs
 
286
dnl resource files.
 
287
dnl
 
288
dnl     AC_ARG_ENABLE(...)
 
289
dnl     AC_ARG_WITH(...)
 
290
dnl        ...
 
291
dnl     AM_OPTIONS_WXCONFIG
 
292
dnl        ...
 
293
dnl     AM_PATH_WXCONFIG(2.6.0, wxWin=1)
 
294
dnl     if test "$wxWin" != 1; then
 
295
dnl        AC_MSG_ERROR([
 
296
dnl                wxWidgets must be installed on your system
 
297
dnl                but wx-config script couldn't be found.
 
298
dnl
 
299
dnl                Please check that wx-config is in path, the directory
 
300
dnl                where wxWidgets libraries are installed (returned by
 
301
dnl                'wx-config --libs' command) is in LD_LIBRARY_PATH or
 
302
dnl                equivalent variable and wxWidgets version is 2.6.0 or above.
 
303
dnl        ])
 
304
dnl     fi
 
305
dnl
 
306
dnl     AM_PATH_WXRC([HAVE_WXRC=1], [HAVE_WXRC=0])
 
307
dnl     if test "x$HAVE_WXRC" != x1; then
 
308
dnl         AC_MSG_ERROR([
 
309
dnl                The wxrc program was not installed or not found.
 
310
dnl     
 
311
dnl                Please check the wxWidgets installation.
 
312
dnl         ])
 
313
dnl     fi
 
314
dnl
 
315
dnl     CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
 
316
dnl     CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
 
317
dnl     CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
 
318
dnl
 
319
dnl     LDFLAGS="$LDFLAGS $WX_LIBS"
 
320
dnl ---------------------------------------------------------------------------
 
321
 
 
322
 
 
323
 
 
324
dnl ---------------------------------------------------------------------------
 
325
dnl AM_PATH_WXRC([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
 
326
dnl
 
327
dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS
 
328
dnl resources.  The variable WXRC will be set and substituted in the configure
 
329
dnl script and Makefiles.
 
330
dnl
 
331
dnl Example use:
 
332
dnl   AM_PATH_WXRC([wxrc=1], [wxrc=0])
 
333
dnl ---------------------------------------------------------------------------
 
334
 
 
335
dnl
 
336
dnl wxrc program from the wx-config script
 
337
dnl
 
338
AC_DEFUN([AM_PATH_WXRC],
 
339
[
 
340
  AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler])
 
341
    
 
342
  if test "x$WX_CONFIG_NAME" = x; then
 
343
    AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.])
 
344
  else
 
345
    
 
346
    AC_MSG_CHECKING([for wxrc])
 
347
    
 
348
    if test "x$WXRC" = x ; then
 
349
      dnl wx-config --utility is a new addition to wxWidgets:
 
350
      _WX_PRIVATE_CHECK_VERSION(2,5,3)
 
351
      if test -n "$wx_ver_ok"; then
 
352
        WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc`
 
353
      fi
 
354
    fi
 
355
 
 
356
    if test "x$WXRC" = x ; then
 
357
      AC_MSG_RESULT([not found])
 
358
      ifelse([$2], , :, [$2])
 
359
    else
 
360
      AC_MSG_RESULT([$WXRC])
 
361
      ifelse([$1], , :, [$1])
 
362
    fi
 
363
    
 
364
    AC_SUBST(WXRC)
 
365
  fi
 
366
])