Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Convert config module to unit testing
[simgrid.git] / src / Makefile.am
index 4cebdc3..a840e16 100644 (file)
@@ -94,6 +94,7 @@ VERSION_INFO= -release 20050627 -version-info 0:0:0
 #   using this trick is ready for a "stable" release (say, in Debian).
 
 lib_LTLIBRARIES= libsimgrid.la libgras.la
+noinst_PROGRAMS=testall
 
 COMMON_SRC=\
   \
@@ -114,6 +115,7 @@ COMMON_SRC=\
   xbt/set.c                                                                  \
   xbt/module.c                                                               \
   xbt/config.c                                                               \
+  xbt/cunit.c                                                                \
   \
   gras/gras.c \
   \
@@ -131,8 +133,8 @@ COMMON_SRC=\
   gras/Virtu/process.c
 
 RL_SRC= \
-  gras/Transport/rl_transport.c  gras/Transport/transport_plugin_tcp.c  gras/Transport/transport_plugin_file.c  \
-  gras/Transport/transport_plugin_buf.c \
+  gras/Transport/rl_transport.c          \
+  gras/Transport/transport_plugin_file.c   gras/Transport/transport_plugin_tcp.c  \
   \
   gras/Virtu/rl_emul.c \
   gras/Virtu/rl_process.c        gras/Virtu/rl_time.c \
@@ -168,8 +170,40 @@ AMOK_SRC= \
   amok/base.c \
   amok/Bandwidth/bandwidth.c amok/Bandwidth/saturate.c
 
+###
+### Testing infrastructure
+###
+
+TEST_CFILES=xbt/cunit.c  xbt/ex.c  xbt/config.c
+TEST_UNITS= cunit_unit.c ex_unit.c config_unit.c
+
 BUILT_SOURCES=../include/surf/surfxml.h surf/surfxml.c \
-              gras/DataDesc/ddt_parse.yy.c
+              gras/DataDesc/ddt_parse.yy.c \
+              $(TEST_UNITS) simgrid_units_main.c
+
+testall_SOURCES= $(TEST_UNITS) simgrid_units_main.c
+testall_LDADD=libgras.la
+
+if MAINTAINER_MODE
+%_unit.c: $(TEST_CFILES) @top_srcdir@/tools/sg_unit_extractor.pl
+       @echo TEST_UNITS=$(TEST_UNITS)
+       @echo testall_SOURCES=$(testall_SOURCES)
+       @lookfor=`echo $@ | sed 's/_unit.c$$/.c/'`;      \
+        for s in $(TEST_CFILES) ; do                    \
+           if echo $$s | grep $$lookfor >/dev/null; then \
+             src="$$src $$s";                            \
+           fi;                                           \
+          done;                                          \
+         echo "Generate Testing Suite $@ from$$src";    \
+         @top_srcdir@/tools/sg_unit_extractor.pl $$src
+
+simgrid_units_main.c: $(TEST_UNITS)
+endif
+
+###
+### Regenerate what needs to with flex & flexml
+###
+
 
 gras/DataDesc/ddt_parse.yy.c: gras/DataDesc/ddt_parse.yy.l
        @LEX@ -o$@ -Pgras_ddt_parse_ $^
@@ -193,6 +227,10 @@ else
 endif
 endif
 
+###
+### Declare the library content
+###
+
 libgras_la_SOURCES= $(COMMON_SRC) $(RL_SRC) $(AMOK_SRC)
 libgras_la_LDFLAGS = $(VERSION_INFO) @GRAS_DEP@ @LD_DYNAMIC_FLAGS@ -lm 
 
@@ -200,4 +238,5 @@ libsimgrid_la_SOURCES= $(COMMON_SRC) $(SG_SRC) $(AMOK_SRC)
 libsimgrid_la_LDFLAGS = $(VERSION_INFO) @SIMGRID_DEP@ @LD_DYNAMIC_FLAGS@ -lm
 
 
+
 include $(top_srcdir)/acmacro/dist-files.mk