Enhance WebViewLite
[platform/core/uifw/dali-toolkit.git] / build / tizen / configure.ac
old mode 100644 (file)
new mode 100755 (executable)
index 1fa0845..40bdf27
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2014 Samsung Electronics Co., Ltd.
+# Copyright (c) 2016 Samsung Electronics Co., Ltd.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -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,15 +58,49 @@ 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"
 fi
 
+if test "x$enable_trace" = "xyes"; then
+  DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DTRACE_ENABLED"
+fi
+
 if test "x$enable_debug" = "xno" -a "x$enable_exportall" = "xno"; then
   DALI_TOOLKIT_CFLAGS="$DALI_TOOLKIT_CFLAGS -fvisibility=hidden -DHIDE_DALI_INTERNALS"
 fi
@@ -78,7 +111,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 +124,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
 
@@ -110,9 +143,10 @@ fi
 DALI_TOOLKIT_CFLAGS="$DALI_TOOLKIT_CFLAGS -DDALI_PROFILE_${dali_profile}"
 
 # Style folder
-STYLE_DIR=../../../dali-toolkit/styles
-STYLE_DIR=$STYLE_DIR/$dali_style
+STYLE_BASE_DIR=../../../dali-toolkit/styles
+STYLE_DIR=$STYLE_BASE_DIR/$dali_style
 
+AC_SUBST(STYLE_BASE_DIR)
 AC_SUBST(STYLE_DIR)
 
 # v8 version 4+ requires c++11
@@ -142,6 +176,9 @@ fi
 #set a variable for the makefile to force compile the JAvaSplugin
 AM_CONDITIONAL([ENABLE_JAVASCRIPT_PLUGIN], [test x$build_javascript_plugin = xyes])
 
+# Platforms with highp shader support can use vector based text
+AM_CONDITIONAL([ENABLE_VECTOR_BASED_TEXT_RENDERING], [test x$dali_profile = xUBUNTU])
+
 AC_SUBST(dataReadWriteDir)
 AC_SUBST(dataReadOnlyDir)
 AC_SUBST(DALI_TOOLKIT_CFLAGS)
@@ -158,15 +195,61 @@ DOXYGEN_ROOT_DIR=../../..
 AC_SUBST(DOXYGEN_DOCS_DIR)
 AC_SUBST(DOXYGEN_ROOT_DIR)
 
+if test "x$enable_cxx03_abi" = "xyes"; then
+PKG_CHECK_MODULES(DALI, dali-core-cxx03)
+PKG_CHECK_MODULES(DALIDAPTOR, dali-adaptor-cxx03)
+else
+PKG_CHECK_MODULES(DALICORE, dali-core)
+PKG_CHECK_MODULES(DALIADAPTOR, dali-adaptor)
+fi
+
+# 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 ...)
+  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
+
+#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 "
@@ -174,7 +257,9 @@ Configuration
 -------------
   Prefix:                           $prefix
   Debug Build:                      $enable_debug
+  Trace Build:                      $enable_trace
   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