summaryrefslogtreecommitdiff
path: root/m4/efl_mono.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/efl_mono.m4')
-rw-r--r--m4/efl_mono.m495
1 files changed, 95 insertions, 0 deletions
diff --git a/m4/efl_mono.m4 b/m4/efl_mono.m4
new file mode 100644
index 0000000..807526e
--- /dev/null
+++ b/m4/efl_mono.m4
@@ -0,0 +1,95 @@
1# # ============================================================================
2# # http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
3# # ============================================================================
4# #
5# # SYNOPSIS
6# #
7# # AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
8# #
9# # DESCRIPTION
10# #
11# # Check for baseline language coverage in the compiler for the C++11
12# # standard; if necessary, add switches to CXXFLAGS to enable support.
13# #
14# # The first argument, if specified, indicates whether you insist on an
15# # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
16# # -std=c++11). If neither is specified, you get whatever works, with
17# # preference for an extended mode.
18# #
19# # The second argument, if specified 'mandatory' or if left unspecified,
20# # indicates that baseline C++11 support is required and that the macro
21# # should error out if no mode with that support is found. If specified
22# # 'optional', then configuration proceeds regardless, after defining
23# # HAVE_CXX11 if and only if a supporting mode is found.
24# #
25# # LICENSE
26# #
27# # Copyright (c) 2016 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
28# #
29# # Copying and distribution of this file, with or without modification, are
30# # permitted in any medium without royalty provided the copyright notice
31# # and this notice are preserved. This file is offered as-is, without any
32# # warranty.
33
34# AC_LANG(CSHARP)
35# -----------
36AC_LANG_DEFINE([CSHARP], [csharp], [MCS], [],
37[ac_ext=cs
38ac_compile='$MCS $MCSFLAGS conftest.$ac_ext >&AS_MESSAGE_LOG_FD'
39])
40
41AU_DEFUN([AC_LANG_CSHARP], [AC_LANG(CSHARP)])
42
43m4_define([AC_LANG_PROGRAM(CSHARP)],
44[$1
45class MyClass
46{
47 static void Main(string[] args)
48 {
49 $2
50 }
51}])
52
53AC_DEFUN([AC_LANG_COMPILER(CSHARP)],
54[AC_REQUIRE([AC_PROG_MCS])])
55
56AN_MAKEVAR([MCS], [AC_PROG_MCS])
57AN_PROGRAM([mcs], [AC_PROG_MCS])
58AC_DEFUN([AC_PROG_MCS],
59[AC_LANG_PUSH(CSHARP)dnl
60AC_ARG_VAR([MCS], [MCS (C#) compiler command])dnl
61AC_ARG_VAR([MCSFLAGS], [MCS (C#) compiler flags])dnl
62dnl _AC_ARG_VAR_LDFLAGS()dnl
63m4_ifval([$1],
64 [AC_CHECK_TOOLS(MCS, [$1])],
65[AC_CHECK_TOOL(MCS, mcs)
66if test -z "$MCS"; then
67 if test -n "$ac_tool_prefix"; then
68 AC_CHECK_PROG(MCS, [${ac_tool_prefix}mcs], [$ac_tool_prefix}mcs])
69 fi
70fi
71if test -z "$MCS"; then
72 AC_CHECK_PROG(MCS, mcs, mcs, , , false)
73fi
74if test -z "$MCS"; then
75 HAVE_MCS=0
76 AC_MSG_NOTICE([No C sharp compiler was found])
77else
78 HAVE_MCS=1
79 AC_DEFINE(HAVE_MCS,1,
80 [define if the MCS compiler is available])
81fi
82AC_SUBST(HAVE_MCS)
83])
84
85# Provide some information about the compiler.
86_AS_ECHO_LOG([checking for _AC_LANG compiler version])
87set X $ac_compile
88ac_compiler=$[2]
89_AC_DO_LIMIT([$ac_compiler --version >&AS_MESSAGE_LOG_FD])
90m4_expand_once([_AC_COMPILER_EXEEXT])[]dnl
91m4_expand_once([_AC_COMPILER_OBJEXT])[]dnl
92AC_LANG_POP(CSHARP)dnl
93])# AC_PROG_MCS
94
95