wined3d: Add an initial fbo_blit_supported implementation.
[wine] / aclocal.m4
1 dnl Macros used to build the Wine configure script
2 dnl
3 dnl Copyright 2002 Alexandre Julliard
4 dnl
5 dnl This library is free software; you can redistribute it and/or
6 dnl modify it under the terms of the GNU Lesser General Public
7 dnl License as published by the Free Software Foundation; either
8 dnl version 2.1 of the License, or (at your option) any later version.
9 dnl
10 dnl This library is distributed in the hope that it will be useful,
11 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
12 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 dnl Lesser General Public License for more details.
14 dnl
15 dnl You should have received a copy of the GNU Lesser General Public
16 dnl License along with this library; if not, write to the Free Software
17 dnl Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 dnl
19 dnl As a special exception to the GNU Lesser General Public License,
20 dnl if you distribute this file as part of a program that contains a
21 dnl configuration script generated by Autoconf, you may include it
22 dnl under the same distribution terms that you use for the rest of
23 dnl that program.
24
25 dnl **** Get the ldd program name; used by WINE_GET_SONAME ****
26 dnl
27 dnl Usage: WINE_PATH_LDD
28 dnl
29 AC_DEFUN([WINE_PATH_LDD],[AC_PATH_PROG(LDD,ldd,true,/sbin:/usr/sbin:$PATH)])
30
31 dnl **** Extract the soname of a library ****
32 dnl
33 dnl Usage: WINE_CHECK_SONAME(library, function, [action-if-found, [action-if-not-found, [other_libraries, [pattern]]]])
34 dnl
35 AC_DEFUN([WINE_CHECK_SONAME],
36 [AC_REQUIRE([WINE_PATH_LDD])dnl
37 AS_VAR_PUSHDEF([ac_Lib],[ac_cv_lib_soname_$1])dnl
38 m4_pushdef([ac_lib_pattern],m4_default([$6],[lib$1]))dnl
39 AC_MSG_CHECKING([for -l$1])
40 AC_CACHE_VAL(ac_Lib,
41 [ac_check_soname_save_LIBS=$LIBS
42 LIBS="-l$1 $5 $LIBS"
43   AC_LINK_IFELSE([AC_LANG_CALL([], [$2])],
44   [case "$LIBEXT" in
45     dll) AS_VAR_SET(ac_Lib,[`$ac_cv_path_LDD conftest.exe | grep "$1" | sed -e "s/dll.*/dll/"';2,$d'`]) ;;
46     dylib) AS_VAR_SET(ac_Lib,[`otool -L conftest$ac_exeext | grep "ac_lib_pattern\\.[[0-9A-Za-z.]]*dylib" | sed -e "s/^.*\/\(ac_lib_pattern\.[[0-9A-Za-z.]]*dylib\).*$/\1/"';2,$d'`]) ;;
47     *) AS_VAR_SET(ac_Lib,[`$ac_cv_path_LDD conftest$ac_exeext | grep "ac_lib_pattern\\.$LIBEXT" | sed -e "s/^.*\(ac_lib_pattern\.$LIBEXT[[^      ]]*\).*$/\1/"';2,$d'`]) ;;
48   esac])
49   LIBS=$ac_check_soname_save_LIBS])dnl
50 AS_IF([test "x]AS_VAR_GET(ac_Lib)[" = "x"],
51       [AC_MSG_RESULT([not found])
52        $4],
53       [AC_MSG_RESULT(AS_VAR_GET(ac_Lib))
54        AC_DEFINE_UNQUOTED(AS_TR_CPP(SONAME_LIB$1),["]AS_VAR_GET(ac_Lib)["],
55                           [Define to the soname of the lib$1 library.])
56        $3])dnl
57 m4_popdef([ac_lib_pattern])dnl
58 AS_VAR_POPDEF([ac_Lib])])
59
60 dnl **** Link C code with an assembly file ****
61 dnl
62 dnl Usage: WINE_TRY_ASM_LINK(asm-code,includes,function,[action-if-found,[action-if-not-found]])
63 dnl
64 AC_DEFUN([WINE_TRY_ASM_LINK],
65 [AC_LINK_IFELSE(AC_LANG_PROGRAM([[$2]],[[asm($1); $3]]),[$4],[$5])])
66
67 dnl **** Check if we can link an empty program with special CFLAGS ****
68 dnl
69 dnl Usage: WINE_TRY_CFLAGS(flags,[action-if-yes,[action-if-no]])
70 dnl
71 dnl The default action-if-yes is to append the flags to EXTRACFLAGS.
72 dnl
73 AC_DEFUN([WINE_TRY_CFLAGS],
74 [AS_VAR_PUSHDEF([ac_var], ac_cv_cflags_[[$1]])dnl
75 AC_CACHE_CHECK([whether the compiler supports $1], ac_var,
76 [ac_wine_try_cflags_saved=$CFLAGS
77 CFLAGS="$CFLAGS $1"
78 AC_LINK_IFELSE(AC_LANG_SOURCE([[int main(int argc, char **argv) { return 0; }]]),
79                [AS_VAR_SET(ac_var,yes)], [AS_VAR_SET(ac_var,no)])
80 CFLAGS=$ac_wine_try_cflags_saved])
81 AS_IF([test AS_VAR_GET(ac_var) = yes],
82       [m4_default([$2], [EXTRACFLAGS="$EXTRACFLAGS $1"])], [$3])dnl
83 AS_VAR_POPDEF([ac_var])])
84
85 dnl **** Check if we can link an empty shared lib (no main) with special CFLAGS ****
86 dnl
87 dnl Usage: WINE_TRY_SHLIB_FLAGS(flags,[action-if-yes,[action-if-no]])
88 dnl
89 AC_DEFUN([WINE_TRY_SHLIB_FLAGS],
90 [ac_wine_try_cflags_saved=$CFLAGS
91 CFLAGS="$CFLAGS $1"
92 AC_LINK_IFELSE([void myfunc() {}],[$2],[$3])
93 CFLAGS=$ac_wine_try_cflags_saved])
94
95 dnl **** Check whether we need to define a symbol on the compiler command line ****
96 dnl
97 dnl Usage: WINE_CHECK_DEFINE(name),[action-if-yes,[action-if-no]])
98 dnl
99 AC_DEFUN([WINE_CHECK_DEFINE],
100 [AS_VAR_PUSHDEF([ac_var],[ac_cv_cpp_def_$1])dnl
101 AC_CACHE_CHECK([whether we need to define $1],ac_var,
102     AC_EGREP_CPP(yes,[#ifndef $1
103 yes
104 #endif],
105     [AS_VAR_SET(ac_var,yes)],[AS_VAR_SET(ac_var,no)]))
106 AS_IF([test AS_VAR_GET(ac_var) = yes],
107       [CFLAGS="$CFLAGS -D$1"
108   LINTFLAGS="$LINTFLAGS -D$1"])dnl
109 AS_VAR_POPDEF([ac_var])])
110
111 dnl **** Check for functions with some extra libraries ****
112 dnl
113 dnl Usage: WINE_CHECK_LIB_FUNCS(funcs,libs,[action-if-found,[action-if-not-found]])
114 dnl
115 AC_DEFUN([WINE_CHECK_LIB_FUNCS],
116 [ac_wine_check_funcs_save_LIBS="$LIBS"
117 LIBS="$LIBS $2"
118 AC_CHECK_FUNCS([$1],[$3],[$4])
119 LIBS="$ac_wine_check_funcs_save_LIBS"])
120
121 dnl **** Check for a mingw program, trying the various mingw prefixes ****
122 dnl
123 dnl Usage: WINE_CHECK_MINGW_PROG(variable,prog,[value-if-not-found],[path])
124 dnl
125 AC_DEFUN([WINE_CHECK_MINGW_PROG],
126 [case "$host_cpu" in
127   i[[3456789]]86*)
128     ac_prefix_list="m4_foreach([ac_wine_prefix],[pc-mingw32, mingw32msvc, mingw32],
129                         m4_foreach([ac_wine_cpu],[i686,i586,i486,i386],[ac_wine_cpu-ac_wine_prefix-$2 ]))" ;;
130   x86_64)
131     ac_prefix_list="m4_foreach([ac_wine_prefix],[pc-mingw32,w64-mingw32],[x86_64-ac_wine_prefix-$2 ])" ;;
132   *)
133     ac_prefix_list="" ;;
134 esac
135 AC_CHECK_PROGS([$1],[$ac_prefix_list],[$3],[$4])])
136
137
138 dnl **** Define helper functions for creating config.status files ****
139 dnl
140 dnl Usage: AC_REQUIRE([WINE_CONFIG_HELPERS])
141 dnl
142 AC_DEFUN([WINE_CONFIG_HELPERS],
143 [ALL_MAKEFILE_DEPENDS="
144 # Rules automatically generated by configure
145
146 .INIT: Makefile
147 .BEGIN: Makefile
148 .MAKEFILEDEPS:
149 Makefile: Makefile.in Make.rules config.status
150         @./config.status Make.tmp Makefile"
151
152 AC_SUBST(ALL_WINETEST_DEPENDS,["# Test binaries"])
153 AC_SUBST(ALL_TEST_BINARIES,"")
154
155 wine_fn_append_file ()
156 {
157     AS_VAR_APPEND($[1]," \\$as_nl       $[2]")
158 }
159
160 wine_fn_append_rule ()
161 {
162     AS_VAR_APPEND($[1],"$as_nl$[2]")
163 }
164
165 wine_fn_all_dir_rules ()
166 {
167     wine_fn_append_file ALL_DIRS $[1]
168     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
169 "__clean__ .PHONY: $[1]/__clean__
170 $[1]/__clean__: $[1]/Makefile
171         @cd $[1] && \$(MAKE) clean
172         \$(RM) $[1]/Makefile
173 $[1]/Makefile: $[1]/Makefile.in config.status $[2]
174         @./config.status --file $[1]/Makefile && cd $[1] && \$(MAKE) depend
175 depend .PHONY: $[1]/__depend__
176 $[1]/__depend__: \$(MAKEDEP) dummy
177         @./config.status --file $[1]/Makefile && cd $[1] && \$(MAKE) depend"
178 }
179
180 wine_fn_config_makefile ()
181 {
182     ac_dir=$[1]
183     ac_enable=$[2]
184     wine_fn_all_dir_rules $ac_dir "Make.rules \$(MAKEDEP)"
185
186     AS_VAR_IF([$ac_enable],[no],,[wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
187 "all .PHONY: $ac_dir
188 $ac_dir: $ac_dir/Makefile dummy
189         @cd $ac_dir && \$(MAKE)
190 install:: $ac_dir
191         @cd $ac_dir && \$(MAKE) install
192 install-lib:: $ac_dir
193         @cd $ac_dir && \$(MAKE) install-lib
194 install-dev:: $ac_dir
195         @cd $ac_dir && \$(MAKE) install-dev
196 uninstall:: $ac_dir/Makefile
197         @cd $ac_dir && \$(MAKE) uninstall"])
198 }
199
200 wine_fn_config_lib ()
201 {
202     ac_name=$[1]
203     ac_dir=dlls/$ac_name
204     wine_fn_all_dir_rules $ac_dir "dlls/Makeimplib.rules \$(MAKEDEP)"
205     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
206 "all __builddeps__: $ac_dir
207 __buildcrossdeps__: $ac_dir/lib$ac_name.cross.a
208 $ac_dir $ac_dir/lib$ac_name.cross.a: $ac_dir/Makefile tools/widl tools/winebuild tools/winegcc include
209 $ac_dir: dummy
210         @cd $ac_dir && \$(MAKE)
211 $ac_dir/lib$ac_name.cross.a: dummy
212         @cd $ac_dir && \$(MAKE) lib$ac_name.cross.a
213 install install-dev:: $ac_dir
214         @cd $ac_dir && \$(MAKE) install
215 uninstall:: $ac_dir/Makefile
216         @cd $ac_dir && \$(MAKE) uninstall"
217 }
218
219 wine_fn_config_dll ()
220 {
221     ac_dir=$[1]
222     ac_enable=$[2]
223     ac_implib=$[3]
224     ac_implibsrc=$[4]
225     ac_file="dlls/$ac_dir/lib$ac_implib"
226     ac_deps="tools/widl tools/winebuild tools/winegcc include"
227
228     wine_fn_all_dir_rules dlls/$ac_dir "dlls/Makedll.rules \$(MAKEDEP)"
229
230     AS_VAR_IF([$ac_enable],[no],
231               dnl enable_win16 is special in that it disables import libs too
232               [test "$ac_enable" != enable_win16 || return 0],
233               [wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
234 "all .PHONY: dlls/$ac_dir
235 dlls/$ac_dir: dlls/$ac_dir/Makefile __builddeps__ dummy
236         @cd dlls/$ac_dir && \$(MAKE)
237 install:: dlls/$ac_dir/Makefile __builddeps__ 
238         @cd dlls/$ac_dir && \$(MAKE) install
239 install-lib:: dlls/$ac_dir/Makefile __builddeps__ 
240         @cd dlls/$ac_dir && \$(MAKE) install-lib
241 uninstall manpages htmlpages sgmlpages xmlpages:: dlls/$ac_dir/Makefile
242         @cd dlls/$ac_dir && \$(MAKE) \$[@]"])
243
244     if test -n "$ac_implibsrc"
245     then
246         wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
247 "__builddeps__: $ac_file.$IMPLIBEXT $ac_file.$STATIC_IMPLIBEXT
248 __buildcrossdeps__: $ac_file.cross.a
249 $ac_file.$IMPLIBEXT $ac_file.$STATIC_IMPLIBEXT $ac_file.cross.a: $ac_deps
250 $ac_file.def: dlls/$ac_dir/$ac_dir.spec dlls/$ac_dir/Makefile
251         @cd dlls/$ac_dir && \$(MAKE) \`basename \$[@]\`
252 $ac_file.$STATIC_IMPLIBEXT $ac_file.cross.a: dlls/$ac_dir/Makefile dummy
253         @cd dlls/$ac_dir && \$(MAKE) \`basename \$[@]\`
254 install-dev:: dlls/$ac_dir/Makefile __builddeps__ 
255         @cd dlls/$ac_dir && \$(MAKE) install-dev"
256     elif test -n "$ac_implib"
257     then
258         wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
259 "__builddeps__: $ac_file.$IMPLIBEXT
260 __buildcrossdeps__: $ac_file.cross.a
261 $ac_file.$IMPLIBEXT $ac_file.cross.a: dlls/$ac_dir/$ac_dir.spec dlls/$ac_dir/Makefile $ac_deps
262         @cd dlls/$ac_dir && \$(MAKE) \`basename \$[@]\`
263 install-dev:: dlls/$ac_dir/Makefile __builddeps__ 
264         @cd dlls/$ac_dir && \$(MAKE) install-dev"
265
266         if test "$ac_dir" != "$ac_implib"
267         then
268             wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
269 "__builddeps__: dlls/lib$ac_implib.$IMPLIBEXT
270 __buildcrossdeps__: dlls/lib$ac_implib.cross.a
271 dlls/lib$ac_implib.$IMPLIBEXT: $ac_file.$IMPLIBEXT
272         \$(RM) \$[@] && \$(LN_S) $ac_dir/lib$ac_implib.$IMPLIBEXT \$[@]
273 dlls/lib$ac_implib.cross.a: $ac_file.cross.a
274         \$(RM) \$[@] && \$(LN_S) $ac_dir/lib$ac_implib.cross.a \$[@]
275 clean::
276         \$(RM) dlls/lib$ac_implib.$IMPLIBEXT"
277         fi
278     fi
279 }
280
281 wine_fn_config_program ()
282 {
283     ac_dir=$[1]
284     ac_enable=$[2]
285     ac_install=$[3]
286     wine_fn_all_dir_rules programs/$ac_dir "programs/Makeprog.rules \$(MAKEDEP)"
287
288     AS_VAR_IF([$ac_enable],[no],,[wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
289 "all .PHONY: programs/$ac_dir
290 programs/$ac_dir: programs/$ac_dir/Makefile __builddeps__ dummy
291         @cd programs/$ac_dir && \$(MAKE)"
292
293     test -n "$ac_install" || return
294     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
295 "install install-lib:: programs/$ac_dir/Makefile __builddeps__
296         @cd programs/$ac_dir && \$(MAKE) install
297 uninstall:: programs/$ac_dir/Makefile
298         @cd programs/$ac_dir && \$(MAKE) uninstall"
299     if test "$ac_install" = installbin -a -n "$DLLEXT" -a "x$enable_tools" != xno
300     then
301         wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
302 "install install-lib:: tools \$(DESTDIR)\$(bindir)
303         \$(INSTALL_SCRIPT) tools/wineapploader \$(DESTDIR)\$(bindir)/$ac_dir
304 uninstall::
305         \$(RM) \$(DESTDIR)\$(bindir)/$ac_dir"
306     fi])
307 }
308
309 wine_fn_config_test ()
310 {
311     ac_dir=$[1]
312     ac_name=$[2]
313     wine_fn_append_file ALL_TEST_BINARIES $ac_name.exe
314     wine_fn_append_rule ALL_WINETEST_DEPENDS \
315 "$ac_name.exe: \$(TOPOBJDIR)/$ac_dir/$ac_name.exe$DLLEXT
316         cp \$(TOPOBJDIR)/$ac_dir/$ac_name.exe$DLLEXT \$[@] && \$(STRIP) \$[@]
317 $ac_name.rc:
318         echo \"$ac_name.exe TESTRES \\\"$ac_name.exe\\\"\" >\$[@] || (\$(RM) \$[@] && false)
319 $ac_name.res: $ac_name.rc $ac_name.exe"
320     wine_fn_all_dir_rules $ac_dir "Maketest.rules \$(MAKEDEP)"
321
322     AS_VAR_IF([enable_tests],[no],,[wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
323 "all programs/winetest .PHONY: $ac_dir
324 $ac_dir: $ac_dir/Makefile __builddeps__ dummy
325         @cd $ac_dir && \$(MAKE)
326 crosstest .PHONY: $ac_dir/__crosstest__
327 $ac_dir/__crosstest__: $ac_dir/Makefile __buildcrossdeps__ dummy
328         @cd $ac_dir && \$(MAKE) crosstest
329 test .PHONY: $ac_dir/__test__
330 $ac_dir/__test__: dummy
331         @cd $ac_dir && \$(MAKE) test
332 testclean::
333         \$(RM) $ac_dir/*.ok"])
334 }
335
336 wine_fn_config_tool ()
337 {
338     ac_dir=$[1]
339     ac_deps="Make.rules"
340     if test "$ac_dir" != tools
341     then
342         dnl makedep is in tools so tools makefile cannot depend on it
343         ac_deps="$ac_deps \$(MAKEDEP)"
344     fi
345     wine_fn_all_dir_rules $ac_dir "$ac_deps"
346
347     AS_VAR_IF([enable_tools],[no],,[case $ac_dir in
348       dnl tools directory has both install-lib and install-dev
349       tools) wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
350 "install:: $ac_dir
351         @cd $ac_dir && \$(MAKE) install
352 install-lib:: $ac_dir
353         @cd $ac_dir && \$(MAKE) install-lib
354 install-dev:: $ac_dir
355         @cd $ac_dir && \$(MAKE) install-dev" ;;
356       *)     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
357 "install install-dev:: $ac_dir
358         @cd $ac_dir && \$(MAKE) install" ;;
359       esac
360       wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
361 "uninstall:: $ac_dir/Makefile
362         @cd $ac_dir && \$(MAKE) uninstall
363 all __tooldeps__ .PHONY: $ac_dir
364 $ac_dir: $ac_dir/Makefile libs/port dummy
365         @cd $ac_dir && \$(MAKE)"])
366 }
367
368 wine_fn_config_makerules ()
369 {
370     ac_rules=$[1]
371     ac_deps=$[2]
372     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
373 "$ac_rules: $ac_rules.in $ac_deps config.status
374         @./config.status $ac_rules
375 distclean::
376         \$(RM) $ac_rules"
377 }
378
379 wine_fn_config_symlink ()
380 {
381     ac_link=$[1]
382     wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
383 "$ac_link:
384         @./config.status $ac_link
385 distclean::
386         \$(RM) $ac_link"
387 }])
388
389 dnl **** Define helper function to append a file to a makefile file list ****
390 dnl
391 dnl Usage: WINE_APPEND_FILE(var,file)
392 dnl
393 AC_DEFUN([WINE_APPEND_FILE],[AC_REQUIRE([WINE_CONFIG_HELPERS])wine_fn_append_file $1 "$2"])
394
395 dnl **** Define helper function to append a rule to a makefile command list ****
396 dnl
397 dnl Usage: WINE_APPEND_RULE(var,rule)
398 dnl
399 AC_DEFUN([WINE_APPEND_RULE],[AC_REQUIRE([WINE_CONFIG_HELPERS])wine_fn_append_rule $1 "$2"])
400
401 dnl **** Create nonexistent directories from config.status ****
402 dnl
403 dnl Usage: WINE_CONFIG_EXTRA_DIR(dirname)
404 dnl
405 AC_DEFUN([WINE_CONFIG_EXTRA_DIR],
406 [AC_CONFIG_COMMANDS([$1],[test -d "$1" || { AC_MSG_NOTICE([creating $1]); AS_MKDIR_P("$1"); }])])
407
408 dnl **** Create symlinks from config.status ****
409 dnl
410 dnl Usage: WINE_CONFIG_SYMLINK(name,target,enable)
411 dnl
412 AC_DEFUN([WINE_CONFIG_SYMLINK],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
413 m4_ifval([$3],[if test "x$[$3]" != xno; then
414 ])AC_CONFIG_LINKS([$1:]m4_default([$2],[$1]))dnl
415 m4_if([$2],,[test "$srcdir" = "." || ])wine_fn_config_symlink $1[]m4_ifval([$3],[
416 fi])])
417
418 dnl **** Create a make rules file from config.status ****
419 dnl
420 dnl Usage: WINE_CONFIG_MAKERULES(file,var,deps)
421 dnl
422 AC_DEFUN([WINE_CONFIG_MAKERULES],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
423 wine_fn_config_makerules $1 $3
424 $2=$1
425 AC_SUBST_FILE([$2])dnl
426 AC_CONFIG_FILES([$1])])
427
428 dnl **** Create a makefile from config.status ****
429 dnl
430 dnl Usage: WINE_CONFIG_MAKEFILE(file,enable)
431 dnl
432 AC_DEFUN([WINE_CONFIG_MAKEFILE],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
433 AS_VAR_PUSHDEF([ac_enable],m4_default([$2],[enable_]$1))dnl
434 wine_fn_config_makefile [$1] ac_enable[]dnl
435 AS_VAR_POPDEF([ac_enable])])
436
437 dnl **** Create a dll makefile from config.status ****
438 dnl
439 dnl Usage: WINE_CONFIG_DLL(name,enable,implib,implibsrc)
440 dnl
441 AC_DEFUN([WINE_CONFIG_DLL],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
442 AS_VAR_PUSHDEF([ac_enable],m4_default([$2],[enable_]$1))dnl
443 wine_fn_config_dll [$1] ac_enable [$3] m4_ifval([$4],["$4"])dnl
444 AS_VAR_POPDEF([ac_enable])])
445
446 dnl **** Create a program makefile from config.status ****
447 dnl
448 dnl Usage: WINE_CONFIG_PROGRAM(name,install,enable)
449 dnl
450 AC_DEFUN([WINE_CONFIG_PROGRAM],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
451 AS_VAR_PUSHDEF([ac_enable],m4_default([$3],[enable_]$1))dnl
452 wine_fn_config_program [$1] ac_enable [$2]dnl
453 AS_VAR_POPDEF([ac_enable])])
454
455 dnl **** Create a test makefile from config.status ****
456 dnl
457 dnl Usage: WINE_CONFIG_TEST(dir)
458 dnl
459 AC_DEFUN([WINE_CONFIG_TEST],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
460 m4_pushdef([ac_suffix],m4_if(m4_substr([$1],0,9),[programs/],[.exe_test],[_test]))dnl
461 m4_pushdef([ac_name],[m4_bpatsubst([$1],[.*/\(.*\)/tests$],[\1])])dnl
462 wine_fn_config_test $1 ac_name[]ac_suffix[]dnl
463 m4_popdef([ac_suffix])dnl
464 m4_popdef([ac_name])])
465
466 dnl **** Create a static lib makefile from config.status ****
467 dnl
468 dnl Usage: WINE_CONFIG_LIB(name)
469 dnl
470 AC_DEFUN([WINE_CONFIG_LIB],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
471 wine_fn_config_lib $1])
472
473 dnl **** Create a tool makefile from config.status ****
474 dnl
475 dnl Usage: WINE_CONFIG_TOOL(name)
476 dnl
477 AC_DEFUN([WINE_CONFIG_TOOL],[AC_REQUIRE([WINE_CONFIG_HELPERS])dnl
478 wine_fn_config_tool $1])
479
480 dnl **** Add a message to the list displayed at the end ****
481 dnl
482 dnl Usage: WINE_NOTICE(notice)
483 dnl Usage: WINE_NOTICE_WITH(with_flag, test, notice)
484 dnl Usage: WINE_WARNING(warning)
485 dnl Usage: WINE_WARNING_WITH(with_flag, test, warning)
486 dnl Usage: WINE_PRINT_MESSAGES
487 dnl
488 AC_DEFUN([WINE_NOTICE],[AS_VAR_APPEND([wine_notices],["|$1"])])
489 AC_DEFUN([WINE_WARNING],[AS_VAR_APPEND([wine_warnings],["|$1"])])
490
491 AC_DEFUN([WINE_NOTICE_WITH],[AS_IF([$2],[case "x$with_$1" in
492   x)   WINE_NOTICE([$3]) ;;
493   xno) ;;
494   *)   AC_MSG_ERROR([$3
495 This is an error since --with-$1 was requested.]) ;;
496 esac])])
497
498 AC_DEFUN([WINE_WARNING_WITH],[AS_IF([$2],[case "x$with_$1" in
499   x)   WINE_WARNING([$3]) ;;
500   xno) ;;
501   *)   AC_MSG_ERROR([$3
502 This is an error since --with-$1 was requested.]) ;;
503 esac])])
504
505 AC_DEFUN([WINE_ERROR_WITH],[AS_IF([$2],[case "x$with_$1" in
506   xno) ;;
507   *)   AC_MSG_ERROR([$3
508 Use the --without-$1 option if you really want this.]) ;;
509 esac])])
510
511 AC_DEFUN([WINE_PRINT_MESSAGES],[ac_save_IFS="$IFS"
512 if test "x$wine_notices != "x; then
513     echo >&AS_MESSAGE_FD
514     IFS="|"
515     for msg in $wine_notices; do
516         IFS="$ac_save_IFS"
517         if test -n "$msg"; then
518             AC_MSG_NOTICE([$msg])
519         fi
520     done
521 fi
522 IFS="|"
523 for msg in $wine_warnings; do
524     IFS="$ac_save_IFS"
525     if test -n "$msg"; then
526         echo >&2
527         AC_MSG_WARN([$msg])
528     fi
529 done
530 IFS="$ac_save_IFS"])
531
532 dnl Local Variables:
533 dnl compile-command: "autoreconf --warnings=all"
534 dnl End: