forked from enlightenment/efl
efl_mono: Add buildystem integration.
The C# bindings are built using the --enable-csharp-bindings (disabled by default).
This commit is contained in:
parent
41c073b2e6
commit
b97d3438eb
|
@ -37,6 +37,8 @@ tags
|
|||
*.eo.hh
|
||||
*.eo.impl.hh
|
||||
*.eo.js.cc
|
||||
*.eo.cs
|
||||
*.eot.cs
|
||||
*.eo.lua
|
||||
*.luac
|
||||
.dir-locals.el
|
||||
|
|
14
Makefile.am
14
Makefile.am
|
@ -188,6 +188,11 @@ pc/eo-js.pc \
|
|||
pc/eina-js.pc
|
||||
endif
|
||||
|
||||
if HAVE_CSHARP
|
||||
pkgconfig_DATA += \
|
||||
pc/efl-mono.pc
|
||||
endif
|
||||
|
||||
if BUILD_ENGINE_SOFTWARE_X11
|
||||
pkgconfig_DATA += pc/evas-software-x11.pc
|
||||
endif
|
||||
|
@ -434,6 +439,15 @@ EXTRA_DIST += $(systemdunits_DATA)
|
|||
|
||||
.PHONY: doc benchmark examples install-examples
|
||||
|
||||
# MSBuild C Sharp projects generation:
|
||||
|
||||
if HAVE_CSHARP
|
||||
|
||||
msbuildcsprojs:
|
||||
@$(MAKE) $(AM_MAKEFLAGS) -C src msbuildcsprojs
|
||||
|
||||
endif
|
||||
|
||||
# Documentation
|
||||
|
||||
doc:
|
||||
|
|
130
configure.ac
130
configure.ac
|
@ -163,6 +163,7 @@ EFL_WITH_BIN([eet], [eet-eet])
|
|||
EFL_WITH_BIN([edje], [edje-cc])
|
||||
EFL_WITH_BIN([eolian], [eolian-gen])
|
||||
EFL_WITH_BIN([eolian_cxx], [eolian-cxx])
|
||||
EFL_WITH_BIN([eolian_mono], [eolian-mono])
|
||||
EFL_WITH_BIN([eolian-js], [eolian-js])
|
||||
EFL_WITH_BIN_SUFFIX([elua], [elua], [_bin])
|
||||
EFL_WITH_BIN([eldbus], [eldbus_codegen])
|
||||
|
@ -329,6 +330,7 @@ AC_LANG(C)
|
|||
AC_PROG_CC_C99
|
||||
AM_PROG_CC_C_O
|
||||
AC_PROG_SED
|
||||
AC_PROG_MCS
|
||||
|
||||
AM_CONDITIONAL([BUILD_EFL_NATIVE], [test "x${cross_compiling}" = "xno"])
|
||||
|
||||
|
@ -1329,6 +1331,129 @@ EFL_EVAL_PKGS([EO_JS])
|
|||
EFL_LIB_END_OPTIONAL([Eo_Js])
|
||||
#### End of Eo JS
|
||||
|
||||
#### Efl C Sharp Bindings
|
||||
|
||||
want_csharp="no"
|
||||
AC_ARG_ENABLE([csharp-bindings],
|
||||
[AS_HELP_STRING([--enable-csharp-bindings],[enable C Sharp bindings. @<:@default=disabled@:>@])],
|
||||
[
|
||||
if test "x${enableval}" = "xyes" ; then
|
||||
want_csharp="yes"
|
||||
else
|
||||
want_csharp="no"
|
||||
fi
|
||||
],
|
||||
[want_csharp="no"])
|
||||
|
||||
if test "x${want_csharp}" = "xyes" -a "x${HAVE_MCS}" != "x1"; then
|
||||
want_csharp="no"
|
||||
AC_MSG_ERROR([C Sharp bindings requested but C Sharp compiler could not be found])
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL([HAVE_CSHARP], [test "x${want_csharp}" = "xyes"])
|
||||
AC_DEFINE_IF([HAVE_CSHARP], [test "x${want_csharp}" = "xyes"],
|
||||
[1], [Compiling bindings for C Sharp])
|
||||
AC_SUBST([want_csharp])
|
||||
|
||||
# Efl Mono
|
||||
EFL_LIB_START_OPTIONAL([Efl_Mono], [test "x${want_csharp}" = "xyes"])
|
||||
|
||||
EFL_PLATFORM_DEPEND([EFL_MONO], [evil])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eina])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eo])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eet])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Evas])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Con])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Audio])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Efl])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Evas])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Edje])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Emotion])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eldbus])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Emile])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ethumb])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ethumb_Client])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eio])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Elementary])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Efl_Custom_Exports_Mono])
|
||||
|
||||
EFL_EVAL_PKGS([EFL_MONO])
|
||||
|
||||
EFL_LIB_END_OPTIONAL([Efl_Mono])
|
||||
|
||||
# Efl Custom Exports Mono
|
||||
EFL_LIB_START_OPTIONAL([Efl_Custom_Exports_Mono], [test "x${want_csharp}" = "xyes"])
|
||||
|
||||
EFL_PLATFORM_DEPEND([EFL_CUSTOM_EXPORTS_MONO], [evil])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eina])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eo])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Efl])
|
||||
EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eldbus])
|
||||
|
||||
EFL_EVAL_PKGS([EFL_CUSTOM_EXPORTS_MONO])
|
||||
|
||||
EFL_LIB_END_OPTIONAL([Efl_Custom_Exports_Mono])
|
||||
|
||||
# Libtool versioning stuff.
|
||||
# On windows, the version of the library goes into the filename.
|
||||
# See https://autotools.io/libtool/windows.html#libtool.windows.version
|
||||
# Based on the current:revision:age string passed to libtool, the generated suffix
|
||||
# has the value of (current - age).
|
||||
# To get the current and age, we use the same calculation from m4/efl.m4 (lt_cur, lt_age)
|
||||
DLIB_PREFIX_MONO=""
|
||||
DLIB_SUFFIX_MONO=""
|
||||
if test "x${have_windows}" = "xyes"; then
|
||||
DLIB_PREFIX_MONO="lib"
|
||||
if test "x${EFL_VERSION_MAJOR}" = "x1"; then
|
||||
DLIB_SUFFIX_MONO="-${EFL_VERSION_MAJOR}"
|
||||
else
|
||||
DLIB_SUFFIX_MONO="-${EFL_VERSION_MAJOR}00"
|
||||
fi
|
||||
fi
|
||||
AC_SUBST([DLIB_PREFIX_MONO])
|
||||
AC_SUBST([DLIB_SUFFIX_MONO])
|
||||
|
||||
EFL_DL_MONO="${DLIB_PREFIX_MONO}efl${DLIB_SUFFIX_MONO}";
|
||||
ECORE_DL_MONO="${DLIB_PREFIX_MONO}ecore${DLIB_SUFFIX_MONO}";
|
||||
EINA_DL_MONO="${DLIB_PREFIX_MONO}eina${DLIB_SUFFIX_MONO}"
|
||||
EO_DL_MONO="${DLIB_PREFIX_MONO}eo${DLIB_SUFFIX_MONO}"
|
||||
EVAS_DL_MONO="${DLIB_PREFIX_MONO}evas${DLIB_SUFFIX_MONO}"
|
||||
if test "x${have_windows}" = "xyes"; then
|
||||
EVIL_DL_MONO="${DLIB_PREFIX_MONO}evil${DLIB_SUFFIX_MONO}"
|
||||
else
|
||||
EVIL_DL_MONO="dl"
|
||||
fi
|
||||
ECORE_EVAS_DL_MONO="${DLIB_PREFIX_MONO}ecore_evas${DLIB_SUFFIX_MONO}"
|
||||
EDJE_DL_MONO="${DLIB_PREFIX_MONO}edje${DLIB_SUFFIX_MONO}"
|
||||
ELEMENTARY_DL_MONO="${DLIB_PREFIX_MONO}elementary${DLIB_SUFFIX_MONO}"
|
||||
ELDBUS_DL_MONO="${DLIB_PREFIX_MONO}eldbus${DLIB_SUFFIX_MONO}"
|
||||
CUSTOM_EXPORTS_MONO_DL_MONO="${DLIB_PREFIX_MONO}eflcustomexportsmono${DLIB_SUFFIX_MONO}"
|
||||
|
||||
AC_SUBST([EFL_DL_MONO])
|
||||
AC_SUBST([ECORE_DL_MONO])
|
||||
AC_SUBST([EINA_DL_MONO])
|
||||
AC_SUBST([EO_DL_MONO])
|
||||
AC_SUBST([EVAS_DL_MONO])
|
||||
AC_SUBST([EVIL_DL_MONO])
|
||||
AC_SUBST([ECORE_EVAS_DL_MONO])
|
||||
AC_SUBST([EDJE_DL_MONO])
|
||||
AC_SUBST([ELEMENTARY_DL_MONO])
|
||||
AC_SUBST([ELDBUS_DL_MONO])
|
||||
AC_SUBST([CUSTOM_EXPORTS_MONO_DL_MONO])
|
||||
|
||||
# Eos file/library mapping
|
||||
|
||||
# Unescaped sed pattern: sed -n 's/src\/lib\/\([a-z0-9_]*\)\/[a-z\/]*\/\([a-z0-9\._]*\)/\2,\1/pg'
|
||||
_configure_path=`realpath $0`
|
||||
efl_mono_top_srcdir=`dirname ${_configure_path}`
|
||||
EFL_MONO_LIBRARY_MAP=`find ${efl_mono_top_srcdir}/src/lib/ -iname "*\.eo" | sed -n 's/.*\/src\/lib\/\(@<:@a-z0-9_@:>@*\)@<:@\/a-z@:>@*\/\(@<:@a-z0-9\._@:>@*\)/\2,\1/pg'`
|
||||
|
||||
AC_SUBST([EFL_MONO_LIBRARY_MAP])
|
||||
AM_SUBST_NOTMAKE([EFL_MONO_LIBRARY_MAP])
|
||||
|
||||
#### End of Efl C Sharp Bindings
|
||||
|
||||
#### Eo
|
||||
|
||||
EFL_LIB_START([Eo])
|
||||
|
@ -5560,6 +5685,8 @@ doc/Doxyfile
|
|||
doc/previews/Makefile
|
||||
doc/widgets/Makefile
|
||||
src/Makefile
|
||||
src/bindings/mono/efl_mono/efl_libs.cs
|
||||
src/bindings/mono/efl_mono/efl_libs.csv
|
||||
src/benchmarks/eina/Makefile
|
||||
src/benchmarks/eo/Makefile
|
||||
src/benchmarks/evas/Makefile
|
||||
|
@ -5578,6 +5705,7 @@ src/examples/emile/Makefile
|
|||
src/examples/ethumb_client/Makefile
|
||||
src/examples/elua/Makefile
|
||||
src/examples/eolian_cxx/Makefile
|
||||
src/examples/efl_mono/Makefile
|
||||
src/examples/elocation/Makefile
|
||||
src/examples/elementary/Makefile
|
||||
src/lib/eina/eina_config.h
|
||||
|
@ -5603,6 +5731,7 @@ pc/eolian-js.pc
|
|||
pc/eo-js.pc
|
||||
pc/efl.pc
|
||||
pc/efl-cxx.pc
|
||||
pc/efl-mono.pc
|
||||
pc/efl-wl.pc
|
||||
pc/efl-core.pc
|
||||
pc/efl-net.pc
|
||||
|
@ -5789,6 +5918,7 @@ echo " Cryptography..: ${build_crypto}"
|
|||
echo " X11...........: ${with_x11}"
|
||||
echo " OpenGL........: ${with_opengl} ${opengl_egl}"
|
||||
echo " C++11.........: ${have_cxx11}"
|
||||
echo " C#............: ${want_csharp}"
|
||||
echo " JavaScript....: ${want_js}"
|
||||
echo " JavaScript flg: $EINA_JS_LIBS"
|
||||
echo "Eina............: yes (${features_eina} unwind=$have_unwind)"
|
||||
|
|
|
@ -0,0 +1,95 @@
|
|||
# # ============================================================================
|
||||
# # http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
|
||||
# # ============================================================================
|
||||
# #
|
||||
# # SYNOPSIS
|
||||
# #
|
||||
# # AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
|
||||
# #
|
||||
# # DESCRIPTION
|
||||
# #
|
||||
# # Check for baseline language coverage in the compiler for the C++11
|
||||
# # standard; if necessary, add switches to CXXFLAGS to enable support.
|
||||
# #
|
||||
# # The first argument, if specified, indicates whether you insist on an
|
||||
# # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
|
||||
# # -std=c++11). If neither is specified, you get whatever works, with
|
||||
# # preference for an extended mode.
|
||||
# #
|
||||
# # The second argument, if specified 'mandatory' or if left unspecified,
|
||||
# # indicates that baseline C++11 support is required and that the macro
|
||||
# # should error out if no mode with that support is found. If specified
|
||||
# # 'optional', then configuration proceeds regardless, after defining
|
||||
# # HAVE_CXX11 if and only if a supporting mode is found.
|
||||
# #
|
||||
# # LICENSE
|
||||
# #
|
||||
# # Copyright (c) 2016 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
|
||||
# #
|
||||
# # Copying and distribution of this file, with or without modification, are
|
||||
# # permitted in any medium without royalty provided the copyright notice
|
||||
# # and this notice are preserved. This file is offered as-is, without any
|
||||
# # warranty.
|
||||
|
||||
# AC_LANG(CSHARP)
|
||||
# -----------
|
||||
AC_LANG_DEFINE([CSHARP], [csharp], [MCS], [],
|
||||
[ac_ext=cs
|
||||
ac_compile='$MCS $MCSFLAGS conftest.$ac_ext >&AS_MESSAGE_LOG_FD'
|
||||
])
|
||||
|
||||
AU_DEFUN([AC_LANG_CSHARP], [AC_LANG(CSHARP)])
|
||||
|
||||
m4_define([AC_LANG_PROGRAM(CSHARP)],
|
||||
[$1
|
||||
class MyClass
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
$2
|
||||
}
|
||||
}])
|
||||
|
||||
AC_DEFUN([AC_LANG_COMPILER(CSHARP)],
|
||||
[AC_REQUIRE([AC_PROG_MCS])])
|
||||
|
||||
AN_MAKEVAR([MCS], [AC_PROG_MCS])
|
||||
AN_PROGRAM([mcs], [AC_PROG_MCS])
|
||||
AC_DEFUN([AC_PROG_MCS],
|
||||
[AC_LANG_PUSH(CSHARP)dnl
|
||||
AC_ARG_VAR([MCS], [MCS (C#) compiler command])dnl
|
||||
AC_ARG_VAR([MCSFLAGS], [MCS (C#) compiler flags])dnl
|
||||
dnl _AC_ARG_VAR_LDFLAGS()dnl
|
||||
m4_ifval([$1],
|
||||
[AC_CHECK_TOOLS(MCS, [$1])],
|
||||
[AC_CHECK_TOOL(MCS, mcs)
|
||||
if test -z "$MCS"; then
|
||||
if test -n "$ac_tool_prefix"; then
|
||||
AC_CHECK_PROG(MCS, [${ac_tool_prefix}mcs], [$ac_tool_prefix}mcs])
|
||||
fi
|
||||
fi
|
||||
if test -z "$MCS"; then
|
||||
AC_CHECK_PROG(MCS, mcs, mcs, , , false)
|
||||
fi
|
||||
if test -z "$MCS"; then
|
||||
HAVE_MCS=0
|
||||
AC_MSG_NOTICE([No C sharp compiler was found])
|
||||
else
|
||||
HAVE_MCS=1
|
||||
AC_DEFINE(HAVE_MCS,1,
|
||||
[define if the MCS compiler is available])
|
||||
fi
|
||||
AC_SUBST(HAVE_MCS)
|
||||
])
|
||||
|
||||
# Provide some information about the compiler.
|
||||
_AS_ECHO_LOG([checking for _AC_LANG compiler version])
|
||||
set X $ac_compile
|
||||
ac_compiler=$[2]
|
||||
_AC_DO_LIMIT([$ac_compiler --version >&AS_MESSAGE_LOG_FD])
|
||||
m4_expand_once([_AC_COMPILER_EXEEXT])[]dnl
|
||||
m4_expand_once([_AC_COMPILER_OBJEXT])[]dnl
|
||||
AC_LANG_POP(CSHARP)dnl
|
||||
])# AC_PROG_MCS
|
||||
|
||||
|
|
@ -70,6 +70,7 @@
|
|||
/elua.pc
|
||||
/emile.pc
|
||||
/efl-js.pc
|
||||
/efl-mono.pc
|
||||
/elementary-cxx.pc
|
||||
/elput.pc
|
||||
/ecore-drm2.pc
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
datarootdir=@datarootdir@
|
||||
datadir=@datadir@
|
||||
|
||||
#variable to be used with meson
|
||||
mono_libs=-r:@prefix@/bin/libefl_mono.dll
|
||||
|
||||
Name: EFL-Mono
|
||||
Description: EFL's C-Sharp bindings
|
||||
Version: @PACKAGE_VERSION@
|
||||
Libs: -r:${prefix}/bin/libefl_mono.dll
|
||||
|
|
@ -77,6 +77,7 @@ include Makefile_efl_wl.am
|
|||
|
||||
include Makefile_Cxx.am
|
||||
include Makefile_Eolian_Cxx.am
|
||||
include Makefile_Efl_Mono.am
|
||||
|
||||
include Makefile_Elua.am
|
||||
|
||||
|
@ -140,6 +141,10 @@ if HAVE_CXX11
|
|||
EXAMPLES_SUBDIRS += $(EXAMPLES_CXX)
|
||||
endif
|
||||
|
||||
if HAVE_CSHARP
|
||||
EXAMPLES_SUBDIRS += examples/efl_mono
|
||||
endif
|
||||
|
||||
if ALWAYS_BUILD_EXAMPLES
|
||||
SUBDIRS += . $(EXAMPLES_SUBDIRS)
|
||||
endif
|
||||
|
|
|
@ -0,0 +1,365 @@
|
|||
if HAVE_CSHARP
|
||||
|
||||
bin_PROGRAMS += bin/eolian_mono/eolian_mono
|
||||
|
||||
bin_eolian_mono_eolian_mono_SOURCES = \
|
||||
bin/eolian_mono/eolian_mono.cc
|
||||
bin_eolian_mono_eolian_mono_CXXFLAGS = -I$(top_builddir)/src/lib/efl \
|
||||
-I$(top_srcdir)/src/lib/eolian_cxx/ \
|
||||
-I$(top_srcdir)/src/bin/eolian_mono/ \
|
||||
@CHECK_CFLAGS@ @EINA_CFLAGS@ @EINA_CXX_CFLAGS@ @EO_CXX_CFLAGS@ @ECORE_CXX_CFLAGS@ @EO_CFLAGS@ \
|
||||
-I$(top_srcdir)/src/bindings/cxx/eina_cxx \
|
||||
@EOLIAN_CXX_CFLAGS@ @EOLIAN_CFLAGS@
|
||||
|
||||
bin_eolian_mono_eolian_mono_LDADD = @CHECK_LIBS@ @USE_EOLIAN_LIBS@
|
||||
|
||||
bin_eolian_mono_eolian_mono_DEPENDENCIES = @USE_EOLIAN_INTERNAL_LIBS@
|
||||
|
||||
# Helper for other modules using Eolian_Mono, include only after Makefile_Eolian_Helper.am
|
||||
include Makefile_Eolian_Mono_Helper.am
|
||||
|
||||
### Efl C Sharp Binding
|
||||
|
||||
evas_eolian_blacklisted_files = \
|
||||
lib/evas/canvas/efl_canvas_text.eo.cs \
|
||||
lib/evas/canvas/efl_canvas_scene3d.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_camera.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_light.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_material.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_mesh.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_node.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_object.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_primitive.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_scene.eo.cs \
|
||||
lib/evas/canvas/evas_canvas3d_texture.eo.cs \
|
||||
lib/evas/canvas/efl_canvas_vg.eo.cs \
|
||||
lib/evas/canvas/efl_vg.eo.cs \
|
||||
lib/evas/canvas/efl_vg_container.eo.cs \
|
||||
lib/evas/canvas/efl_vg_gradient.eo.cs \
|
||||
lib/evas/canvas/efl_vg_gradient_radial.eo.cs \
|
||||
lib/evas/canvas/efl_vg_gradient_linear.eo.cs \
|
||||
lib/evas/canvas/efl_vg_root_node.eo.cs \
|
||||
lib/evas/canvas/efl_vg_shape.eo.cs
|
||||
|
||||
efl_eolian_blacklisted_files = \
|
||||
lib/efl/interfaces/efl_io_buffer.eo.cs \
|
||||
lib/efl/interfaces/efl_io_closer.eo.cs \
|
||||
lib/efl/interfaces/efl_io_positioner.eo.cs \
|
||||
lib/efl/interfaces/efl_io_queue.eo.cs \
|
||||
lib/efl/interfaces/efl_io_reader.eo.cs \
|
||||
lib/efl/interfaces/efl_io_sizer.eo.cs \
|
||||
lib/efl/interfaces/efl_io_writer.eo.cs \
|
||||
lib/efl/interfaces/efl_text_properties.eo.cs \
|
||||
lib/efl/interfaces/efl_gfx_buffer.eo.cs \
|
||||
lib/efl/interfaces/efl_gfx_shape.eo.cs \
|
||||
lib/efl/interfaces/efl_gfx_gradient.eo.cs \
|
||||
lib/efl/interfaces/efl_gfx_gradient_linear.eo.cs \
|
||||
lib/efl/interfaces/efl_gfx_gradient_radial.eo.cs
|
||||
|
||||
ecore_eolian_blacklisted_files = \
|
||||
lib/ecore/efl_io_closer_fd.eo.cs \
|
||||
lib/ecore/efl_io_buffered_stream.eo.cs \
|
||||
lib/ecore/efl_io_positioner_fd.eo.cs \
|
||||
lib/ecore/efl_io_reader_fd.eo.cs \
|
||||
lib/ecore/efl_io_writer_fd.eo.cs \
|
||||
lib/ecore/efl_io_copier_fd.eo.cs \
|
||||
lib/ecore/efl_io_sizer_fd.eo.cs \
|
||||
lib/ecore/efl_io_stdin.eo.cs \
|
||||
lib/ecore/efl_io_stdout.eo.cs \
|
||||
lib/ecore/efl_io_stderr.eo.cs \
|
||||
lib/ecore/efl_io_file.eo.cs \
|
||||
lib/ecore/efl_io_copier.eo.cs
|
||||
|
||||
eo_eolian_blacklisted_files = \
|
||||
lib/eo/efl_object_override.eo.cs
|
||||
|
||||
elementary_eolian_blacklisted_files = \
|
||||
lib/elementary/elm_web.eo.cs \
|
||||
lib/elementary/elm_map.eo.cs \
|
||||
lib/elementary/elm_combobox.eo.cs \
|
||||
lib/elementary/elm_list.eo.cs \
|
||||
lib/elementary/elm_genlist.eo.cs \
|
||||
lib/elementary/elm_view_list.eo.cs \
|
||||
lib/elementary/elm_genlist_item.eo.cs \
|
||||
lib/elementary/elm_gengrid.eo.cs \
|
||||
lib/elementary/elm_glview.eo.cs
|
||||
|
||||
efl_eolian_mono_files = \
|
||||
$(filter-out $(eo_eolian_blacklisted_files),$(eo_eolian_files:%.eo=%.eo.cs)) \
|
||||
$(filter-out $(ecore_eolian_blacklisted_files),$(ecore_eolian_files_public:%.eo=%.eo.cs)) \
|
||||
$(ecore_eolian_type_files:%.eot=%.eot.cs) \
|
||||
$(filter-out $(efl_eolian_blacklisted_files),$(efl_eolian_files:%.eo=%.eo.cs)) \
|
||||
$(filter-out $(edje_eolian_blacklisted_files),$(edje_eolian_files:%.eo=%.eo.cs)) \
|
||||
$(filter-out $(elementary_eolian_blacklisted_files),$(elm_public_eolian_files:%.eo=%.eo.cs)) \
|
||||
$(efl_eolian_type_files:%.eot=%.eot.cs) \
|
||||
$(edje_eolian_type_files:%.eot=%.eot.cs) \
|
||||
$(elm_eolian_type_files:%.eot=%.eot.cs) \
|
||||
$(filter-out $(evas_eolian_blacklisted_files),$(evas_canvas_eolian_pub_files:%.eo=%.eo.cs)) \
|
||||
lib/evas/canvas/evas_box.eo.cs \
|
||||
lib/evas/canvas/evas_image.eo.cs \
|
||||
lib/evas/canvas/efl_canvas_image.eo.cs \
|
||||
lib/evas/canvas/evas_table.eo.cs \
|
||||
lib/evas/canvas/evas_text.eo.cs \
|
||||
lib/efl/interfaces/efl_text_properties.eo.cs \
|
||||
$(evas_canvas_eolian_type_files:%.eot=%.eot.cs) \
|
||||
lib/eo/eina_types.eot.cs
|
||||
|
||||
installed_eflmonomainheadersdir = $(includedir)/efl-mono-@VMAJ@/
|
||||
nodist_installed_eflmonomainheaders_DATA = $(efl_eolian_files:%.eo=%.eo.cs)
|
||||
|
||||
CLEANFILES += $(efl_eolian_mono_files)
|
||||
|
||||
if HAVE_WIN32
|
||||
|
||||
MCS_FLAGS := $(MCS_FLAGS)
|
||||
MCS_FLAGS += -define:WIN32
|
||||
|
||||
endif
|
||||
|
||||
# Efl Custom Exports Mono auxiliary library
|
||||
efl_custom_exports_mono_files = \
|
||||
lib/efl_mono/efl_custom_exports_mono.c
|
||||
|
||||
lib_LTLIBRARIES += \
|
||||
lib/efl_mono/libeflcustomexportsmono.la
|
||||
|
||||
lib_efl_mono_libeflcustomexportsmono_la_SOURCES = \
|
||||
$(efl_custom_exports_mono_files)
|
||||
|
||||
lib_efl_mono_libeflcustomexportsmono_la_CPPFLAGS = \
|
||||
-DEFL_BETA_API_SUPPORT \
|
||||
-I$(top_builddir)/src/lib/efl \
|
||||
@EFL_CUSTOM_EXPORTS_MONO_CFLAGS@
|
||||
lib_efl_mono_libeflcustomexportsmono_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
|
||||
lib_efl_mono_libeflcustomexportsmono_la_LIBADD = @EFL_CUSTOM_EXPORTS_MONO_LIBS@
|
||||
lib_efl_mono_libeflcustomexportsmono_la_DEPENDENCIES = @EFL_CUSTOM_EXPORTS_MONO_INTERNAL_LIBS@
|
||||
|
||||
#Efl Mono - C Sharp binding library
|
||||
bin_PROGRAMS += lib/efl_mono/libefl_mono.dll
|
||||
|
||||
efl_eo_mono_files = \
|
||||
bindings/mono/eo_mono/object.cs \
|
||||
bindings/mono/eo_mono/iwrapper.cs \
|
||||
bindings/mono/eo_mono/workaround.cs
|
||||
|
||||
efl_eina_mono_files = \
|
||||
bindings/mono/eina_mono/eina_config.cs \
|
||||
bindings/mono/eina_mono/eina_array.cs \
|
||||
bindings/mono/eina_mono/eina_hash.cs \
|
||||
bindings/mono/eina_mono/eina_list.cs \
|
||||
bindings/mono/eina_mono/eina_inarray.cs \
|
||||
bindings/mono/eina_mono/eina_inlist.cs \
|
||||
bindings/mono/eina_mono/eina_iterator.cs \
|
||||
bindings/mono/eina_mono/eina_container_common.cs \
|
||||
bindings/mono/eina_mono/eina_common.cs \
|
||||
bindings/mono/eina_mono/eina_log.cs \
|
||||
bindings/mono/eina_mono/eina_binbuf.cs \
|
||||
bindings/mono/eina_mono/eina_slice.cs \
|
||||
bindings/mono/eina_mono/eina_stringshare.cs \
|
||||
bindings/mono/eina_mono/eina_error.cs \
|
||||
bindings/mono/eina_mono/eina_value.cs
|
||||
|
||||
efl_eldbus_mono_files = \
|
||||
bindings/mono/eldbus_mono/eldbus_common.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_config.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_connection.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_message.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_object.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_pending.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_proxy.cs \
|
||||
bindings/mono/eldbus_mono/eldbus_service.cs
|
||||
|
||||
efl_ecore_evas_mono_files = \
|
||||
bindings/mono/ecore_evas_mono/ecore_evas.cs
|
||||
|
||||
lib_efl_mono_libefl_mono_dll_SOURCES = \
|
||||
$(builddir)/bindings/mono/efl_mono/efl_all.cs \
|
||||
bindings/mono/efl_mono/efl_libs.cs \
|
||||
$(efl_eo_mono_files) \
|
||||
$(efl_eina_mono_files) \
|
||||
$(efl_eldbus_mono_files) \
|
||||
$(efl_ecore_evas_mono_files)
|
||||
|
||||
lib/efl_mono/libefl_mono.dll$(EXEEXT): $(lib_efl_mono_libefl_mono_dll_SOURCES) lib/efl_mono/$(am__dirstamp) $(efl_eolian_mono_files)
|
||||
@rm -f lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -out:$@ -t:library $(filter %.cs, $(^))
|
||||
|
||||
### MSBuild
|
||||
|
||||
bin_PROGRAMS += bin/efl_mono_msbuild_gen/efl_mono_msbuild_gen
|
||||
|
||||
bin_efl_mono_msbuild_gen_efl_mono_msbuild_gen_SOURCES = \
|
||||
bin/efl_mono_msbuild_gen/main.cc
|
||||
|
||||
bin_efl_mono_msbuild_gen_efl_mono_msbuild_gen_CXXFLAGS = \
|
||||
-I$(top_srcdir)/src/lib/efl \
|
||||
-I$(top_builddir)/src/lib/efl \
|
||||
-I$(top_srcdir)/src/lib/eolian_cxx/ \
|
||||
-I$(top_srcdir)/src/bindings/cxx/eina_cxx \
|
||||
@EINA_CFLAGS@ @EINA_CXX_CFLAGS@ @EO_CXX_CFLAGS@ \
|
||||
@ECORE_CXX_CFLAGS@ @EO_CFLAGS@ @EOLIAN_CXX_CFLAGS@ @EOLIAN_CFLAGS@
|
||||
|
||||
bin_efl_mono_msbuild_gen_efl_mono_msbuild_gen_LDADD = @CHECK_LIBS@ @USE_EOLIAN_LIBS@
|
||||
|
||||
bin_efl_mono_msbuild_gen_efl_mono_msbuild_gen_DEPENDENCIES = @USE_EOLIAN_INTERNAL_LIBS@
|
||||
|
||||
# Helper for other modules using Efl_Mono_MSBuild_Gen
|
||||
include Makefile_Efl_Mono_MSBuild_Gen_Helper.am
|
||||
|
||||
# Efl Mono DLL for MSBuild
|
||||
../libefl_mono.csproj: $(lib_efl_mono_libefl_mono_dll_SOURCES) lib/efl_mono/$(am__dirstamp) $(efl_eolian_mono_files) $(_EFL_MONO_MSBUILD_GEN_DEP)
|
||||
@rm -f $@
|
||||
$(EFL_MONO_MSBUILD_GEN) $(MSBUILD_GEN_FLAGS) -o $@ -a libefl_mono.dll -t library $(patsubst %.cs,src/%.cs,$(filter %.cs, $(^)))
|
||||
|
||||
CSPROJS_SUBDIRS = \
|
||||
examples/eina \
|
||||
examples/efl_mono
|
||||
|
||||
msbuildcsprojs: ../libefl_mono.csproj
|
||||
@for d in $(CSPROJS_SUBDIRS); do \
|
||||
echo "Making MSBuild C Sharp projects in $$d"; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) -C $$d msbuildcsprojs || exit 1; \
|
||||
done
|
||||
|
||||
### Some hard-coded runtime dependencies for tests and examples
|
||||
TEST_PATHS = $(abs_top_builddir)/src/lib/efl_mono:$(abs_top_builddir)/src/lib/efl_mono/.libs:$(abs_top_builddir)/src/lib/eina/.libs:$(abs_top_builddir)/src/lib/ecore/.libs:$(abs_top_builddir)/src/lib/ecore_evas/.libs:$(abs_top_builddir)/src/lib/eo/.libs:$(abs_top_builddir)/src/lib/evas/.libs:$(abs_top_builddir)/src/lib/emile/.libs:$(abs_top_builddir)/src/lib/eet/.libs:$(abs_top_builddir)/src/lib/efl/.libs:$(abs_top_builddir)/src/ecore-file/.libs:$(abs_top_builddir)/src/lib/efl-input/.libs:$(abs_top_builddir)/src/lib/edje/.libs:$(abs_top_builddir)/src/lib/ethumb/.libs:$(abs_top_builddir)/src/lib/ethumb-client/.libs:$(abs_top_builddir)/src/lib/emotion/.libs:$(abs_top_builddir)/src/lib/ecore-imf/.libs:$(abs_top_builddir)/src/lib/ecore-con/.libs:$(abs_top_builddir)/src/lib/eldbus/.libs:$(abs_top_builddir)/src/lib/efreet/.libs:$(abs_top_builddir)/src/lib/efreet-mime/.libs:$(abs_top_builddir)/src/lib/efreet-trash/.libs:$(abs_top_builddir)/src/lib/eio/.libs:$(abs_top_builddir)/src/lib/elocation/.libs:$(abs_top_builddir)/src/lib/elementary/.libs
|
||||
|
||||
WIN_ADD_TEST_PATHS = $(abs_top_builddir)/src/lib/evil/.libs:$(abs_top_builddir)/src/lib/ecore_win32/.libs:$(abs_top_builddir)/src/lib/ector/.libs:$(abs_top_builddir)/src/lib/ecore_con/.libs:$(abs_top_builddir)/src/lib/ecore_imf/.libs:$(abs_top_builddir)/src/lib/ecore_file/.libs:$(abs_top_builddir)/src/lib/ecore_input/.libs:$(abs_top_builddir)/src/ethumb_client/.libs:$(abs_top_builddir)/src/tests/efl_mono/.libs
|
||||
|
||||
|
||||
### Rules for generating the .cs files
|
||||
|
||||
if HAVE_WIN32
|
||||
ALL_EO_REFS = -r $(top_builddir)/src/bindings/mono/efl_mono/efl_libs.csv
|
||||
else
|
||||
ALL_EO_REFS=
|
||||
endif
|
||||
|
||||
lib/eo/%.eo.cs: lib/eo/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport eo -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/ecore/%.eo.cs: lib/ecore/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport ecore -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/evas/%.eo.cs: lib/evas/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport evas -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/efl/%.eo.cs: lib/efl/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport efl -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/edje/%.eo.cs: lib/edje/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport edje -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/elementary/%.eo.cs: lib/elementary/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport elementary -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/ecore/%.eot.cs: lib/ecore/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport ecore -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/eo/%.eot.cs: lib/eo/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport eo -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/evas/%.eot.cs: lib/evas/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport evas -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/efl/%.eot.cs: lib/efl/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport efl -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/edje/%.eot.cs: lib/edje/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport edje -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
lib/elementary/%.eot.cs: lib/elementary/%.eot $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport elementary -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
if EFL_ENABLE_TESTS
|
||||
|
||||
# Intermediate C test native library
|
||||
check_LTLIBRARIES += tests/efl_mono/libefl_mono_native_test.la
|
||||
|
||||
tests_efl_mono_libefl_mono_native_test_la_SOURCES = tests/efl_mono/libefl_mono_native_test.c
|
||||
tests_efl_mono_libefl_mono_native_test_la_CPPFLAGS = \
|
||||
-I$(builddir)/tests/efl_mono \
|
||||
@CHECK_CFLAGS@ @EINA_CFLAGS@ @EO_CFLAGS@ @ECORE_CFLAGS@ @ELDBUS_CFLAGS@
|
||||
tests_efl_mono_libefl_mono_native_test_la_LIBADD = \
|
||||
@CHECK_LIBS@ @USE_EINA_LIBS@ @USE_EO_LIBS@ @USE_ECORE_LIBS@ @USE_ELDBUS_LIBS@
|
||||
tests_efl_mono_libefl_mono_native_test_la_LDFLAGS = -rpath $(abs_top_builddir)/tests/efl_mono @EFL_LTLIBRARY_FLAGS@
|
||||
tests_efl_mono_libefl_mono_native_test_la_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@ @USE_EO_INTERNAL_LIBS@ @USE_ECORE_INTERNAL_LIBS@ @USE_ELDBUS_INTERNAL_LIBS@
|
||||
tests_efl_mono_libefl_mono_native_test_la_LIBTOOLFLAGS = --tag=disable-static
|
||||
|
||||
tests/efl_mono/libefl_mono_native_test.c: tests/efl_mono/test_testing.eo.h tests/efl_mono/test_testing.eo.c tests/efl_mono/test_numberwrapper.eo.h tests/efl_mono/test_numberwrapper.eo.c
|
||||
|
||||
# Intermediate C Sharp test DLL
|
||||
efl_mono_test_eolian_mono_files = tests/efl_mono/test_testing.eo.cs \
|
||||
tests/efl_mono/test_numberwrapper.eo.cs
|
||||
|
||||
tests/efl_mono/libefl_mono_test.dll$(EXEEXT): $(efl_mono_test_eolian_mono_files) tests/efl_mono/$(am__dirstamp) lib/efl_mono/libefl_mono.dll$(EXEEXT) tests/efl_mono/libefl_mono_native_test.la
|
||||
@rm -f tests/efl_mono/libefl_mono_test.dll$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_builddir)/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ -t:library $(filter %.cs, $(^))
|
||||
|
||||
# C Sharp test executable
|
||||
AM_TESTS_ENVIRONMENT += MONO='mono'; export MONO;
|
||||
AM_TESTS_ENVIRONMENT += MONO_BUILDPATH='$(abs_top_builddir)'; export MONO_BUILDPATH;
|
||||
AM_TESTS_ENVIRONMENT += MONO_PATH='$(TEST_PATHS)'; export MONO_PATH;
|
||||
if HAVE_WIN32
|
||||
AM_TESTS_ENVIRONMENT += PATH='$(PATH):$(TEST_PATHS):$(WIN_ADD_TEST_PATHS)'; export PATH;
|
||||
else
|
||||
AM_TESTS_ENVIRONMENT += LD_LIBRARY_PATH='$(LD_LIBRARY_PATH):$(TEST_PATHS)'; export LD_LIBRARY_PATH;
|
||||
endif
|
||||
AM_TESTS_ENVIRONMENT += EXEEXT='$(EXEEXT)'; export EXEEXT;
|
||||
|
||||
check_PROGRAMS += tests/efl_mono/efl_mono.exe
|
||||
TESTS += tests/efl_mono/mono_test_driver.sh
|
||||
|
||||
tests_efl_mono_efl_mono_exe_SOURCES = \
|
||||
tests/efl_mono/Main.cs \
|
||||
tests/efl_mono/Eina.cs \
|
||||
tests/efl_mono/Eldbus.cs \
|
||||
tests/efl_mono/Eo.cs \
|
||||
tests/efl_mono/Errors.cs \
|
||||
tests/efl_mono/Evas.cs \
|
||||
tests/efl_mono/Events.cs \
|
||||
tests/efl_mono/FunctionPointers.cs \
|
||||
tests/efl_mono/Strings.cs \
|
||||
tests/efl_mono/TestUtils.cs \
|
||||
tests/efl_mono/Value.cs \
|
||||
tests/efl_mono/ValueEolian.cs
|
||||
|
||||
tests/efl_mono/efl_mono.exe$(EXEEXT): $(tests_efl_mono_efl_mono_exe_SOURCES) tests/efl_mono/$(am__dirstamp) lib/efl_mono/libefl_mono.dll$(EXEEXT) tests/efl_mono/libefl_mono_test.dll$(EXEEXT)
|
||||
@rm -f tests/efl_mono/efl_mono_exe$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -r:$(abs_top_builddir)/src/tests/efl_mono/libefl_mono_test.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
# Rule for generating the .cs files
|
||||
tests/efl_mono/%.eo.cs: tests/efl_mono/%.eo $(_EOLIAN_MONO_DEP)
|
||||
$(AM_V_EOLMONO) \
|
||||
$(MKDIR_P) $(dir $@); \
|
||||
$(EOLIAN_MONO) $(EOLIAN_FLAGS) $(EOLIAN_MONO_FLAGS) --dllimport "@DLIB_PREFIX_MONO@efl_mono_native_test@DLIB_SUFFIX_MONO@" -o $@ $(ALL_EO_REFS) $<
|
||||
|
||||
endif
|
||||
endif
|
|
@ -0,0 +1,17 @@
|
|||
|
||||
EFL_MONO_MSBUILD_GEN = EFL_RUN_IN_TREE=1 $(top_builddir)/src/bin/efl_mono_msbuild_gen/efl_mono_msbuild_gen${EXEEXT}
|
||||
_EFL_MONO_MSBUILD_GEN_DEP = bin/efl_mono_msbuild_gen/efl_mono_msbuild_gen${EXEEXT}
|
||||
|
||||
if HAVE_WIN32
|
||||
|
||||
MSBUILD_GEN_FLAGS := $(MSBUILD_GEN_FLAGS)
|
||||
MSBUILD_GEN_FLAGS += -d WIN32
|
||||
|
||||
endif
|
||||
|
||||
if HAVE_X86_64
|
||||
|
||||
MSBUILD_GEN_FLAGS := $(MSBUILD_GEN_FLAGS)
|
||||
MSBUILD_GEN_FLAGS += -p x64
|
||||
|
||||
endif
|
|
@ -0,0 +1,17 @@
|
|||
### Helper for other modules using Eolian_Mono, include only after Makefile_Eolian_Helper.am
|
||||
|
||||
if HAVE_EOLIAN_MONO
|
||||
EOLIAN_MONO = @eolian_mono@
|
||||
_EOLIAN_MONO_DEP = @eolian_mono@
|
||||
else
|
||||
EOLIAN_MONO = EFL_RUN_IN_TREE=1 $(top_builddir)/src/bin/eolian_mono/eolian_mono${EXEEXT}
|
||||
_EOLIAN_MONO_DEP = bin/eolian_mono/eolian_mono${EXEEXT}
|
||||
endif
|
||||
|
||||
EOLIAN_MONO_FLAGS = -M @VMAJ@ -m @VMIN@
|
||||
|
||||
AM_V_EOLMONO = $(am__v_EOLMONO_@AM_V@)
|
||||
am__v_EOLMONO_ = $(am__v_EOLMONO_@AM_DEFAULT_V@)
|
||||
am__v_EOLMONO_0 = @echo " EOLMONO " $@;
|
||||
|
||||
SUFFIXES += .eo.cs
|
|
@ -135,6 +135,62 @@ $(top_builddir)/src/lib/ecore_evas/libecore_evas.la \
|
|||
$(top_builddir)/src/lib/evas/libevas.la \
|
||||
@EINA_LDFLAGS@
|
||||
|
||||
|
||||
if HAVE_CSHARP
|
||||
|
||||
include $(top_srcdir)/src/Makefile_Efl_Mono_MSBuild_Gen_Helper.am
|
||||
|
||||
EXTRA_PROGRAMS += \
|
||||
EinaArray01.exe \
|
||||
EinaBinbuf01.exe \
|
||||
EinaError01.exe \
|
||||
EinaHash01.exe
|
||||
|
||||
|
||||
EinaArray01_exe_SOURCES = EinaArray01.cs
|
||||
EinaArray01.exe$(EXEEXT): $(EinaArray01_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f $@
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
$(abs_top_builddir)/EinaArray01.csproj: $(EinaArray01_exe_SOURCES) $(am_dirstamp)
|
||||
@rm -f $@
|
||||
$(EFL_MONO_MSBUILD_GEN) $(MSBUILD_GEN_FLAGS) -o $@ -a EinaArray01.exe -r libefl_mono.dll -t exe $(patsubst %.cs,src/examples/eina/%.cs,$(filter %.cs, $(^)))
|
||||
|
||||
|
||||
EinaBinbuf01_exe_SOURCES = EinaBinbuf01.cs
|
||||
EinaBinbuf01.exe$(EXEEXT): $(EinaBinbuf01_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f $@
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
$(abs_top_builddir)/EinaBinbuf01.csproj: $(EinaBinbuf01_exe_SOURCES) $(am_dirstamp)
|
||||
@rm -f $@
|
||||
$(EFL_MONO_MSBUILD_GEN) $(MSBUILD_GEN_FLAGS) -o $@ -a EinaBinbuf01.exe -r libefl_mono.dll -t exe $(patsubst %.cs,src/examples/eina/%.cs,$(filter %.cs, $(^)))
|
||||
|
||||
|
||||
EinaError01_exe_SOURCES = EinaError01.cs
|
||||
EinaError01.exe$(EXEEXT): $(EinaError01_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f $@
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
$(abs_top_builddir)/EinaError01.csproj: $(EinaError01_exe_SOURCES) $(am_dirstamp)
|
||||
@rm -f $@
|
||||
$(EFL_MONO_MSBUILD_GEN) $(MSBUILD_GEN_FLAGS) -o $@ -a EinaError01.exe -r libefl_mono.dll -t exe $(patsubst %.cs,src/examples/eina/%.cs,$(filter %.cs, $(^)))
|
||||
|
||||
|
||||
EinaHash01_exe_SOURCES = EinaHash01.cs
|
||||
EinaHash01.exe$(EXEEXT): $(EinaHash01_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f $@
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
$(abs_top_builddir)/EinaHash01.csproj: $(EinaHash01_exe_SOURCES) $(am_dirstamp)
|
||||
@rm -f $@
|
||||
$(EFL_MONO_MSBUILD_GEN) $(MSBUILD_GEN_FLAGS) -o $@ -a EinaHash01.exe -r libefl_mono.dll -t exe $(patsubst %.cs,src/examples/eina/%.cs,$(filter %.cs, $(^)))
|
||||
|
||||
msbuildcsprojs: $(abs_top_builddir)/EinaArray01.csproj $(abs_top_builddir)/EinaBinbuf01.csproj $(abs_top_builddir)/EinaError01.csproj $(abs_top_builddir)/EinaHash01.csproj
|
||||
|
||||
endif
|
||||
|
||||
|
||||
DATA_FILES = addr_book.txt chat.xml Makefile.examples
|
||||
|
||||
EXTRA_DIST = $(DATA_FILES)
|
||||
|
|
|
@ -257,6 +257,23 @@ nodist_codegen_example_SOURCES = \
|
|||
codegen_example_generated.c \
|
||||
codegen_example_generated.h
|
||||
|
||||
|
||||
if HAVE_CSHARP
|
||||
|
||||
efl_ui_slider_mono_exe_SOURCES = \
|
||||
efl_ui_slider_mono.cs
|
||||
|
||||
if HAVE_WIN32
|
||||
MCS_FLAGS := $(MCS_FLAGS)
|
||||
MCS_FLAGS += -define:WIN32
|
||||
endif
|
||||
|
||||
efl_ui_slider_mono.exe$(EXEEXT): $(efl_ui_slider_mono_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f efl_ui_slider_mono$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
endif
|
||||
|
||||
examples_PROGRAMS = \
|
||||
actionslider_example_01 \
|
||||
bg_example_01 \
|
||||
|
@ -417,6 +434,13 @@ toolbar_cxx_example_01 \
|
|||
$(NULL)
|
||||
endif
|
||||
|
||||
if HAVE_CSHARP
|
||||
|
||||
examples_PROGRAMS += \
|
||||
efl_ui_slider_mono.exe
|
||||
|
||||
endif
|
||||
|
||||
efl_thread_1_SOURCES = efl_thread_1.c
|
||||
efl_thread_2_SOURCES = efl_thread_2.c
|
||||
efl_thread_3_SOURCES = efl_thread_3.c
|
||||
|
|
|
@ -367,6 +367,61 @@ $(AM_CPPFLAGS) @EVAS_CFLAGS@
|
|||
|
||||
endif
|
||||
|
||||
if HAVE_CSHARP
|
||||
|
||||
EXTRA_PROGRAMS += \
|
||||
evas_mono_box.exe \
|
||||
evas_mono_image.exe \
|
||||
evas_mono_image2.exe \
|
||||
evas_mono_rectangle.exe \
|
||||
evas_mono_table.exe \
|
||||
evas_mono_text.exe
|
||||
|
||||
|
||||
evas_mono_box_exe_SOURCES = \
|
||||
evas_mono_box.cs
|
||||
|
||||
evas_mono_box.exe$(EXEEXT): $(evas_mono_box_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_box$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
evas_mono_image_exe_SOURCES = \
|
||||
evas_mono_image.cs
|
||||
|
||||
evas_mono_image.exe$(EXEEXT): $(evas_mono_image_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_image$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
evas_mono_image2_exe_SOURCES = \
|
||||
evas_mono_image2.cs
|
||||
|
||||
evas_mono_image2.exe$(EXEEXT): $(evas_mono_image2_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_image2$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
evas_mono_rectangle_exe_SOURCES = \
|
||||
evas_mono_rectangle.cs
|
||||
|
||||
evas_mono_rectangle.exe$(EXEEXT): $(evas_mono_rectangle_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_rectangle$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
evas_mono_table_exe_SOURCES = \
|
||||
evas_mono_table.cs
|
||||
|
||||
evas_mono_table.exe$(EXEEXT): $(evas_mono_table_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_table$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
evas_mono_text_exe_SOURCES = \
|
||||
evas_mono_text.cs
|
||||
|
||||
evas_mono_text.exe$(EXEEXT): $(evas_mono_text_exe_SOURCES) $(am_dirstamp) $(top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT)
|
||||
@rm -f evas_mono_text$(EXEEXT)
|
||||
$(AM_V_MCS) $(MCS) $(MCS_FLAGS) -r:$(abs_top_builddir)/src/lib/efl_mono/libefl_mono.dll$(EXEEXT) -out:$@ $(filter %.cs, $(^))
|
||||
|
||||
endif
|
||||
|
||||
EDJS = $(EDCS:%.edc=%.edj)
|
||||
|
||||
SRCS = \
|
||||
|
|
Loading…
Reference in New Issue