Hello.

On Thu, 2014-01-23 at 17:30, Cedric BAIL wrote:
> cedric pushed a commit to branch master.
> 
> http://git.enlightenment.org/core/elementary.git/commit/?id=9aa68bca91678dcd83de3e35be1a7121094d6ef7
> 
> commit 9aa68bca91678dcd83de3e35be1a7121094d6ef7
> Author: Cedric BAIL <[email protected]>
> Date:   Fri Jan 24 10:28:05 2014 +0900
> 
>     autotools: restore support of static compilation.
>     
>     This should fix T599.

So this is the commit which might should be backported to 1.8.x?

My first impression was: to little commits message for to many lines
changed. :)

You did not only fix the static build, I expect it to work now, but
you completely changed it to use the efl.m4 macro infrastructure.
Thats a little more than just fixinf the static build. It also broke
the build by setting the EFL_VERSION to include [dev].

Either way it might fix bug in 1.8.x so I would be willing to get it
in. It would be good if the reporter could test it though.

regards
Stefan Schmidt

> ---
>  configure.ac                          | 174 ++++++-------
>  m4/efl.m4                             | 447 
> ++++++++++++++++++++++++++++++++++
>  src/lib/Makefile.am                   |   4 +-
>  src/modules/access_output/Makefile.am |   2 +-
>  src/modules/test_entry/Makefile.am    |   2 +-
>  src/modules/test_map/Makefile.am      |   2 +-
>  6 files changed, 519 insertions(+), 112 deletions(-)
> 
> diff --git a/configure.ac b/configure.ac
> index b7fcec9..4f5215d 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1,25 +1,7 @@
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -m4_define([v_maj], [1])
> -m4_define([v_min], [8])
> -m4_define([v_mic], [99])
> -m4_define([v_rev], m4_esyscmd([(git rev-list --count HEAD 2>/dev/null || 
> echo 0) | tr -d '\n']))
> -##--   When released, remove the dnl on the below line
> -dnl m4_undefine([v_rev])
> -##--   When doing snapshots - change soname. remove dnl on below line
> -dnl m4_define([relname], [dev])
> -dnl m4_define([v_rel], [-release relname])
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])],
> -[m4_define([v_ver], [v_maj.v_min.v_mic])])
> -m4_define([lt_rev], m4_eval(v_maj + v_min))
> -m4_define([lt_cur], v_mic)
> -m4_define([lt_age], v_min)
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -
> +EFL_VERSION([1], [8], [99], [dev])
>  AC_INIT([elementary], [v_ver], [[email protected]])
> -AC_PREREQ(2.52)
> +
> +AC_PREREQ(2.60)
>  AC_CONFIG_SRCDIR([configure.ac])
>  AC_CONFIG_MACRO_DIR([m4])
>  AC_CANONICAL_BUILD
> @@ -34,19 +16,11 @@ AH_BOTTOM([
>  #endif /* EFL_CONFIG_H__ */
>  ])
>  
> +AC_USE_SYSTEM_EXTENSIONS
> +
>  AM_INIT_AUTOMAKE([1.6 dist-bzip2])
>  m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
>  
> -AC_GNU_SOURCE
> -
> -AC_C_BIGENDIAN
> -AC_ISC_POSIX
> -AC_PROG_CC
> -AC_PROG_CC_STDC
> -AC_HEADER_STDC
> -AC_C_CONST
> -AC_FUNC_ALLOCA
> -
>  # pkg-config
>  PKG_PROG_PKG_CONFIG
>  
> @@ -145,28 +119,21 @@ define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
>  define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
>  m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
>  LT_INIT([win32-dll disable-static pic-only])
> +EFL_INIT
>  #AC_PROG_LIBTOOL
>  
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -m4_ifdef([v_rev], , [m4_define([v_rev], [0])])
> -m4_ifdef([v_rel], , [m4_define([v_rel], [])])
> -AC_DEFINE_UNQUOTED(VMAJ, [v_maj], [Major version])
> -AC_DEFINE_UNQUOTED(VMIN, [v_min], [Minor version])
> -AC_DEFINE_UNQUOTED(VMIC, [v_mic], [Micro version])
> -AC_DEFINE_UNQUOTED(VREV, [v_rev], [Revison])
> -version_info="lt_rev:lt_cur:lt_age"
> -release_info="v_rel"
> -AC_SUBST(version_info)
> -AC_SUBST(release_info)
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
> -VMAJ=v_maj
> -VMIN=v_min
> -AC_SUBST(VMAJ)
> -AC_SUBST(VMIN)
> -ELM_VERSION_MAJOR=v_maj
> -ELM_VERSION_MINOR=v_min
> +AC_GNU_SOURCE
> +
> +AC_C_BIGENDIAN
> +AC_ISC_POSIX
> +AC_PROG_CC
> +AC_PROG_CC_STDC
> +AC_HEADER_STDC
> +AC_C_CONST
> +AC_FUNC_ALLOCA
> +
> +ELM_VERSION_MAJOR="v_maj"
> +ELM_VERSION_MINOR="v_min"
>  AC_SUBST(ELM_VERSION_MAJOR)
>  AC_SUBST(ELM_VERSION_MINOR)
>  
> @@ -178,7 +145,6 @@ case "$host_os" in
>      MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
>      ;;
>  esac
> -AC_SUBST(release_info)
>  AC_SUBST(MODULE_ARCH)
>  AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
>  
> @@ -187,8 +153,6 @@ AC_DEFINE_UNQUOTED(EFL_SHARED_EXTENSION, 
> "${EFL_SHARED_EXTENSION}", "Shared exte
>  
>  requirement_elm=""
>  
> -PKG_PROG_PKG_CONFIG
> -
>  # Check whether pkg-config supports Requires.private
>  if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
>     pkgconfig_requires_private="Requires.private"
> @@ -239,28 +203,26 @@ AC_SUBST(ELM_WINCE_DEF)
>  
>  AM_CONDITIONAL([ELEMENTARY_WINDOWS_BUILD], [test "x${have_windows}" = 
> "xyes"])
>  
> -efl_version="1.8.99"
> -
>  PKG_CHECK_MODULES([ELEMENTARY],
>     [
> -    eina >= ${efl_version}
> -    eet >= ${efl_version}
> -    evas >= ${efl_version}
> -    ecore >= ${efl_version}
> -    ecore-evas >= ${efl_version}
> -    ecore-file >= ${efl_version}
> -    ecore-input >= ${efl_version}
> -    edje >= ${efl_version}
> -    eo >= ${efl_version}
> -    ethumb_client >= ${efl_version}
> -    emotion >= ${efl_version}
> -    ecore-imf >= ${efl_version}
> -    ecore-con >= ${efl_version}
> -    eio >= ${efl_version}
> -    eldbus >= ${efl_version}
> -    efreet >= ${efl_version}
> -    efreet-mime >= ${efl_version}
> -    efreet-trash >= ${efl_version}
> +    eina >= efl_version
> +    eet >= efl_version
> +    evas >= efl_version
> +    ecore >= efl_version
> +    ecore-evas >= efl_version
> +    ecore-file >= efl_version
> +    ecore-input >= efl_version
> +    edje >= efl_version
> +    eo >= efl_version
> +    ethumb_client >= efl_version
> +    emotion >= efl_version
> +    ecore-imf >= efl_version
> +    ecore-con >= efl_version
> +    eio >= efl_version
> +    eldbus >= efl_version
> +    efreet >= efl_version
> +    efreet-mime >= efl_version
> +    efreet-trash >= efl_version
>     ]
>  )
>  
> @@ -268,24 +230,24 @@ EFL_ENABLE_EO_API_SUPPORT
>  EFL_ENABLE_BETA_API_SUPPORT
>  
>  requirement_elm="\
> -    eina >= ${efl_version} \
> -    eet >= ${efl_version} \
> -    evas >= ${efl_version} \
> -    ecore >= ${efl_version} \
> -    ecore-evas >= ${efl_version} \
> -    ecore-file >= ${efl_version} \
> -    ecore-input >= ${efl_version} \
> -    edje >= ${efl_version} \
> -    eo >= ${efl_version} \
> -    ethumb_client >= ${efl_version} \
> -    emotion >= ${efl_version} \
> -    ecore-imf >= ${efl_version} \
> -    ecore-con >= ${efl_version} \
> -    eio >= ${efl_version} \
> -    eldbus >= ${efl_version} \
> -    efreet >= ${efl_version} \
> -    efreet-mime >= ${efl_version} \
> -    efreet-trash >= ${efl_version} \
> +    eina >= efl_version \
> +    eet >= efl_version \
> +    evas >= efl_version \
> +    ecore >= efl_version \
> +    ecore-evas >= efl_version \
> +    ecore-file >= efl_version \
> +    ecore-input >= efl_version \
> +    edje >= efl_version \
> +    eo >= efl_version \
> +    ethumb_client >= efl_version \
> +    emotion >= efl_version \
> +    ecore-imf >= efl_version \
> +    ecore-con >= efl_version \
> +    eio >= efl_version \
> +    eldbus >= efl_version \
> +    efreet >= efl_version \
> +    efreet-mime >= efl_version \
> +    efreet-trash >= efl_version \
>      "
>  
>  have_elementary_x="no"
> @@ -296,11 +258,11 @@ AC_ARG_ENABLE([ecore-x],
>  
>  if test "x$want_elementary_x" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_X],
> -      [ecore-x >= ${efl_version}],
> +      [ecore-x >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_X, 1, [X11 support for Elementary])
>         have_elementary_x="yes"
> -       requirement_elm="ecore-x >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-x >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_x="no"]
>     )
> @@ -320,11 +282,11 @@ AC_ARG_ENABLE([ecore-fb],
>  
>  if test "x$want_elementary_fb" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_FB],
> -      [ecore-fb >= ${efl_version}],
> +      [ecore-fb >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_FB, 1, [FB support for Elementary])
>         have_elementary_fb="yes"
> -       requirement_elm="ecore-fb >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-fb >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_fb="no"]
>     )
> @@ -343,11 +305,11 @@ AC_ARG_ENABLE([ecore-psl1ght],
>  
>  if test "x$want_elementary_psl1ght" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_PSL1GHT],
> -      [ecore-psl1ght >= ${efl_version}],
> +      [ecore-psl1ght >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_PSL1GHT, 1, [PSL1GHT support for 
> Elementary])
>         have_elementary_psl1ght="yes"
> -       requirement_elm="ecore-psl1ght >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-psl1ght >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_psl1ght="no"]
>     )
> @@ -366,11 +328,11 @@ AC_ARG_ENABLE([ecore-sdl],
>  
>  if test "x$want_elementary_sdl" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_SDL],
> -      [ecore-sdl >= ${efl_version}],
> +      [ecore-sdl >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_SDL, 1, [SDL support for Elementary])
>         have_elementary_sdl="yes"
> -       requirement_elm="ecore-sdl >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-sdl >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_sdl="no"]
>     )
> @@ -389,11 +351,11 @@ AC_ARG_ENABLE([ecore-cocoa],
>  
>  if test "x$want_elementary_cocoa" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_COCOA],
> -      [ecore-cocoa >= ${efl_version}],
> +      [ecore-cocoa >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_COCOA, 1, [COCOA support for Elementary])
>         have_elementary_cocoa="yes"
> -       requirement_elm="ecore-cocoa >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-cocoa >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_cocoa="no"]
>     )
> @@ -412,11 +374,11 @@ AC_ARG_ENABLE([ecore-win32],
>  
>  if test "x$want_elementary_win32" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_WIN32],
> -      [ecore-win32 >= ${efl_version}],
> +      [ecore-win32 >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_WIN32, 1, [Windows XP support for 
> Elementary])
>         have_elementary_win32="yes"
> -       requirement_elm="ecore-win32 >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-win32 >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_win32="no"]
>     )
> @@ -435,11 +397,11 @@ AC_ARG_ENABLE([ecore-wince],
>  
>  if test "x$want_elementary_wince" != "xno"; then
>     PKG_CHECK_MODULES([ELEMENTARY_WINCE],
> -      [ecore-wince >= ${efl_version}],
> +      [ecore-wince >= efl_version],
>        [
>         AC_DEFINE(HAVE_ELEMENTARY_WINCE, 1, [Windows CE support for 
> Elementary])
>         have_elementary_wince="yes"
> -       requirement_elm="ecore-wince >= ${efl_version} ${requirement_elm}"
> +       requirement_elm="ecore-wince >= efl_version ${requirement_elm}"
>        ],
>        [have_elementary_wince="no"]
>     )
> diff --git a/m4/efl.m4 b/m4/efl.m4
> new file mode 100644
> index 0000000..e197708
> --- /dev/null
> +++ b/m4/efl.m4
> @@ -0,0 +1,447 @@
> +dnl file to manage modules in efl
> +
> +dnl EFL_VERSION(major, minor, micro, release)
> +dnl This setup EFL version information and should be called BEFORE AC_INIT().
> +dnl
> +dnl release parameter is 'dev' to use from SVN or libtool -release field.
> +dnl It may be empty if not dev (svn/live build) and no -release is to be 
> used.
> +dnl
> +dnl Examples:
> +dnl     EFL_VERSION(1, 7, 99, dev)
> +dnl     EFL_VERSION(1, 7, 99, ver-1234)
> +dnl This will define couple of m4 symbols:
> +dnl     v_maj = given major number (first parameter)
> +dnl     v_min = given minor number (second parameter)
> +dnl     v_mic = given micro number (third parameter)
> +dnl     v_rev = if release, it's 0, otherwise it's dev_version.
> +dnl     v_rel = if release, it's -release followed by fourth parameter,
> +dnl             otherwise it's empty. (mostly for libtool)
> +dnl     efl_version = if release, it's major.minor.micro, otherwise it's
> +dnl             major.minor.micro.dev_version
> +dnl     dev_version = development version (svn revision).
> +dnl     def_build_profile = dev or release based on 'dev' release parameter.
> +AC_DEFUN([EFL_VERSION],
> +[dnl
> +m4_define([v_maj], [$1])dnl
> +m4_define([v_min], [$2])dnl
> +m4_define([v_mic], [$3])dnl
> +m4_define([dev_version], m4_esyscmd([(git rev-list --count HEAD 2>/dev/null 
> || echo 0) | tr -d '\n']))dnl
> +m4_define([v_rev], m4_if($4, dev, [dev_version], [0]))dnl
> +m4_define([v_rel], [])dnl
> +m4_define([def_build_profile], m4_if($4, dev, [dev], [release]))dnl
> +m4_define([efl_version], m4_if($4, dev, [v_maj.v_min.v_mic.v_rev], 
> [v_maj.v_min.v_mic]))dnl
> +m4_define([efl_version], [v_maj.v_min.v_mic])dnl
> +])
> +
> +dnl EFL_COLOR
> +dnl will check if terminal supports color and if color is wanted by user.
> +dnl
> +dnl Used Variables:
> +dnl     WANT_COLOR: if no, forces no color output.
> +dnl     TERM: used to check if color should be enabled.
> +dnl
> +dnl Defined Variables:
> +dnl     COLOR_YES: to be used in positive/yes conditions
> +dnl     COLOR_NO: to be used in negative/no conditions
> +dnl     COLOR_OTHER: to be used to highlight some other condition
> +dnl     COLOR_RESET: to reset color
> +dnl     want_color: yes or no
> +AC_DEFUN([EFL_COLOR],
> +[dnl
> +case "$TERM" in
> +   
> xterm|xterm-color|xterm-256color|Eterm|aterm|kterm|rxvt*|screen|gnome|interix)
> +      want_color="${WANT_COLOR:-yes}"
> +      ;;
> +   *)
> +      want_color="no"
> +      ;;
> +esac
> +
> +if test "${want_color}" = "yes"; then
> +   if test `echo -e x` = x; then
> +      echoopt=-e
> +   else
> +      echoopt=
> +   fi
> +
> +   COLOR_YES=`echo $echoopt "\033@<:@1;32m"`
> +   COLOR_NO=`echo $echoopt "\033@<:@1;31m"`
> +   COLOR_OTHER=`echo $echoopt "\033@<:@1;36m"`
> +   COLOR_RESET=`echo $echoopt "\033@<:@0m"`
> +
> +else
> +   COLOR_YES=""
> +   COLOR_NO=""
> +   COLOR_OTHER=""
> +   COLOR_RESET=""
> +fi
> +])
> +
> +dnl EFL_INIT()
> +dnl Will AC_DEFINE() the following:
> +dnl     VMAJ = v_maj
> +dnl     VMIN = v_min
> +dnl     VMIC = v_mic
> +dnl     VREV = v_rev
> +dnl Will AC_SUBST() the following:
> +dnl     VMAJ = v_maj
> +dnl     VMIN = v_min
> +dnl     VMIC = v_mic
> +dnl     EFL_LTLIBRARY_FLAGS="-no-undefined -version-info ..."
> +dnl     EFL_LTMODULE_FLAGS="-no-undefined -avoid-version"
> +dnl Will define the following m4:
> +dnl     lt_cur = libtool 'current' field of libtool's -version-info
> +dnl     lt_rev = libtool 'revision' field of libtool's -version-info
> +dnl     lt_age = libtool 'age' field of libtool's -version-info
> +AC_DEFUN([EFL_INIT],
> +[dnl
> +AC_REQUIRE([EFL_COLOR])dnl
> +AC_DEFINE_UNQUOTED([VMAJ], [v_maj], [Major version])dnl
> +AC_DEFINE_UNQUOTED([VMIN], [v_min], [Minor version])dnl
> +AC_DEFINE_UNQUOTED([VMIC], [v_mic], [Micro version])dnl
> +AC_DEFINE_UNQUOTED([VREV], [v_rev], [Revison])dnl
> +VMAJ=v_maj
> +VMIN=v_min
> +VMIC=v_mic
> +AC_SUBST([VMAJ])dnl
> +AC_SUBST([VMIN])dnl
> +AC_SUBST([VMIC])dnl
> +dnl
> +dnl TODO: warning - lt_cur:
> +dnl the previous code assumed v_maj + v_min, but this will be a problem when
> +dnl we bump v_maj and reset v_min. 1 + 7 == 7 + 1, so if v_maj is bumped
> +dnl we multiply it by 100.
> +m4_define([lt_cur], m4_if(m4_cmp(v_maj, 1), 0, m4_eval(v_maj + v_min), 
> m4_eval(v_maj * 100 + v_min)))dnl
> +m4_define([lt_rev], v_mic)dnl
> +m4_define([lt_age], v_min)dnl
> +dnl
> +EFL_LTLIBRARY_FLAGS="-no-undefined -version-info lt_cur:lt_rev:lt_age v_rel"
> +AC_SUBST(EFL_LTLIBRARY_FLAGS)dnl
> +EFL_LTMODULE_FLAGS="-no-undefined -avoid-version"
> +AC_SUBST([EFL_LTMODULE_FLAGS])dnl
> +AC_MSG_NOTICE([Initialized AC_PACKAGE_NAME (AC_PACKAGE_VERSION) 
> development=dev_version v_rel])
> +])
> +
> +dnl EFL_EVAL_PKGS(EFL)
> +dnl does PKG_CHECK_MODULES() for given EFL
> +AC_DEFUN([EFL_EVAL_PKGS],
> +[dnl
> +m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +if test "x${requirements_pc_deps_[]m4_defn([DOWNEFL])}" != "x"; then
> +   PKG_CHECK_MODULES([$1], [${requirements_pc_deps_[]m4_defn([DOWNEFL])}])
> +fi
> +m4_popdef([DOWNEFL])dnl
> +])
> +
> +dnl EFL_INTERNAL_DEPEND_PKG(EFL, OTHEREFL)
> +dnl Adds a pkg-config dependency on another EFL.
> +AC_DEFUN([EFL_INTERNAL_DEPEND_PKG],
> +[dnl
> +m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([DOWNOTHER], m4_translit([$2], [-A-Z], [_a-z]))dnl
> +dnl TODO: we need to fix the package config names for 2.0
> +dnl TODO: and make them uniform in scheme.
> +depname="$2"
> +libdirname="m4_defn([DOWNOTHER])"
> +libname="m4_defn([DOWNOTHER])"
> +case "m4_defn([DOWNOTHER])" in
> +   ethumb_client)
> +      depname="ethumb_client"
> +      ;;
> +esac
> +requirements_pc_[]m4_defn([DOWNEFL])="${depname} >= ${PACKAGE_VERSION} 
> ${requirements_pc_[][]m4_defn([DOWNEFL])}"
> +requirements_cflags_[]m4_defn([DOWNEFL])="-I\$(top_srcdir)/src/lib/${libdirname}
>  -I\$(top_builddir)/src/lib/${libdirname} 
> ${requirements_cflags_[][]m4_defn([DOWNEFL])}"
> +requirements_internal_libs_[]m4_defn([DOWNEFL])="lib/${libdirname}/lib${libname}.la
>  ${requirements_internal_libs_[][]m4_defn([DOWNEFL])}"
> +requirements_internal_deps_libs_[]m4_defn([DOWNEFL])="${requirements_public_libs_[]m4_defn([DOWNOTHER])}
>  ${requirements_internal_deps_libs_[][]m4_defn([DOWNEFL])}"
> +m4_popdef([DOWNOTHER])dnl
> +m4_popdef([DOWNEFL])dnl
> +])
> +
> +dnl EFL_PLATFORM_DEPEND(EFL, PLATFORM)
> +dnl PLATFORM is one of: all, evil, escape, exotic
> +AC_DEFUN([EFL_PLATFORM_DEPEND],
> +[dnl
> +m4_pushdef([DOWNOTHER], m4_translit([$2], [-A-Z], [_a-z]))dnl
> +case "m4_defn([DOWNOTHER])" in
> +  all)
> +    if test "x${efl_lib_optional_evil}" = "xyes"; then
> +       EFL_INTERNAL_DEPEND_PKG([$1], [evil])
> +    elif test "x${efl_lib_optional_escape}" = "xyes"; then
> +       EFL_INTERNAL_DEPEND_PKG([$1], [escape])
> +    elif test "x${efl_lib_optional_exotic}" = "xyes"; then
> +       EFL_INTERNAL_DEPEND_PKG([$1], [exotic])
> +    fi
> +    ;;
> +  *)
> +    if test "x${efl_lib_optional_[]m4_defn([DOWNOTHER])}" = "xyes"; then
> +       EFL_INTERNAL_DEPEND_PKG([$1], [$2])
> +    fi
> +    ;;
> +esac
> +m4_popdef([DOWNOTHER])dnl
> +])
> +
> +dnl EFL_CRYPTO_DEPEND(EFL)
> +dnl the given EFL will use/depend on system crypto settings
> +AC_DEFUN([EFL_CRYPTO_DEPEND],
> +[dnl
> +m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +requirements_pc_[]m4_defn([DOWNEFL])="${requirements_pc_crypto} 
> ${requirements_pc_[][]m4_defn([DOWNEFL])}"
> +requirements_pc_deps_[]m4_defn([DOWNEFL])="${requirements_pc_deps_crypto} 
> ${requirements_pc_deps_[][]m4_defn([DOWNEFL])}"
> +requirements_libs_[]m4_defn([DOWNEFL])="${requirements_libs_crypto} 
> ${requirements_libs_[][]m4_defn([DOWNEFL])}"
> +requirements_cflags_[]m4_defn([DOWNEFL])="${requirements_cflags_crypto} 
> ${requirements_cflags_[][]m4_defn([DOWNEFL])}"
> +m4_popdef([DOWNEFL])dnl
> +])
> +
> +dnl EFL_DEPEND_PKG(EFL, NAME, PACKAGE, [ACTION-IF-FOUND], 
> [ACTION-IF-NOT-FOUND])
> +dnl Adds a pkg-config dependency to an efl, AC_DEFINE() HAVE_NAME,
> +dnl and inserts dependencies in proper variables
> +AC_DEFUN([EFL_DEPEND_PKG],
> +[dnl
> +m4_pushdef([UPEFL], m4_translit([$1], [-a-z], [_A-Z]))dnl
> +m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([UPNAME], m4_translit([$2], [-a-z], [_A-Z]))dnl
> +m4_pushdef([DOWNNAME], m4_translit([$2], [-A-Z], [_a-z]))dnl
> +
> +   have_[]m4_defn([DOWNNAME])="no"
> +
> +   EFL_PKG_CHECK_STRICT([$3], [
> +      AC_DEFINE([HAVE_]m4_defn([UPNAME]), [1], [Have `]m4_defn([DOWNNAME])[' 
> pkg-config installed.])
> +      requirements_pc_[]m4_defn([DOWNEFL])="$3 
> ${requirements_pc_[][]m4_defn([DOWNEFL])}"
> +      requirements_pc_deps_[]m4_defn([DOWNEFL])="$3 
> ${requirements_pc_deps_[]m4_defn([DOWNEFL])}"
> +      have_[]m4_defn([DOWNNAME])="yes"
> +
> +      $4
> +
> +      ], [$5])
> +
> +m4_popdef([DOWNNAME])
> +m4_popdef([UPNAME])
> +m4_popdef([DOWNEFL])
> +m4_popdef([UPEFL])
> +])
> +
> +dnl EFL_OPTIONAL_DEPEND_PKG(EFL, VARIABLE, NAME, PACKAGE, [ACTION-IF-FOUND], 
> [ACTION-IF-NOT-FOUND])
> +AC_DEFUN([EFL_OPTIONAL_DEPEND_PKG],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$3], [-A-Z], [_a-z]))dnl
> +
> +   have_[]m4_defn([DOWN])="no"
> +   if test "x$2" = "xyes"; then
> +      EFL_DEPEND_PKG([$1], [$3], [$4], [$5], [$6])
> +   fi
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_OPTIONAL_INTERNAL_DEPEND_PKG(EFL, VARIABLE, NAME)
> +AC_DEFUN([EFL_OPTIONAL_INTERNAL_DEPEND_PKG],
> +[dnl
> +   if test "x$2" = "xyes"; then
> +      EFL_INTERNAL_DEPEND_PKG([$1], [$3])
> +   fi
> +])
> +
> +dnl EFL_ADD_LIBS(PKG, LIBS)
> +dnl Add libraries that the EFL library will depend on
> +dnl See EFL_DEPEND_PKG() for pkg-config version.
> +AC_DEFUN([EFL_ADD_LIBS],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +requirements_libs_[]m4_defn([DOWN])="${requirements_libs_[]m4_defn([DOWN])} 
> $2"
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_ADD_PUBLIC_LIBS(PKG, PUBLIC_LIBS)
> +dnl Add libraries that the EFL library will depend on when used.
> +dnl
> +dnl Unlike EFL_ADD_LIBS(), that is only used when generating PKG,
> +dnl this one is used when linking PKG to other libraries or applications.
> +dnl
> +dnl For instance if you use some other library in your header that user
> +dnl inclues.
> +AC_DEFUN([EFL_ADD_PUBLIC_LIBS],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +requirements_public_libs_[]m4_defn([DOWN])="${requirements_public_libs_[]m4_defn([DOWN])}
>  $2"
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_ADD_CFLAGS(PKG, CFLAGS)
> +dnl Add CFLAGS that the EFL library will use
> +dnl See EFL_DEPEND_PKG() for pkg-config version.
> +AC_DEFUN([EFL_ADD_CFLAGS],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +requirements_cflags_[]m4_defn([DOWN])="${requirements_cflags_[]m4_defn([DOWN])}
>  $2"
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_LIB_START(PKG)
> +dnl start the setup of an EFL library, defines variables and prints a notice
> +dnl
> +dnl Exports (AC_SUBST)
> +dnl     PKG_CFLAGS: what to use for CFLAGS
> +dnl
> +dnl     PKG_LDFLAGS: what to use for LDFLAGS
> +dnl
> +dnl     PKG_LIBS: what to use in automake's _LIBADD or _LDADD. Includes
> +dnl             everything else.
> +dnl
> +dnl     PKG_INTERNAL_LIBS: all other EFL as lib/name/libname.la that this
> +dnl             package depend. Used in automake's _DEPENDENCIES.
> +dnl
> +dnl     USE_PKG_LIBS: what to use in automake's _LIBADD or _LDADD when using
> +dnl             this PKG (PKG_LIBS + libpkg.la)
> +dnl
> +dnl     USE_PKG_INTERNAL_LIBS: extends PKG_INTERNAL_LIBS with 
> lib/pkg/libpkg.la
> +dnl
> +dnl     requirements_pc_pkg: all pkg-config (pc) files used by this pkg,
> +dnl             includes internal EFL (used in 'Requires.private' in pkg.pc)
> +dnl
> +dnl     requirements_libs_pkg: external libraries this package needs when
> +dnl             linking (used in 'Libs.private' in pkg.pc)
> +dnl
> +dnl     requirements_public_libs_pkg: external libraries other packages need
> +dnl             when using this (used in 'Libs' in pkg.pc)
> +dnl
> +dnl     requirements_cflags_pkg: what to use for CFLAGS (same as PKG_CFLAGS).
> +dnl
> +dnl Variables:
> +dnl     requirements_pc_deps_pkg: external pkg-config (pc) files used by this
> +dnl             pkg (used in EFL_EVAL_PKGS())
> +dnl
> +dnl     requirements_internal_libs_pkg: all other EFL as lib/name/libname.la
> +dnl             that this package depend.
> +dnl
> +dnl     requirements_internal_deps_libs_pkg: external libraries that are 
> public
> +dnl             dependencies (due internal libs).
> +dnl
> +AC_DEFUN([EFL_LIB_START],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
> +
> +requirements_internal_libs_[]m4_defn([DOWN])=""
> +requirements_internal_deps_libs_[]m4_defn([DOWN])=""
> +requirements_libs_[]m4_defn([DOWN])=""
> +requirements_public_libs_[]m4_defn([DOWN])=""
> +requirements_cflags_[]m4_defn([DOWN])=""
> +requirements_pc_[]m4_defn([DOWN])=""
> +requirements_pc_deps_[]m4_defn([DOWN])=""
> +
> +m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS}"
> +m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS}"
> +USE_[]m4_defn([UP])_LIBS="${USE_[]m4_defn([UP])_LIBS}"
> +USE_[]m4_defn([UP])_INTERNAL_LIBS="${USE_[]m4_defn([UP])_INTERNAL_LIBS}"
> +m4_defn([UP])_LDFLAGS="${m4_defn([UP])_LDFLAGS}"
> +m4_defn([UP])_CFLAGS="${m4_defn([UP])_CFLAGS}"
> +
> +AC_SUBST([requirements_libs_]m4_defn([DOWN]))dnl
> +AC_SUBST([requirements_public_libs_]m4_defn([DOWN]))dnl
> +AC_SUBST([requirements_cflags_]m4_defn([DOWN]))dnl
> +AC_SUBST([requirements_pc_]m4_defn([DOWN]))dnl
> +AC_SUBST(m4_defn([UP])[_LIBS])dnl
> +AC_SUBST(m4_defn([UP])[_INTERNAL_LIBS])dnl
> +AC_SUBST([USE_]m4_defn([UP])[_LIBS])dnl
> +AC_SUBST([USE_]m4_defn([UP])[_INTERNAL_LIBS])dnl
> +AC_SUBST(m4_defn([UP])[_LDFLAGS])dnl
> +AC_SUBST(m4_defn([UP])[_CFLAGS])dnl
> +AC_MSG_NOTICE([Start $1 checks])dnl
> +m4_popdef([UP])dnl
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_LIB_END(PKG)
> +dnl finishes the setup of an EFL library
> +AC_DEFUN([EFL_LIB_END],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
> +
> +libdirname="m4_defn([DOWN])"
> +libname="m4_defn([DOWN])"
> +
> +m4_defn([UP])_LDFLAGS="${EFL_COV_LDFLAGS} ${EFL_LDFLAGS} 
> ${m4_defn([UP])_LDFLAGS}"
> +m4_defn([UP])_LIBS=" ${m4_defn([UP])_LDFLAGS} ${EFL_COV_LIBS} ${EFL_LIBS} 
> ${m4_defn([UP])_LIBS} ${requirements_internal_libs_[]m4_defn([DOWN])} 
> ${requirements_internal_deps_libs_[]m4_defn([DOWN])} 
> ${requirements_public_libs_[]m4_defn([DOWN])} 
> ${requirements_libs_[]m4_defn([DOWN])} ${requirements_libs_efl} "
> +m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS} 
> ${requirements_internal_libs_[]m4_defn([DOWN])}"
> +USE_[]m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS} 
> lib/${libdirname}/lib${libname}.la"
> +USE_[]m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS} 
> lib/${libdirname}/lib${libname}.la"
> +m4_defn([UP])_CFLAGS="${EFL_COV_CFLAGS} ${EFL_CFLAGS} 
> ${m4_defn([UP])_CFLAGS} -I\$(top_srcdir)/src/lib/${libdirname} 
> -I\$(top_builddir)/src/lib/${libdirname} 
> ${requirements_cflags_[]m4_defn([DOWN])} ${requirements_cflags_efl} 
> -DEFL_[]m4_defn([UP])_BUILD=1"
> +requirements_pc_[]m4_defn([DOWN])="${requirements_pc_[]m4_defn([DOWN])} 
> ${requirements_pc_efl}"
> +requirements_pc_deps_[]m4_defn([DOWN])="${requirements_pc_deps_[]m4_defn([DOWN])}
>  ${requirements_pc_deps_efl}"
> +
> +AC_MSG_NOTICE([Finished $1 checks])dnl
> +m4_popdef([UP])dnl
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_LIB_START_OPTIONAL(PKG, TEST)
> +dnl test if library should be build and then EFL_LIB_START()
> +dnl must call EFL_LIB_END_OPTIONAL() to close it.
> +AC_DEFUN([EFL_LIB_START_OPTIONAL],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
> +
> +if $2; then
> +   efl_lib_optional_[]m4_defn([DOWN])="yes"
> +else
> +   efl_lib_optional_[]m4_defn([DOWN])="no"
> +   AC_MSG_NOTICE([Skipping $1 checks (disabled)])
> +fi
> +
> +if test "$efl_lib_optional_[]m4_defn([DOWN])" = "yes"; then
> +   EFL_LIB_START([$1])
> +   AC_DEFINE([HAVE_]m4_defn([UP]), [1], [optional EFL $1 is enabled])
> +dnl closed at EFL_LIB_END_OPTIONAL()
> +m4_popdef([UP])dnl
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_LIB_END_OPTIONAL(PKG)
> +dnl closes block started by EFL_LIB_START_OPTIONAL() and then
> +dnl defines AM_CONDITIONAL([HAVE_PKG]) and AC_DEFINE([HAVE_PKG])
> +AC_DEFUN([EFL_LIB_END_OPTIONAL],
> +[dnl
> +m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
> +
> +dnl close if started at EFL_LIB_START_OPTIONAL()
> +   EFL_LIB_END([$1])
> +fi
> +
> +AM_CONDITIONAL([HAVE_]m4_defn([UP]), [test 
> "$efl_lib_optional_[]m4_defn([DOWN])" = "yes"])dnl
> +m4_popdef([UP])dnl
> +m4_popdef([DOWN])dnl
> +])
> +
> +dnl EFL_ADD_FEATURE(PKG, NAME, [VALUE])
> +dnl if VALUE is not specified, will use ${have_name} instead.
> +dnl
> +dnl Defined Variables:
> +dnl     features_pkg
> +AC_DEFUN([EFL_ADD_FEATURE],
> +[dnl
> +m4_pushdef([DOWNPKG], m4_translit([$1], [-A-Z], [_a-z]))dnl
> +m4_pushdef([DOWNNAME], m4_translit([$2], [-A-Z], [_a-z]))dnl
> +
> +value="m4_if($3, , 
> [${have_]m4_defn([DOWNNAME])[:-${want_]m4_defn([DOWNNAME])[}}], [$3])"
> +case "${value}" in
> +   yes)
> +      tmp="${COLOR_YES}+$2${COLOR_RESET}"
> +      ;;
> +   no)
> +      tmp="${COLOR_NO}-$2${COLOR_RESET}"
> +      ;;
> +   *)
> +      tmp="${COLOR_OTHER}$2=${value}${COLOR_RESET}"
> +      ;;
> +esac
> +if test -z "${features_[]m4_defn([DOWNPKG])}"; then
> +   features_[]m4_defn([DOWNPKG])="${tmp}"
> +else
> +   features_[]m4_defn([DOWNPKG])="${features_[]m4_defn([DOWNPKG])} ${tmp}"
> +fi
> +m4_popdef([DOWNNAME])dnl
> +m4_popdef([DOWNPKG])dnl
> +])
> diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
> index cee3dfb..0e38b7d 100644
> --- a/src/lib/Makefile.am
> +++ b/src/lib/Makefile.am
> @@ -509,9 +509,7 @@ libelementary_la_LIBADD = \
>  @EVIL_LIBS@ \
>  @LTLIBINTL@
>  
> -libelementary_la_LDFLAGS = \
> --no-undefined @lt_enable_auto_import@ \
> --version-info @version_info@ @release_info@
> +libelementary_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
>  
>  EXTRA_DIST = \
>  elm_factory.h \
> diff --git a/src/modules/access_output/Makefile.am 
> b/src/modules/access_output/Makefile.am
> index 634d65f..fd3b2c2 100644
> --- a/src/modules/access_output/Makefile.am
> +++ b/src/modules/access_output/Makefile.am
> @@ -32,5 +32,5 @@ pkg_LTLIBRARIES = module.la
>  module_la_SOURCES = mod.c
>  
>  module_la_LIBADD = @ELEMENTARY_LIBS@ $(top_builddir)/src/lib/libelementary.la
> -module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module 
> -avoid-version
> +module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
>  module_la_LIBTOOLFLAGS = --tag=disable-static
> diff --git a/src/modules/test_entry/Makefile.am 
> b/src/modules/test_entry/Makefile.am
> index 99416f3..2662d95 100644
> --- a/src/modules/test_entry/Makefile.am
> +++ b/src/modules/test_entry/Makefile.am
> @@ -32,5 +32,5 @@ pkg_LTLIBRARIES = module.la
>  module_la_SOURCES = mod.c
>  
>  module_la_LIBADD = $(top_builddir)/src/lib/libelementary.la @EVIL_LIBS@
> -module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module 
> -avoid-version
> +module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
>  module_la_LIBTOOLFLAGS = --tag=disable-static
> diff --git a/src/modules/test_map/Makefile.am 
> b/src/modules/test_map/Makefile.am
> index b54154e..1201786 100644
> --- a/src/modules/test_map/Makefile.am
> +++ b/src/modules/test_map/Makefile.am
> @@ -32,5 +32,5 @@ pkg_LTLIBRARIES = module.la
>  module_la_SOURCES = mod.c
>  
>  module_la_LIBADD = $(top_builddir)/src/lib/libelementary.la
> -module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module 
> -avoid-version
> +module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
>  module_la_LIBTOOLFLAGS = --tag=disable-static
> 
> -- 
> 
> 

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to