Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
a makefile to build the simgrid dll
authorcherierm <cherierm@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 21 Mar 2007 13:57:04 +0000 (13:57 +0000)
committercherierm <cherierm@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 21 Mar 2007 13:57:04 +0000 (13:57 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3315 48e7efb5-ca39-0410-a469-dd3cf9ba447f

build/builder6/simgrid.mak [new file with mode: 0644]

diff --git a/build/builder6/simgrid.mak b/build/builder6/simgrid.mak
new file mode 100644 (file)
index 0000000..ab31d1e
--- /dev/null
@@ -0,0 +1,132 @@
+# Ce makefile permet la construction de la DLL simgrid.
+
+.autodepend
+
+# Répertoire d'installation du compilateur
+!if !$d(BCB)
+BCB = $(MAKEDIR)\..
+!endif
+
+# On utilise le compilateur BCC32
+!if !$d(BCC32)
+BCC32 = bcc32
+!endif
+
+# On utilise le linker ilink32
+!if !$d(LINKER)
+LINKER = ilink32
+!endif
+
+# Le nom du projet de compilation (ici la DLL)
+PROJECT=C:\buildslave\projects\simgrid\builddir\build\build\builder6\bin\simgrid.dll
+
+# Les options du compilateur BCC32
+# -tWD         Génèrer une DLL
+# -tWM         Génèrer une DLL multithread
+# -c           Ne pas effectuer la liaison
+# -n           Le répertoire est le répertoire obj
+# -Od          Désactiver toutes les optiomisations du compilateur
+# -r-          Désactivation de l'utilisation des variables de registre
+# -b-          Les énumérations ont une taille de un octet si possible
+# -k-          Activer le cadre de pile standart
+# -y           Générer les numéros de ligne pour le débogage
+# -v           Activer le débogage du code source
+# -vi-         Ne pas controler le développement des fonctions en ligne
+# -a8          Aligner les données sur une frontière de 8 octets
+# -p-          Utiliser la convention d'appel C
+       
+#CFLAGS=-tWD -Vmp -X- -tWM- -c -nobj -Od -Vx -Ve -r- -b- -k -y -v -vi- 
+CFLAGS=-tWD -X- -tWM -c -nobj -Od -r- -b- -k -y -v -vi- -a8 -p-
+
+# Les options du linker
+# -l           Répertoire de sortie intermédiaire
+# -I           Chemin du répertoire de sortie intermédiaire
+# -c-          La liaison n'est pas sensible à la casse
+# -aa          ?
+# -Tpd         ?
+# -x           Supprimer la création du fichier map
+# -Gn          Ne pas génèrer de fichier d'état
+# -Gi          Génèrer la bibliothèque d'importation
+# -w           Activer tous les avertissements         
+# -v           Inclure les informations de débogage complètes
+
+#LFLAGS = -l lib\debug -Iobj -D"" -c- -aa -Tpd -x -Gn -Gi -w -v
+LFLAGS = -llib\debug -Iobj -c- -aa -Tpd -x -Gn -Gi -w -v
+
+# Liste des avertissements désactivés
+# -w-aus       Une valeur est affectée mais n'est jamais utilisée
+# -w-ccc       Une condition est toujours vraie ou toujours fausse
+# -w-csu       Comparaison entre une valeur signée et une valeur non signée
+# -w-dup       La redéfinition d'une macro n'est pas identique
+# -w-inl       Les fonctions ne sont pas développées inline
+# -w-par       Le paramètre n'est jamais utilisé
+# -w-pch       Impossible de créer l'en-tête précompilée
+# -w-pia       Affectation incorrecte possible
+# -w-rch       Code inatteignable
+# -w-rvl       La fonction doit renvoyer une valeur
+# -w-sus       Conversion de pointeur suspecte
+
+# Chemins des répertoires contenant des librairies (importation ou de code objet)
+LIBPATH = $(BCB)\Lib;$(BCB)\Lib\obj;obj
+
+WARNINGS=-w-aus -w-ccc -w-csu -w-dup -w-inl -w-par -w-pch -w-pia -w-rch -w-rvl -w-sus 
+
+# Liste des chemins d'inclusion
+INCLUDEPATH=..\..\src\amok\PeerManagement;..\..\src\amok;..\..\src\simdag;..\..\src\msg;..\..\src\surf;..\..\src\gras\Virtu;..\..\src\gras\Msg;..\..\src\gras\DataDesc;..\..\src\gras\Transport;..\..\src\gras;..\..\src\xbt;..\..\build\builder6\dll;$(BCB)\include;..\..\src;..\..\include;..\..\src\include;$(BCB)\include\dinkumware 
+
+# Macro définies par l'utilisateur.
+# Cette macro permet de définir l'ensemble des fonctions exportées dans la DLL
+USERDEFINES=DLL_EXPORT 
+
+
+# Macros du système définies
+# On utilise pas la VCL ni la RTL dynamique et on utilise le mode de controle de type NO_STRICT
+SYSDEFINES=NO_STRICT;_NO_VCL;_RTLDLL
+
+# Liste des chemins des répertoires qui contiennent les fichiers de code source .c
+SRCDIR=simgrid;..\..\src\gras;..\..\src\msg;..\..\src\xbt;..\..\src\gras\Transport;..\..\src\gras\DataDesc;..\..\src\gras\Msg;..\..\src\gras\Virtu;..\..\src\surf;..\..\src\simdag;..\..\src\gras\Transport;..\..\src\gras\Virtu;..\..\src\gras\Msg;..\..\src\amok;..\..\src\amok\PeerManagement
+
+# On demande au compilateur de rechercher les fichiers de code source c dans la liste des chemins définis ci-dessus
+!if $d(SRCDIR)
+.path.c   = $(SRCDIR)
+!endif
+
+
+# Liste des fichiers objets à générés et dont dépendent la dll
+OBJFILES = simgrid.obj snprintf.obj graphxml_parse.obj heap.obj \
+    log.obj log_default_appender.obj mallocator.obj set.obj \
+    swag.obj sysdep.obj xbt_main.obj xbt_matrix.obj \
+    asserts.obj config.obj cunit.obj dict.obj \
+    dict_cursor.obj dict_elm.obj dict_multi.obj dynar.obj \
+    ex.obj fifo.obj graph.obj gras.obj transport.obj \
+    ddt_parse.yy.obj cbps.obj datadesc.obj ddt_convert.obj \
+    ddt_create.obj ddt_exchange.obj ddt_parse.obj timer.obj \
+    msg.obj rpc.obj process.obj gras_module.obj \
+    surf.obj trace_mgr.obj maxmin.obj \
+    workstation_KCCFLN05.obj cpu.obj network.obj \
+    network_dassf.obj surf_timer.obj surfxml_parse.obj \
+    workstation.obj deployment.obj environment.obj global.obj \
+    gos.obj host.obj m_process.obj msg_config.obj task.obj \
+    sd_workstation.obj sd_global.obj sd_link.obj sd_task.obj \
+    transport_plugin_sg.obj sg_transport.obj sg_dns.obj \
+    sg_emul.obj sg_process.obj sg_time.obj sg_msg.obj \
+    xbt_peer.obj context.obj amok_base.obj peermanagement.obj 
+
+LIBFILES =
+ALLOBJ = c0d32.obj $(OBJFILES)
+
+ALLLIB = $(LIBFILES) import32.lib cw32i.lib
+
+# Compilation de la DLL
+$(PROJECT): $(OBJFILES)
+       $(BCB)\BIN\$(LINKER) @&&!
+    $(LFLAGS) -L$(LIBPATH) +
+    $(ALLOBJ), +
+    $(PROJECT),, +
+    $(ALLLIB)
+!
+
+# Comme implicite de compilation des fichiers de code source c en fichier objet (pas de liaison)       
+.c.obj:
+       $(BCB)\BIN\$(BCC32) $(CFLAGS) $(WARNINGS) -I$(INCLUDEPATH) -D$(USERDEFINES);$(SYSDEFINES) {$< }