From c83143c8896752e139c82259e22c56715c313e7b Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Sun, 16 Sep 2012 14:25:29 +0000 Subject: [PATCH] merge: mostly fix tests and benchmark need to fix the city stuff in tests and the benchmark with the e17 data (need help with make rules :) SVN revision: 76712 --- Makefile.am | 18 +++- configure.ac | 15 +++ src/Makefile.am | 12 ++- src/benchmarks/Makefile.am | 11 +++ src/benchmarks/eina/Makefile.am | 53 ++++++++++ src/tests/Makefile.am | 3 + src/tests/eina/Makefile.am | 167 ++++++++++---------------------- 7 files changed, 159 insertions(+), 120 deletions(-) create mode 100644 src/benchmarks/Makefile.am create mode 100644 src/benchmarks/eina/Makefile.am create mode 100644 src/tests/Makefile.am diff --git a/Makefile.am b/Makefile.am index 6521c6759b..11052f092d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -47,7 +47,7 @@ endif pkgconfig_DATA += eina.pc -.PHONY: doc +.PHONY: doc benchmark # Documentation @@ -55,6 +55,8 @@ doc: @echo "entering doc/" make -C doc doc +# Unit tests + if EFL_ENABLE_COVERAGE lcov-reset: @@ -77,9 +79,21 @@ check-local: if EFL_ENABLE_COVERAGE @$(MAKE) lcov-reset endif - @./src/tests/eina_suite + @./src/tests/eina/eina_suite if EFL_ENABLE_COVERAGE @$(MAKE) lcov-report endif endif + +# benchmark + +benchmark: + @$(MAKE) -C src benchmark + @mkdir benchmark || true + @cd benchmark && ../src/benchmarks/eina/eina_bench `date +%F_%s` + +benchmark-e17: + @$(MAKE) -C src benchmark-e17 + @mkdir benchmark || true + @cd benchmark && ../src/benchmarks/eina/eina_bench `date +%F_%s` diff --git a/configure.ac b/configure.ac index e0e21f995f..75bbec64bd 100644 --- a/configure.ac +++ b/configure.ac @@ -598,6 +598,17 @@ AM_CONDITIONAL([BUILD_TILER_EXAMPLE], [test "x${build_tiler_example}" = "xyes"]) EFL_CHECK_TESTS(EINA) +## Benchmarks + +PKG_CHECK_MODULES([GLIB], + [glib-2.0], + [have_glib="yes"], + [have_glib="no"]) + +if test "x${have_glib}" = "xyes" ; then + GLIB_CFLAGS="${GLIB_CFLAGS} -DEINA_BENCH_HAVE_GLIB" +fi + ### Checks for header files AC_HEADER_ASSERT @@ -759,6 +770,8 @@ EINA_CHECK_MODULE([one-big], [${enable_one_big}], [one big]) AC_CONFIG_FILES([ Makefile src/Makefile +src/benchmarks/Makefile +src/benchmarks/eina/Makefile src/bin/Makefile src/bin/evil/Makefile src/include/Makefile @@ -779,6 +792,8 @@ src/modules/eina/mp/buddy/Makefile src/modules/eina/mp/one_big/Makefile src/scripts/Makefile src/scripts/eina/Makefile +src/tests/Makefile +src/tests/eina/Makefile eina.spec evil.pc eina.pc diff --git a/src/Makefile.am b/src/Makefile.am index d53263a5cb..24ceadb561 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,3 +1,13 @@ MAINTAINERCLEANFILES = Makefile.in -SUBDIRS = lib include modules bin scripts +SUBDIRS = lib include modules bin scripts benchmarks tests + +.PHONY: benchmark benchmark-e17 + +benchmark: + @make -C lib + @$(MAKE) -C benchmarks benchmark + +benchmark-e17: + @make -C lib + @$(MAKE) -C benchmarks benchmark-e17 diff --git a/src/benchmarks/Makefile.am b/src/benchmarks/Makefile.am new file mode 100644 index 0000000000..1bf18c0e94 --- /dev/null +++ b/src/benchmarks/Makefile.am @@ -0,0 +1,11 @@ +MAINTAINERCLEANFILES = Makefile.in + +SUBDIRS = eina + +.PHONY: benchmark benchmark-e17 + +benchmark: + @$(MAKE) -C eina benchmark + +benchmark-e17: + @$(MAKE) -C eina benchmark-e17 diff --git a/src/benchmarks/eina/Makefile.am b/src/benchmarks/eina/Makefile.am new file mode 100644 index 0000000000..248ddfeda6 --- /dev/null +++ b/src/benchmarks/eina/Makefile.am @@ -0,0 +1,53 @@ +MAINTAINERCLEANFILES = Makefile.in + +AM_CPPFLAGS = \ +-I$(top_srcdir)/src/include/eina \ +-I$(top_builddir)/src/include/eina \ +-DPACKAGE_BUILD_DIR=\"`pwd`/$(top_builddir)\" \ +-DCITYHASH_BENCH \ +@EINA_CFLAGS@ \ +@GLIB_CFLAGS@ + +EXTRA_PROGRAMS = eina_bench + +benchmark: eina_bench libcity.la + +#benchmark-e17: eina_bench +# AM_CPPFLAGS += -DEINA_ENABLE_BENCH_E17 + +eina_bench_SOURCES = \ +eina_bench.c \ +eina_bench_sort.c \ +eina_bench_hash.c \ +eina_bench_stringshare.c \ +eina_bench_convert.c \ +eina_bench_mempool.c \ +eina_bench_stringshare_e17.c \ +eina_bench_array.c \ +eina_bench_rectangle_pool.c \ +ecore_list.c \ +ecore_strings.c \ +ecore_hash.c \ +ecore_sheap.c \ +evas_hash.c \ +evas_list.c \ +evas_mempool.c \ +evas_object_list.c \ +evas_stringshare.c \ +eina_bench_quad.c \ +eina_bench.h \ +eina_suite.h \ +Ecore_Data.h \ +Evas_Data.h \ +evas_mempool.h + +EXTRA_LTLIBRARIES = libcity.la +libcity_la_SOURCES = city.cc + +nodist_EXTRA_eina_bench_SOURCES = dummy.cc +eina_bench_LDADD = @GLIB_LIBS@ $(top_builddir)/src/lib/eina/libeina.la libcity.la @EINA_LIBS@ + +EXTRA_DIST = strlog + +clean-local: + rm -rf *.gcno ..\#..\#src\#*.gcov *.gcda diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am new file mode 100644 index 0000000000..b8f642fb72 --- /dev/null +++ b/src/tests/Makefile.am @@ -0,0 +1,3 @@ +MAINTAINERCLEANFILES = Makefile.in + +SUBDIRS = eina diff --git a/src/tests/eina/Makefile.am b/src/tests/eina/Makefile.am index f6810e22c7..c87862214a 100644 --- a/src/tests/eina/Makefile.am +++ b/src/tests/eina/Makefile.am @@ -1,142 +1,75 @@ MAINTAINERCLEANFILES = Makefile.in -benchdir = $(bindir) - -AM_CPPFLAGS = \ --I$(top_srcdir)/src/lib \ --I$(top_srcdir)/src/include \ --I$(top_builddir)/src/include \ --I$(top_builddir)/src/lib \ --DPACKAGE_BIN_DIR=\"$(bindir)\" \ --DPACKAGE_LIB_DIR=\"$(libdir)\" \ --DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \ --DPACKAGE_BUILD_DIR=\"`pwd`/$(top_builddir)\" \ -@CHECK_CFLAGS@ \ -@EINA_CFLAGS@ \ -@GLIB_CFLAGS@ - -if EINA_HAVE_GLIB - -AM_CPPFLAGS += -DEINA_BENCH_HAVE_GLIB - -endif - -if EINA_ENABLE_BENCHMARK_E17 - -AM_CPPFLAGS += -DEINA_ENABLE_BENCH_E17 - -endif +AM_CPPFLAGS = \ +-I$(top_srcdir)/src/include/eina \ +-I$(top_builddir)/src/include/eina \ +-DPACKAGE_BUILD_DIR=\"`pwd`/$(top_builddir)\" \ +@CHECK_CFLAGS@ \ +@EINA_CFLAGS@ if EFL_ENABLE_TESTS check_PROGRAMS = eina_suite cxx_compile_test -eina_suite_SOURCES = \ -eina_suite.c \ -eina_test_fp.c \ +eina_suite_SOURCES = \ +eina_suite.c \ +eina_test_fp.c \ eina_test_stringshare.c \ -eina_test_ustringshare.c\ -eina_test_ustr.c \ -eina_test_binshare.c \ -eina_test_binbuf.c \ -eina_test_inarray.c \ -eina_test_array.c \ -eina_test_clist.c \ -eina_test_error.c \ -eina_test_sched.c \ -eina_test_log.c \ -eina_test_magic.c \ -eina_test_inlist.c \ -eina_test_main.c \ -eina_test_counter.c \ -eina_test_lalloc.c \ -eina_test_hash.c \ -eina_test_iterator.c \ -eina_test_accessor.c \ -eina_test_module.c \ -eina_test_convert.c \ -eina_test_rbtree.c \ -eina_test_file.c \ -eina_test_benchmark.c \ -eina_test_mempool.c \ -eina_test_rectangle.c \ -eina_test_list.c \ +eina_test_ustringshare.c \ +eina_test_ustr.c \ +eina_test_binshare.c \ +eina_test_binbuf.c \ +eina_test_inarray.c \ +eina_test_array.c \ +eina_test_clist.c \ +eina_test_error.c \ +eina_test_sched.c \ +eina_test_log.c \ +eina_test_magic.c \ +eina_test_inlist.c \ +eina_test_main.c \ +eina_test_counter.c \ +eina_test_lalloc.c \ +eina_test_hash.c \ +eina_test_iterator.c \ +eina_test_accessor.c \ +eina_test_module.c \ +eina_test_convert.c \ +eina_test_rbtree.c \ +eina_test_file.c \ +eina_test_benchmark.c \ +eina_test_mempool.c \ +eina_test_rectangle.c \ +eina_test_list.c \ eina_test_matrixsparse.c \ -eina_test_tiler.c \ -eina_test_strbuf.c \ -eina_test_str.c \ -eina_test_quadtree.c \ +eina_test_tiler.c \ +eina_test_strbuf.c \ +eina_test_str.c \ +eina_test_quadtree.c \ eina_test_simple_xml_parser.c \ eina_test_value.c # eina_test_model.c -eina_suite_LDADD = @CHECK_LIBS@ $(top_builddir)/src/lib/libeina.la @EINA_LIBS@ -lm +eina_suite_LDADD = @CHECK_LIBS@ $(top_builddir)/src/lib/eina/libeina.la @EINA_LIBS@ -lm cxx_compile_test_SOURCES = cxx_compile_test.cxx -cxx_compile_test_LDADD = $(top_builddir)/src/lib/libeina.la @EINA_LIBS@ +cxx_compile_test_LDADD = $(top_builddir)/src/lib/eina/libeina.la @EINA_LIBS@ -module_dummydir = $(libdir)/eina/test -module_dummy_LTLIBRARIES = module_dummy.la +EXTRA_LTLIBRARIES = module_dummy.la -module_dummy_la_SOURCES = \ -eina_test_module_dummy.c +check-local: module_dummy.la -module_dummy_la_CPPFLAGS = \ --I$(top_srcdir)/src/lib \ --I$(top_srcdir)/src/include \ --I$(top_builddir)/src/include \ --I$(top_builddir)/src/lib \ +module_dummy_la_SOURCES = eina_test_module_dummy.c + +module_dummy_la_CPPFLAGS = \ +-I$(top_srcdir)/src/include/eina \ +-I$(top_builddir)/src/include/eina \ @EFL_EINA_BUILD@ -module_dummy_la_LIBADD = $(top_builddir)/src/lib/libeina.la @EINA_LIBS@ -lm -module_dummy_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version +module_dummy_la_LIBADD = $(top_builddir)/src/lib/eina/libeina.la @EINA_LIBS@ -lm +module_dummy_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version module_dummy_la_LIBTOOLFLAGS = --tag=disable-static endif -if EFL_ENABLE_BENCHMARK - -bench_PROGRAMS = eina_bench - -eina_bench_SOURCES = \ -eina_bench.c \ -eina_bench_sort.c \ -eina_bench_hash.c \ -eina_bench_stringshare.c \ -eina_bench_convert.c \ -eina_bench_mempool.c \ -eina_bench_stringshare_e17.c \ -eina_bench_array.c \ -eina_bench_rectangle_pool.c \ -ecore_list.c \ -ecore_strings.c \ -ecore_hash.c \ -ecore_sheap.c \ -evas_hash.c \ -evas_list.c \ -evas_mempool.c \ -evas_object_list.c \ -evas_stringshare.c \ -eina_bench_quad.c \ -eina_bench.h \ -eina_suite.h \ -Ecore_Data.h \ -Evas_Data.h \ -evas_mempool.h - -if CITYHASH_BENCH -noinst_LTLIBRARIES = libcity.la -libcity_la_SOURCES = city.cc - -nodist_EXTRA_eina_bench_SOURCES = dummy.cc -eina_bench_LDADD = @GLIB_LIBS@ $(top_builddir)/src/lib/libeina.la libcity.la @EINA_LIBS@ -else -eina_bench_LDADD = @GLIB_LIBS@ $(top_builddir)/src/lib/libeina.la @EINA_LIBS@ - -endif - -endif - -EXTRA_DIST = strlog - clean-local: rm -rf *.gcno ..\#..\#src\#*.gcov *.gcda