elementary: Fixed svn detection for svn1.7
[framework/uifw/elementary.git] / configure.ac
index 1bed7eb..7a496a1 100644 (file)
@@ -1,9 +1,9 @@
-=-------##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 m4_define([v_maj], [0])
-m4_define([v_min], [7])
+m4_define([v_min], [8])
 m4_define([v_mic], [0])
-m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v export || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n']))
+m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n']))
 m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))])
 ##--   When released, remove the dnl on the below line
 dnl m4_undefine([v_rev])
@@ -43,7 +43,7 @@ AC_GNU_SOURCE
 AC_C_BIGENDIAN
 AC_ISC_POSIX
 AC_PROG_CC
-AM_PROG_CC_STDC
+AC_PROG_CC_STDC
 AC_HEADER_STDC
 AC_C_CONST
 AC_C___ATTRIBUTE__
@@ -122,6 +122,7 @@ ELM_UNIX_DEF="#undef"
 ELM_WIN32_DEF="#undef"
 ELM_WINCE_DEF="#undef"
 have_windows="no"
+have_dlopen="no"
 case "$host_os" in
    mingw32ce* | cegcc*)
       PKG_CHECK_MODULES([EVIL], [evil])
@@ -131,6 +132,7 @@ case "$host_os" in
       have_windows="yes"
 dnl managed by evil
       AC_DEFINE(HAVE_DLADDR)
+      have_dlopen="yes"
       dlopen_libs=-ldl
       requirement_elm="evil"
       have_socket="no"
@@ -143,6 +145,7 @@ dnl managed by evil
       have_windows="yes"
 dnl managed by evil
       AC_DEFINE(HAVE_DLADDR)
+      have_dlopen="yes"
       dlopen_libs=-ldl
       requirement_elm="evil"
       have_socket="no"
@@ -150,11 +153,13 @@ dnl managed by evil
    *solaris*)
       ELM_UNIX_DEF="#define"
       have_socket="yes"
+      have_dlopen="yes"
       AC_CHECK_LIB([socket], [connect], [], [have_socket="no"])
       ;;
    darwin*)
       ELM_UNIX_DEF="#define"
       have_socket="yes"
+      have_dlopen="yes"
       AC_CHECK_HEADERS([crt_externs.h])
       AC_DEFINE([environ], [(*_NSGetEnviron())], ["apple doesn't follow POSIX in this case."])
       ;;
@@ -162,34 +167,41 @@ dnl managed by evil
       ELM_UNIX_DEF="#define"
       AC_CHECK_FUNCS(dlopen, res=yes, res=no)
       if test "x$res" = "xyes"; then
-       AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR))
+        AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR))
+        have_dlopen="yes"
       else
-       AC_CHECK_LIB(dl, dlopen, res=yes, res=no)
-       if test "x$res" = "xyes"; then
-         AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR))
-         dlopen_libs=-ldl
-       else
-         AC_MSG_ERROR(Cannot find dlopen)
-       fi
+        AC_CHECK_LIB(dl, dlopen, res=yes, res=no)
+        if test "x$res" = "xyes"; then
+          AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR))
+          dlopen_libs=-ldl
+          have_dlopen="yes"
+        fi
       fi
       have_socket="yes"
       ;;
 esac
 AM_CONDITIONAL([BUILD_RUN], [test "x$have_socket" = "xyes"])
+AM_CONDITIONAL([BUILD_MODULES], [test "x$have_dlopen" = "xyes"])
+
+m4_ifdef([v_mic],
+   [
+    EFL_COMPILER_FLAG([-Wall])
+    EFL_COMPILER_FLAG([-W])
+   ])
 
 have_fork="no"
 want_quicklaunch="auto"
 AC_ARG_ENABLE([quick-launch],
-       [AC_HELP_STRING([--disable-quick-launch], [disable quick-launch support, @<:@default=detect@:>@])],
-       [want_quicklaunch=$enableval], [])
+        [AC_HELP_STRING([--disable-quick-launch], [disable quick-launch support, @<:@default=detect@:>@])],
+        [want_quicklaunch=$enableval], [])
 
 if test "x$want_quicklaunch" != "xno"; then
    AC_CHECK_FUNCS(fork, [
-       have_fork="yes"
-       AC_DEFINE(HAVE_FORK)
+        have_fork="yes"
+        AC_DEFINE(HAVE_FORK)
    ])
 fi
