From e2b34b41ee5f19dad650995a07281f3ee5285922 Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Wed, 16 Sep 2009 17:22:01 +0000 Subject: [PATCH] * fix compilation on Windows when using amalgamation * put alloca declaration at the beginning SVN revision: 42517 --- legacy/eina/src/lib/Makefile.am | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/legacy/eina/src/lib/Makefile.am b/legacy/eina/src/lib/Makefile.am index 802e86c6b5..01d73caf73 100644 --- a/legacy/eina/src/lib/Makefile.am +++ b/legacy/eina/src/lib/Makefile.am @@ -75,21 +75,41 @@ $(builddir)/ eina_amalgamation.c: $(sources_used) Makefile @echo "#ifndef _WIN32" >> $(builddir)/eina_amalgamation.c @echo "#define _GNU_SOURCE" >> $(builddir)/eina_amalgamation.c + @echo "#endif" >> $(builddir)/eina_amalgamation.c + + @echo "#ifdef HAVE_ALLOCA_H" >> $(builddir)/eina_amalgamation.c + @echo "# include " >> $(builddir)/eina_amalgamation.c + @echo "#elif defined __GNUC__" >> $(builddir)/eina_amalgamation.c + @echo "# define alloca __builtin_alloca" >> $(builddir)/eina_amalgamation.c + @echo "#elif defined _AIX" >> $(builddir)/eina_amalgamation.c + @echo "# define alloca __alloca" >> $(builddir)/eina_amalgamation.c + @echo "#elif defined _MSC_VER" >> $(builddir)/eina_amalgamation.c + @echo "# include " >> $(builddir)/eina_amalgamation.c + @echo "# define alloca _alloca" >> $(builddir)/eina_amalgamation.c @echo "#else" >> $(builddir)/eina_amalgamation.c + @echo "# include " >> $(builddir)/eina_amalgamation.c + @echo "# ifdef __cplusplus" >> $(builddir)/eina_amalgamation.c + @echo "#extern \"C\"" >> $(builddir)/eina_amalgamation.c + @echo "# endif" >> $(builddir)/eina_amalgamation.c + @echo "#void *alloca (size_t);" >> $(builddir)/eina_amalgamation.c + @echo "#endif" >> $(builddir)/eina_amalgamation.c + + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#include " >> $(builddir)/eina_amalgamation.c + @echo "#ifdef HAVE_EVIL" >> $(builddir)/eina_amalgamation.c @echo "# include " >> $(builddir)/eina_amalgamation.c @echo "#endif" >> $(builddir)/eina_amalgamation.c - @echo "#endif" >> $(builddir)/eina_amalgamation.c @echo "#include \"eina_config.h\"" >> $(builddir)/eina_amalgamation.c @echo "#include \"eina_private.h\"" >> $(builddir)/eina_amalgamation.c @echo "#include \"eina_safety_checks.h\"" >> $(builddir)/eina_amalgamation.c @echo "#include \"Eina.h\"" >> $(builddir)/eina_amalgamation.c - @echo "#include " >> $(builddir)/eina_amalgamation.c - @echo "#include " >> $(builddir)/eina_amalgamation.c - @echo "#include " >> $(builddir)/eina_amalgamation.c - @for f in $(sources_used); do \ if [ `expr substr $$f 1 1` != '/' ]; then \ file="$(srcdir)/$$f" ; \ @@ -97,7 +117,7 @@ $(builddir)/ eina_amalgamation.c: $(sources_used) Makefile file="$$f" ; \ fi ; \ echo "/* file: $$file */" >> $(builddir)/eina_amalgamation.c; \ - grep -v -e '^# *include \+.\(config\|eina_[a-z_]\+\|Evil\|stdio\|stdlib\|string\)[.]h.*' $$file >> $(builddir)/eina_amalgamation.c; \ + grep -v -e '^# *include \+.\(config\|eina_[a-z_]\+\|Evil\|stdio\|stdlib\|string\|dlfcn\)[.]h.*' $$file >> $(builddir)/eina_amalgamation.c; \ done @echo "eina_amalgamation.c generated"