Merge "Fix SVACE issues" into devel/master
[platform/core/uifw/dali-toolkit.git] / build / tizen / configure.ac
old mode 100644 (file)
new mode 100755 (executable)
index 21e03da..26be349
@@ -28,7 +28,6 @@ LT_INIT
 DALI_TOOLKIT_VERSION=dali_version
 AC_SUBST(DALI_TOOLKIT_VERSION)
 
-PKG_CHECK_MODULES(DALICORE, dali-core)
 
 DALI_TOOLKIT_CFLAGS=-DPLATFORM_TIZEN
 
@@ -59,10 +58,40 @@ AC_ARG_ENABLE([i18n],
 #  no setting                // enable_javascript = automatic ( enable if v8 present)
 AC_ARG_ENABLE([javascript],
               [AC_HELP_STRING([--enable-javascript],
-               [Enable JavaScript plugin])] ,
-               [enable_javascript=$enableval],
-               [enable_javascript=automatic])
+                [Enable JavaScript plugin])],
+              [enable_javascript=$enableval],
+              [enable_javascript=automatic])
 
+# option to build C# plugin
+# configure settings and output
+# --enable-csharp        // enable_csharp = yes
+# --enable-csharp=yes    // enable_csharp = yes
+# --enable-csharp=no     // enable_csharp = no
+#  no setting            // enable_csharp = no
+AC_ARG_ENABLE([csharp],
+              [AC_HELP_STRING([--enable-csharp],
+                [Enable csharp plugin])],
+              [enable_csharp=$enableval],
+              [enable_csharp=automatic])
+
+AC_ARG_ENABLE([cxx03_abi],
+              [AC_HELP_STRING([--enable-cxx03-abi],
+                              [Specify abi for the build])],
+              [enable_cxx03_abi=$enableval],
+              [enable_cxx03_abi=no])
+
+AC_ARG_ENABLE([rename_so],
+              [AC_HELP_STRING([--enable-rename-so],
+                              [Specify whether so file is renamed or not])],
+              [enable_rename_so=$enableval],
+              [enable_rename_so=yes])
+
+AM_CONDITIONAL([ENABLE_CXX03_ABI], [test x$enable_cxx03_abi = xyes])
+AM_CONDITIONAL([ENABLE_RENAME_SO], [test x$enable_rename_so = xyes])
+
+if test "x$enable_cxx03_abi" = "xyes"; then
+  DALI_TOOLKIT_CFLAGS="$DALI_TOOLKIT_CFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"
+fi
 
 if test "x$enable_debug" = "xyes"; then
   DALI_TOOLKIT_CFLAGS="$DALI_TOOLKIT_CFLAGS -DDEBUG_ENABLED"
@@ -78,7 +107,7 @@ fi
 
 # Tizen Profile options
 AC_ARG_ENABLE([profile],
-              [AC_HELP_STRING([--enable-profile=UBUNTU,MOBILE,WEARABLE,TV],
+              [AC_HELP_STRING([--enable-profile=UBUNTU,TIZEN],
                             [Select the variant of tizen])],
               [dali_profile=$enableval],
               [dali_profile=UBUNTU])
@@ -91,7 +120,7 @@ AC_ARG_WITH(style,
               [dali_style=480x800])
 
 # Ensure valid profile selected
-if test "x$dali_profile" != "xUBUNTU" -a "x$dali_profile" != "xMOBILE" -a "x$dali_profile" != "xWEARABLE" -a "x$dali_profile" != "xTV" ; then
+if test "x$dali_profile" != "xUBUNTU" -a "x$dali_profile" != "xTIZEN"; then
   AC_MSG_ERROR([$enable_profile is an invalid profile])
 fi
 
@@ -162,17 +191,61 @@ DOXYGEN_ROOT_DIR=../../..
 AC_SUBST(DOXYGEN_DOCS_DIR)
 AC_SUBST(DOXYGEN_ROOT_DIR)
 
+# Enable csharp plugin
+build_csharp_plugin=no
+build_ruby_flag=no
+if test x$enable_csharp = xyes; then
+  [build_csharp_plugin=yes]
+  AC_MSG_NOTICE(Building DALi csharp plugin ...)
+
+  PKG_CHECK_MODULES(DALIADAPTOR, dali-adaptor)
+  AC_PATH_PROG([SWIG], [swig])
+
+  # if gbs enable, then only use swig, without ruby or mcs
+  if test "x$dali_profile" = "xUBUNTU"; then
+    [build_ruby_flag=yes]
+    AC_PATH_PROG([RUBY], [ruby])
+    AC_PATH_PROGS([MCS], [mcs gmcs gmcs2])
+    AC_MSG_NOTICE(swig ruby mcs working ...)
+  else
+    [build_ruby_flag=no]
+    AC_PATH_PROG([RUBY], [ruby])
+    #AC_PATH_PROGS([MCS], [mcs gmcs gmcs2])
+    #AC_MSG_NOTICE(swig only working ...)
+  fi
+
+  # Set varaibles for dali-toolkit
+  DALITOOLKIT_CFLAGS="-I${prefix}/include -I${prefix}/include/dali-toolkit"
+  DALITOOLKIT_LIBS="-L${prefix}/lib -ldali-toolkit -ldali-core"
+  AC_SUBST(DALITOOLKIT_CFLAGS)
+  AC_SUBST(DALITOOLKIT_LIBS)
+fi
+
+if test "x$enable_cxx03_abi" = "xyes"; then
+PKG_CHECK_MODULES(DALICORE, dali-core-cxx03)
+else
+PKG_CHECK_MODULES(DALICORE, dali-core)
+fi
+
+#set a variable for the makefile to force compile the csharp plugin
+AM_CONDITIONAL([ENABLE_CSHARP_PLUGIN], [test x$build_csharp_plugin = xyes])
+AM_CONDITIONAL([ENABLE_RUBY_FLAG], [test x$build_ruby_flag = xyes])
+
 AC_CONFIG_FILES([
  Makefile
  dali-toolkit/Makefile
- plugins/Makefile
- dali-toolkit.pc
+ plugins/javascript/Makefile
+ plugins/csharp/Makefile
  docs/Makefile
  docs/dali.doxy
  docs-internal/dali-internal.doxy
  ../../automated-tests/CMakeLists.txt
 ])
 
+if test "x$enable_cxx03_abi" = "xno"; then
+AC_CONFIG_FILES([dali-toolkit.pc])
+fi
+
 AC_OUTPUT
 
 echo "
@@ -181,6 +254,7 @@ Configuration
   Prefix:                           $prefix
   Debug Build:                      $enable_debug
   JavaScript support (V8 required)  $build_javascript_plugin
+  CSharp support                    $build_csharp_plugin
   Profile:                          $dali_profile
   Data Dir (Read/Write):            $dataReadWriteDir
   Data Dir (Read Only):             $dataReadOnlyDir