-AM_CONDITIONAL([BUILD_QUICKLAUNCH], [test "x$have_fork" = "xyes"])
+AM_CONDITIONAL([BUILD_QUICKLAUNCH], [test "x$have_fork" = "xyes" && test "x$have_dlopen" = "xyes"])
 
 AC_SUBST(dlopen_libs)
 AC_SUBST(lt_enable_auto_import)
@@ -204,16 +216,71 @@ PKG_CHECK_MODULES([ELEMENTARY],
     eina >= 1.0.999
     eet >= 1.4.0
     evas >= 1.0.999
-    ecore >= 1.0.0
-    ecore-evas >= 1.0.0
-    ecore-file >= 1.0.0
-    ecore-imf >= 1.0.0
+    ecore >= 1.0.999
+    ecore-evas >= 1.0.999
+    ecore-file >= 1.0.999
     edje >= 1.0.999
    ]
 )
 
 requirement_elm="edje >= 1.0.0 ecore-file >= 1.0.0 ecore-evas >= 1.0.0 ecore >= 1.0.0 evas >= 1.0.0 eet >= 1.4.0 eina >= 1.0.0 ${requirement_elm}"
 
+PKG_CHECK_MODULES([ELEMENTARY_ECORE_IMF],
+   [ecore-imf >= 1.0.999],
+   [
+    ELEMENTARY_ECORE_IMF_INC="#include <Ecore_IMF.h>"
+    AC_DEFINE(HAVE_ELEMENTARY_ECORE_IMF, 1, [Have Ecore_IMF support])
+    have_ecore_imf="yes"
+    requirement_elm="ecore-imf >= 1.0.999 ${requirement_elm}"
+   ],
+   [have_ecore_imf="no"])
+AC_SUBST(ELEMENTARY_ECORE_IMF_INC)
+
+AM_CONDITIONAL([HAVE_ECORE_IMF], [test "x${have_ecore_imf}" = "xyes"])
+
+PKG_CHECK_MODULES([ELEMENTARY_ECORE_CON],
+   [ecore-con >= 1.0.999],
+   [
+    ELEMENTARY_ECORE_CON_INC="#include <Ecore_Con.h>"
+    AC_DEFINE(HAVE_ELEMENTARY_ECORE_CON, 1, [Have Ecore_Con support])
+    have_ecore_con="yes"
+    requirement_elm="ecore-con >= 1.0.999 ${requirement_elm}"
+   ],
+   [have_ecore_con="no"])
+AC_SUBST(ELEMENTARY_ECORE_CON_INC)
+
+AM_CONDITIONAL([HAVE_ECORE_CON], [test "x${have_ecore_con}" = "xyes"])
+
+PKG_CHECK_MODULES([EIO],
+        [eio],
+        [
+         have_eio="yes"
+         AC_DEFINE(HAVE_EIO, 1, [Use EIO for asynchronous file access])
+         requirement_elm="eio ${requirement_elm}"
+        ],
+        [have_eio="no"])
+
+AM_CONDITIONAL([HAVE_EIO], [test "x${have_eio}" = "xyes"])
+
+have_emotion="no"
+want_elementary_emotion="yes"
+AC_ARG_ENABLE([emotion],
+   [AC_HELP_STRING([--disable-emotion], [disable emotion support. @<:@default=enabled@:>@])],
+   [want_elementary_emotion=$enableval], [])
+
+if test "x$want_elementary_emotion" != "xno"; then
+   PKG_CHECK_MODULES([EMOTION],
+        [emotion],
+        [
+         have_emotion="yes"
+         AC_DEFINE(HAVE_EMOTION, 1, [Use Emotion for asynchronous file access])
+         requirement_elm="emotion ${requirement_elm}"
+        ],
+        [have_emotion="no"])
+fi
+
+AM_CONDITIONAL([HAVE_EMOTION], [test "x${have_emotion}" = "xyes"])
+
 have_elementary_x="no"
 want_elementary_x="auto"
 AC_ARG_ENABLE([ecore-x],
@@ -261,6 +328,29 @@ if test "x$want_elementary_fb" = "xyes" -a "x$have_elementary_fb" = "xno"; then
     AC_MSG_ERROR([ecore-fb support requested, but not found by pkg-config.])
 fi
 
+have_elementary_psl1ght="no"
+want_elementary_psl1ght="auto"
+AC_ARG_ENABLE([ecore-psl1ght],
+   [AC_HELP_STRING([--disable-ecore-psl1ght], [disable ecore-psl1ght support. @<:@default=detect@:>@])],
+   [want_elementary_psl1ght=$enableval], [])
+
+if test "x$want_elementary_psl1ght" != "xno"; then
+   PKG_CHECK_MODULES([ELEMENTARY_PSL1GHT],
+      [ecore-psl1ght >= 1.0.0],
+      [
+       AC_DEFINE(HAVE_ELEMENTARY_PSL1GHT, 1, [PSL1GHT support for Elementary])
+       have_elementary_psl1ght="yes"
+       requirement_elm="ecore-psl1ght >= 1.0.0 ${requirement_elm}"
+      ],
+      [have_elementary_psl1ght="no"]
+   )
+else
+    have_elementary_psl1ght="no"
+fi
+if test "x$want_elementary_psl1ght" = "xyes" -a "x$have_elementary_psl1ght" = "xno"; then
+    AC_MSG_ERROR([ecore-psl1ght support requested, but not found by pkg-config.])
+fi
+
 have_elementary_sdl="no"
 want_elementary_sdl="auto"
 AC_ARG_ENABLE([ecore-sdl],
@@ -284,6 +374,29 @@ if test "x$want_elementary_sdl" = "xyes" -a "x$have_elementary_sdl" = "xno"; the
     AC_MSG_ERROR([ecore-sdl support requested, but not found by pkg-config.])
 fi
 
+have_elementary_cocoa="no"
+want_elementary_cocoa="auto"
+AC_ARG_ENABLE([ecore-cocoa],
+   [AC_HELP_STRING([--disable-ecore-cocoa], [disable ecore-cocoa support. @<:@default=detect@:>@])],
+   [want_elementary_cocoa=$enableval], [])
+
+if test "x$want_elementary_cocoa" != "xno"; then
+   PKG_CHECK_MODULES([ELEMENTARY_COCOA],
+      [ecore-cocoa >= 1.0.0],
+      [
+       AC_DEFINE(HAVE_ELEMENTARY_COCOA, 1, [COCOA support for Elementary])
+       have_elementary_cocoa="yes"
+       requirement_elm="ecore-cocoa >= 1.0.0 ${requirement_elm}"
+      ],
+      [have_elementary_cocoa="no"]
+   )
+else
+    have_elementary_cocoa="no"
+fi
+if test "x$want_elementary_cocoa" = "xyes" -a "x$have_elementary_cocoa" = "xno"; then
+    AC_MSG_ERROR([ecore-cocoa support requested, but not found by pkg-config.])
+fi
+
 have_elementary_win32="no"
 want_elementary_win32="auto"
 AC_ARG_ENABLE([ecore-win32],
@@ -416,6 +529,36 @@ if test "x$want_elementary_eweather" = "xyes" -a "x$have_elementary_eweather" =
 fi
 AC_SUBST(ELM_EWEATHER_DEF)
 
+ELM_EMAP_DEF="#undef"
+have_elementary_emap="no"
+want_elementary_emap="auto"
+AC_ARG_ENABLE([emap],
+   [AC_HELP_STRING([--disable-emap], [disable emap support. @<:@default=detect@:>@])],
+   [want_elementary_emap=$enableval], [])
+
+if test "x$want_elementary_emap" != "xno"; then
+    PKG_CHECK_MODULES([ELEMENTARY_EMAP],
+       [
+        emap
+       ],
+       [
+        AC_DEFINE(HAVE_ELEMENTARY_EMAP, 1, [EMap support for Elementary])
+        have_elementary_emap="yes"
+        ELM_EMAP_DEF="#define"
+        requirement_elm="emap ${requirement_elm}"
+       ],
+       [have_elementary_emap="no"]
+    )
+else
+    have_elementary_emap="no"
+fi
+if test "x$want_elementary_emap" = "xyes" -a "x$have_elementary_emap" = "xno"; then
+    AC_MSG_ERROR([Emap support requested, but no emap found by pkg-config.])
+fi
+AC_SUBST(ELM_EMAP_DEF)
+
+
+
 ELM_ETHUMB_DEF="#undef"
 have_elementary_ethumb="no"
 want_elementary_ethumb="auto"
@@ -444,6 +587,41 @@ if test "x$want_elementary_ethumb" = "xyes" -a "x$have_elementary_ethumb" = "xno
 fi
 AC_SUBST(ELM_ETHUMB_DEF)
 
+ELM_WEB_DEF="#undef"
+have_elementary_web="no"
+want_elementary_web="auto"
+AC_ARG_ENABLE([web],
+   [AC_HELP_STRING([--disable-web], [disable web (WebKit) support. @<:@default=detect@:>@])],
+   [want_elementary_web=$enableval], [])
+
+if test "x$want_elementary_web" != "xno"; then
+    PKG_CHECK_MODULES([ELEMENTARY_WEB],
+       [
+        ewebkit
+       ],
+       [
+        AC_DEFINE(HAVE_ELEMENTARY_WEB, 1, [Web support for Elementary])
+        webkit_datadir=$($PKG_CONFIG ewebkit --variable=datadir)
+        AC_DEFINE_UNQUOTED(WEBKIT_DATADIR,
+                           "$webkit_datadir",
+                           "WebKit's data dir")
+        have_elementary_web="yes"
+        ELM_WEB_DEF="#define"
+## web_client? how about ewebkit? at least in current upstreak webkit
+## there is no web_client.pc        
+#        requirement_elm="web_client ${requirement_elm}"
+        requirement_elm="ewebkit ${requirement_elm}"
+       ],
+       [have_elementary_web="no"]
+    )
+else
+    have_elementary_web="no"
+fi
+if test "x$want_elementary_web" = "xyes" -a "x$have_elementary_web" = "xno"; then
+    AC_MSG_ERROR([Web support requested, but no ewebkit found by pkg-config.])
+fi
+AC_SUBST(ELM_WEB_DEF)
+
 ELM_DEBUG_DEF="#undef"
 want_elementary_debug="no"
 AC_ARG_ENABLE([debug],
@@ -464,14 +642,14 @@ ELM_LIBINTL_H_DEF="#undef"
 AC_CHECK_HEADER(libintl.h, [ELM_LIBINTL_H_DEF="#define"])
 AC_SUBST(ELM_LIBINTL_H_DEF)
 
-EFL_CHECK_THREADS([
-  TH=1
-] , [
-  AC_MSG_ERROR(no thread support found. required.)
-  exit 1
-])
-AC_SUBST(EFL_PTHREAD_CFLAGS)
-AC_SUBST(EFL_PTHREAD_LIBS)
+ELM_DIRENT_H_DEF="#undef"
+AC_CHECK_HEADER(dirent.h, [ELM_DIRENT_H_DEF="#define"])
+AC_SUBST(ELM_DIRENT_H_DEF)
+
+AC_CHECK_HEADER(sys/mman.h, [have_mman="yes"], [have_mman="no"])
+if test "x${have_mman}" = "xyes"; then
+   AC_DEFINE(HAVE_MMAN_H, 1, [Have sys/mman.h header file])
+fi
 
 my_libs="-lm"
 AC_SUBST(my_libs)
@@ -486,33 +664,49 @@ EFL_ENABLE_BIN([elementary-test])
 EFL_ENABLE_BIN([elementary-config])
 
 m4_ifdef([AM_GNU_GETTEXT_VERSION], [
-AM_GNU_GETTEXT_VERSION([0.12.1])
+AM_GNU_GETTEXT_VERSION([0.17])
 ])
 
 m4_ifdef([AM_GNU_GETTEXT], [
 AM_GNU_GETTEXT([external])
 po_makefile_in=po/Makefile.in
-AM_CONDITIONAL([HAVE_PO], [true])
+have_po="yes"
 ],[
-AM_CONDITIONAL([HAVE_PO], [false])
+have_po="no"
 ])
 AC_SUBST(LTLIBINTL)
 
+if test "x${POSUB}" = "x" ; then
+   have_po="no"
+fi
+
+AM_CONDITIONAL([HAVE_PO], [test "x${have_po}" = "xyes"])
+
+EFL_CHECK_PATH_MAX
+
+
+### Build and install examples
+EFL_CHECK_BUILD_EXAMPLES([enable_build_examples="yes"], [enable_build_examples="no"])
+EFL_CHECK_INSTALL_EXAMPLES([enable_install_examples="yes"], [enable_install_examples="no"])
+
 
 AC_OUTPUT([
 Makefile
 elementary.spec
 elementary.pc
-doc/elementary.dox
 doc/Makefile
+doc/Doxyfile
+doc/widgets/Makefile
 src/Makefile
 src/lib/Makefile
 src/lib/Elementary.h
 src/bin/Makefile
 src/modules/Makefile
+src/modules/access_output/Makefile
 src/modules/test_entry/Makefile
 src/modules/test_map/Makefile
 src/edje_externals/Makefile
+src/examples/Makefile
 data/Makefile
 data/themes/Makefile
 data/images/Makefile
@@ -541,21 +735,31 @@ echo
 echo "  Engines:"
 echo "    X11....................: ${have_elementary_x}"
 echo "    Framebuffer............: ${have_elementary_fb}"
+echo "    PSL1GHT................: ${have_elementary_psl1ght}"
 echo "    SDL....................: ${have_elementary_sdl}"
+echo "    Cocoa..................: ${have_elementary_cocoa}"
 echo "    Windows XP.............: ${have_elementary_win32}"
 echo "    Windows CE.............: ${have_elementary_wince}"
 echo
 echo "  Features:"
+echo "    Ecore_IMF..............: ${have_ecore_imf}"
+echo "    Ecore_Con..............: ${have_ecore_con}"
 echo "    EDBus..................: ${have_elementary_edbus}"
 echo "    EFreet.................: ${have_elementary_efreet}"
 echo "    EWeather...............: ${have_elementary_eweather}"
+echo "    EMap...................: ${have_elementary_emap}"
 echo "    Ethumb.................: ${have_elementary_ethumb}"
+echo "    Web (WebKit)...........: ${have_elementary_web}"
 echo "    Quick Launch...........: ${have_fork}"
+echo "    EIO....................: ${have_eio}"
+echo "    Emotion................: ${have_emotion}"
 echo
 echo "  eet......................: ${eet_eet}"
 echo "  edje_cc..................: ${edje_cc}"
 echo
 echo "  Build elementary_test....: ${have_elementary_test}"
+echo "  Examples.................: ${enable_build_examples}"
+echo "  Examples installed.......: ${enable_install_examples}"
 echo "  Build elementary_config..: ${have_elementary_config}"
 echo
 echo "Compilation................: make (or gmake)"