Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Ok, I'm a lammer, and I cannot get the rule from an unit to its mother file right...
[simgrid.git] / src / Makefile.am
index 03ca4dc..664265c 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 \
   \
@@ -168,8 +170,63 @@ AMOK_SRC= \
   amok/base.c \
   amok/Bandwidth/bandwidth.c amok/Bandwidth/saturate.c
 
+###
+### Testing infrastructure
+###
+
+# Test files must be added both to the TEST_CFILES and TEST_UNITS because
+# if I compute TEST_UNITS from TEST_CFILES, automake fails to note that they
+# are generated. Sorry about that.
+
+# If you add a test unit, you should regenerate simgrid_units_main.c from scratch:
+# rm -f simgrid_units_main.c *_unit.c ; make testall
+
+# Suites and tests run in the given order.
+
+TEST_CFILES=xbt/cunit.c  xbt/ex.c          \
+            xbt/set.c                      \
+            xbt/config.c
+TEST_UNITS= cunit_unit.c ex_unit.c         \
+            set_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
+
+EXTRA_DIST+=$(testall_SOURCES)
+
+# %_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";    
+         
+if MAINTAINER_MODE
+cunit_unit.c: xbt/cunit.c
+       @top_srcdir@/tools/sg_unit_extractor.pl $^
+ex_unit.c:    xbt/ex.c
+       @top_srcdir@/tools/sg_unit_extractor.pl $^
+set_unit.c:   xbt/set.c
+       @top_srcdir@/tools/sg_unit_extractor.pl $^
+config_unit.c: xbt/config.c
+       @top_srcdir@/tools/sg_unit_extractor.pl $^
+
+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 +250,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 +261,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