]> cygwin.com Git - cygwin-apps/cygutils.git/blame - acinclude.m4
Modify HOW-TO-CONTRIBUTE to explain gettext changes
[cygwin-apps/cygutils.git] / acinclude.m4
CommitLineData
d2b03e6a
CW
1# AC_LANG_STDCALL_FUNC_LINK_TRY(FUNCTION, SIGNATURE)
2# -------------------------------
3# Produce a source which links correctly iff the FUNCTION exists.
4AC_DEFUN([AC_LANG_STDCALL_FUNC_LINK_TRY],
5[_AC_LANG_DISPATCH([$0], _AC_LANG, $@)])
6
7# AC_CHECK_STDCALL_FUNC(FUNCTION, SIGNATURE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
8# -----------------------------------------------------------------
9AC_DEFUN([AC_CHECK_STDCALL_FUNC],
10[AS_VAR_PUSHDEF([ac_var], [ac_cv_func_$1])dnl
11AC_CACHE_CHECK([for $1], ac_var,
12[AC_LINK_IFELSE([AC_LANG_STDCALL_FUNC_LINK_TRY([$1],[$2])],
13 [AS_VAR_SET(ac_var, yes)],
14 [AS_VAR_SET(ac_var, no)])])
15AS_IF([test AS_VAR_GET(ac_var) = yes], [$3], [$4])dnl
16AS_VAR_POPDEF([ac_var])dnl
17])# AC_CHECK_FUNC
18
19# AC_LANG_STDCALL_FUNC_LINK_TRY(C)(FUNCTION, SIGNATURE)
20# ----------------------------------
21# Don't include <ctype.h> because on OSF/1 3.0 it includes
22# <sys/types.h> which includes <sys/select.h> which contains a
23# prototype for select. Similarly for bzero.
24m4_define([AC_LANG_STDCALL_FUNC_LINK_TRY(C)],
25[AC_LANG_PROGRAM(
26[/* System header to define __stub macros and hopefully few prototypes,
27 which can conflict with char __stdcall $1 ( $2 ) below. */
28#include <assert.h>
29/* Override any gcc2 internal prototype to avoid an error. */
30#ifdef __cplusplus
31extern "C"
32#endif
33/* We use char because int might match the return type of a gcc2
34 builtin and then its argument prototype would still apply. */
35char __stdcall $1 ( $2 );
36char (*f) ( $2 );
37],
38[/* The GNU C library defines this for functions which it implements
39 to always fail with ENOSYS. Some functions are actually named
40 something starting with __ and the normal name is an alias. */
41#if defined (__stub_$1) || defined (__stub___$1)
42choke me
43#else
44f = $1;
45#endif
46])])
47
48# AC_LANG_STDCALL_FUNC_LINK_TRY(C++)(FUNCTION)
49# ------------------------------------
50m4_copy([AC_LANG_STDCALL_FUNC_LINK_TRY(C)], [AC_LANG_STDCALL_FUNC_LINK_TRY(C++)])
51
This page took 0.025223 seconds and 5 git commands to generate.