X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6511b78ff810ead55a110d42b01a08255a55b56d..26f971e8c5c6f6defe3f4166879a3701f6cce9ed:/src/gras/Makefile.am diff --git a/src/gras/Makefile.am b/src/gras/Makefile.am index 27ed9ed18c..40bc8dc13d 100644 --- a/src/gras/Makefile.am +++ b/src/gras/Makefile.am @@ -1,20 +1,71 @@ SUBDIRS=. Tests -DISTCLEANFILES=Makefile.in -INCLUDES= -I$(top_srcdir)/src/include \ - @CFLAGS_XML@ @CFLAGS_SimGrid@ -EXTRA_DIST= \ - gras_private.h \ - Core/dict_private.h -# DataDesc/parse.yy.l +AM_CFLAGS= -DNDEBUG +# -DNLOG cuts absolutely all logs at compilation time. +# -DNDEBUG cuts asserts and logs at "trace" and "debug" levels. -lib_LIBRARIES= libgrasrl.a libgrassg.a +# -g -ffast-math -funroll-loops -O3 -fno-strict-aliasing +# Those should be added by configure when using gcc +# fast-math is nasty when using IEEE floating point semantic +# strict-aliasing breaks my type-punning bad habit. -# Core/dict_multi.c -# Common/gras.c Common/gras_datadesc.c Common/gras_msg.c -# Messaging/messaging.c -# Messaging/datadesc_simple.c -# Transport/transport_sg.c + +MAINTAINERCLEANFILES=Makefile.in +INCLUDES= @CFLAGS_SimGrid@ + +EXTRA_DIST= ./gras_private.h \ + Core/dict_private.h \ + Transport/transport_interface.h \ + Virtu/virtu_interface.h \ + Virtu/virtu_rl.h \ + Virtu/virtu_sg.h \ + DataDesc/ddt_parse.yy.l DataDesc/ddt_parse.yy.c + +#LIBRARY_VERSION= 0:0:0 +# | | | +# +------+ | +---+ +# | | | +# current:revision:age +# | | | +# | | +- Increment if interfaces have been added +# | | Set to zero if interfaces have been removed or +# | | changed +# | +- Increment if source code has changed +# | Set to zero if current is incremented +# +- Increment if interfaces have been added, removed or changed + +VERSION_INFO= -release 20040722 -version-info 0:0:0 +# from `info libtool "Updating version info"` +# and `info libtool "Release numbers"` +# +# A) For stable library (interface wise), you should use --version-info: +# +# - Begin with C:R:A = 0:0:0 (ie here, VERSION_INFO= -version-info 0:0:0) +# - Do not update it before public release (keep numbers small) +# +# ----------------------------------------------------------------------+ +# + Interface | code of existing | Interface | New version info | +# | removal/change? | interface changed? | addition? | | +# +-----------------+--------------------+-----------+------------------+ +# | yes | must be yes ;) | | C++ : 0 : 0 | +# | no | yes | yes | C : R++ : A++ | +# | no | yes | no | C : R++ : A | +# | no | no | yes | C : R : A++ | +# | no | no | no | C : R : A | +# +-----------------+--------------------+-----------+------------------+ +# +# B) For rapidely changing library, you should go for the -release flag +# +# It modifies the library name, and you thus cannot say that a library +# using this trick is ready for a "stable" release (say, in Debian). + +if HAVE_SG + lib_LTLIBRARIES= libgrasrl.la libgrassg.la +else + lib_LTLIBRARIES= libgrasrl.la +endif + +# Core/config.c COMMON_S=\ \ @@ -24,41 +75,34 @@ COMMON_S=\ Core/dict.c Core/dict_elm.c Core/dict_cursor.c \ Core/set.c \ \ - Core/config.c \ \ - Transport/transport.c Transport/transport_private.h \ - Transport/transport_plugin_file.c \ - Transport/transport_plugin_tcp.c \ - Transport/transport_plugin_sg.c \ + Transport/transport.c Transport/transport_private.h Transport/transport_plugin_buf.c \ \ - DataDesc/ddt_create.c DataDesc/ddt_declare.c \ - DataDesc/ddt_remote.c DataDesc/ddt_use.c \ - DataDesc/cbps.c DataDesc/datadesc.c \ - DataDesc/datadesc_interface.h DataDesc/datadesc_private.h - -# DataDesc/datadesc.c \ -# DataDesc/tools.c \ -# DataDesc/categories.h \ -# DataDesc/connection.h \ -# DataDesc/sequence.h \ -# DataDesc/net_driver.c DataDesc/net_driver.h \ -# DataDesc/net_driver_fd.c DataDesc/net_interface_fd.h \ -# DataDesc/type_driver_rl.c DataDesc/type_interface_rl.h \ -# DataDesc/type_driver.c DataDesc/type_driver.h \ -# DataDesc/message.c DataDesc/message.h \ -# DataDesc/type.c DataDesc/type.h \ -# DataDesc/parse.c DataDesc/parse.yy.h DataDesc/parse.yy.c \ -# DataDesc/vars.c + DataDesc/ddt_create.c \ + DataDesc/ddt_convert.c DataDesc/ddt_exchange.c \ + DataDesc/cbps.c DataDesc/datadesc.c \ + DataDesc/datadesc_interface.h DataDesc/datadesc_private.h \ + DataDesc/ddt_parse.c DataDesc/ddt_parse.yy.c DataDesc/ddt_parse.yy.h \ + \ + Msg/msg.c Msg/msg_interface.h Msg/msg_private.h \ + \ + Virtu/process.c -DataDesc/parse.yy.c: DataDesc/parse.yy.l - flex -o$@ -Pgras_ddt_ $^ +# DataDesc/ddt_declare.c -libgrasrl_a_SOURCES= $(COMMON_S) \ - Transport/rl_transport.c \ - Virtu/rl_process.c Virtu/rl_time.c Virtu/rl_conditional.c +DataDesc/ddt_parse.yy.c: DataDesc/ddt_parse.yy.l + @LEX@ -o$@ -Pgras_ddt_parse_ $^ -libgrassg_a_SOURCES= $(COMMON_S) \ - Transport/sg_transport.c \ - Virtu/sg_process.c Virtu/sg_time.c Virtu/sg_conditional.c +libgrasrl_la_SOURCES= $(COMMON_S) \ + Transport/rl_transport.c Transport/transport_plugin_tcp.c Transport/transport_plugin_file.c \ + \ + Virtu/rl_process.c Virtu/rl_time.c Virtu/rl_conditional.c +libgrasrl_la_LDFLAGS = $(VERSION_INFO) -# RL/gras_rl.c RL/gras_rl.h FIXME +if HAVE_SG + libgrassg_la_SOURCES= $(COMMON_S) \ + Transport/sg_transport.c Transport/transport_plugin_sg.c \ + \ + Virtu/sg_process.c Virtu/sg_time.c Virtu/sg_conditional.c + libgrassg_la_LDFLAGS = $(VERSION_INFO) +endif