-# get rid of that stupid cache mechanism
-rm -f config.cache
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+m4_define([v_maj], [1])
+m4_define([v_min], [1])
+m4_define([v_mic], [99])
+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_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])
+##-- When doing snapshots - change soname. remove dnl on below line
+dnl m4_define([relname], [ver-pre-svn-07])
+dnl m4_define([v_rel], [-release ver-pre-svn-07])
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+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_cur], m4_eval(v_maj + v_min))
+m4_define([lt_rev], v_mic)
+m4_define([lt_age], v_min)
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
-AC_INIT([embryo], [0.9.9.050], [enlightenment-devel@lists.sourceforge.net])
+AC_INIT([embryo], [v_ver], [enlightenment-devel@lists.sourceforge.net])
AC_PREREQ([2.52])
AC_CONFIG_SRCDIR([configure.ac])
-AC_CANONICAL_BUILD
-AC_CANONICAL_HOST
-AC_ISC_POSIX
+AC_CONFIG_MACRO_DIR([m4])
-AM_INIT_AUTOMAKE(1.6 dist-bzip2)
-AM_CONFIG_HEADER(config.h)
+AC_CONFIG_HEADERS([config.h])
+AH_TOP([
+#ifndef EFL_CONFIG_H__
+#define EFL_CONFIG_H__
+])
+AH_BOTTOM([
+#endif /* EFL_CONFIG_H__ */
+])
-AC_C_BIGENDIAN
-AC_PROG_CC
-AM_PROG_CC_STDC
-AC_HEADER_STDC
-AC_C_CONST
-AM_PROG_CC_C_O
-AC_C___ATTRIBUTE__
+AM_INIT_AUTOMAKE([1.6 dist-bzip2])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_LIBTOOL_WIN32_DLL
define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
AC_PROG_LIBTOOL
-VMAJ=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $1);}'`
-VMIN=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $2);}'`
-VMIC=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $3);}'`
-SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $4);}'`
-version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN"
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+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_cur:lt_rev:lt_age"
+release_info="v_rel"
AC_SUBST(version_info)
+AC_SUBST(release_info)
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
+VMAJ=v_maj
+AC_SUBST(VMAJ)
+
+### Default options with respect to host
+
+AC_CANONICAL_BUILD
+AC_CANONICAL_HOST
+
+requirement_embryo=""
+embryoincludedir="${datadir}/include"
+
+
+### Additional options to configure
+
+EFL_ENABLE_BIN([embryo-cc])
+
+
+### Checks for programs
+AC_PROG_CC
+
+# doxygen program for documentation building
+
+EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
+
+# pkg-config
+
+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"
+else
+ pkgconfig_requires_private="Requires"
+fi
+AC_SUBST(pkgconfig_requires_private)
+
+
+### Checks for libraries
+
+# Evil library for compilation on Windows
-PKG_CHECK_MODULES([EINA], [eina-0])
+EFL_EMBRYO_BUILD=""
+case "$host_os" in
+ mingw*)
+ PKG_CHECK_MODULES([EVIL], [evil >= 1.0.0])
+ AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if Evil library is installed])
+ requirement_embryo="evil ${requirement_embryo}"
+ EFL_EMBRYO_BUILD="-DEFL_EMBRYO_BUILD"
+ ;;
+esac
+AC_SUBST(EFL_EMBRYO_BUILD)
+
+# For embryo_cc_prefix.c
+PKG_CHECK_MODULES([EINA], [eina >= 1.1.0])
+
+### Checks for header files
+
+AC_CHECK_HEADERS([unistd.h])
+EFL_CHECK_PATH_MAX
+
+
+### Checks for types
+
+
+### Checks for structures
+
+
+### Checks for compiler characteristics
+AC_C_BIGENDIAN
+AM_PROG_CC_C_O
+AC_C_CONST
+AC_C_INLINE
+AC_PROG_CC_STDC
+AC_HEADER_STDC
+AC_C___ATTRIBUTE__
+
+EMBRYO_CPPFLAGS=""
+EMBRYO_CFLAGS=""
+case "$host_os" in
+ mingw32ce*)
+ EMBRYO_CPPFLAGS="-D_WIN32_WCE=0x0420"
+ ;;
+esac
+AC_SUBST(EMBRYO_CPPFLAGS)
+AC_SUBST(EMBRYO_CFLAGS)
+
+
+### Checks for linker characteristics
-WIN32_CFLAGS=""
lt_enable_auto_import=""
case "$host_os" in
- mingw*|cegcc)
- PKG_CHECK_MODULES([EVIL], evil)
- AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
- dnl needed for correct definition of EAPI
- AC_DEFINE(EFL_EMBRYO_BUILD, 1, [Define to mention that embryo is built])
- AC_DEFINE(HAVE_GETTIMEOFDAY, 1, [Defined to 1 (MinGW / CeGCC platform)])
- if test "x$host_os" = "xcegcc" ; then
- WIN32_CFLAGS="-mwin32"
- lt_enable_auto_import="-Wl,--enable-auto-import"
- fi
- ;;
- *)
- AC_CHECK_FUNCS(gettimeofday)
+ mingw*)
+ lt_enable_auto_import="-Wl,--enable-auto-import"
+ ;;
esac
-AC_SUBST(WIN32_CFLAGS)
AC_SUBST(lt_enable_auto_import)
+
+### Checks for library functions
+
+AC_ISC_POSIX
+
+# alloca
AC_FUNC_ALLOCA
-AC_CHECK_HEADER([fnmatch.h],
- [dummy="yes"],
- [AC_MSG_ERROR([Cannot find fnmatch.h. Make sure your CFLAGS environment variable contains include lines for the location of this file. MinGW users: see the INSTALL file])])
-
-AC_CHECK_FUNCS([fnmatch], [res="yes"], [res="no"])
-if test "x$res" = "xno"; then
- AC_SEARCH_LIBS([fnmatch],
- [fnmatch iberty evil],
- [res="yes"],
- [res="no"])
- if test "x$res" = "xno"; then
- AC_MSG_ERROR([Cannot find fnmatch() in neither libc nor libfnmatch, nor libiberty, nor libevil])
- fi
-fi
+# fnmatch
+EFL_CHECK_FNMATCH([], [AC_MSG_ERROR([Cannot find fnmatch()])])
-embryoincludedir='${datadir}/include'
+case "$host_os" in
+ mingw*)
+ AC_DEFINE(HAVE_GETTIMEOFDAY, 1, [Defined to 1 (MinGW platform)])
+ ;;
+ *)
+ AC_CHECK_FUNCS(gettimeofday)
+ ;;
+esac
+
+
+AC_SUBST(requirement_embryo)
AC_SUBST(embryoincludedir)
AC_OUTPUT([
Makefile
+doc/Makefile
+doc/Doxyfile
+doc/embryo.dox
embryo.pc
include/Makefile
src/Makefile
src/lib/Makefile
src/bin/Makefile
-README
embryo.spec
])
echo
echo "Configuration Options Summary:"
echo
-echo " Compilation..........: make"
+echo " Build embryo_cc......: $have_embryo_cc"
+echo
+echo " Documentation........: ${build_doc}"
echo
-echo " Installation.........: make install"
+echo "Compilation............: make (or gmake)"
+echo " CPPFLAGS.............: $CPPFLAGS"
+echo " CFLAGS...............: $CFLAGS"
+echo " LDFLAGS..............: $LDFLAGS"
echo
-echo " prefix.............: $prefix"
+echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
+echo " prefix...............: $prefix"
echo