1 # Ce makefile permet la construction de la DLL simgrid.
5 # Répertoire d'installation du compilateur
10 # On utilise le compilateur BCC32
15 # On utilise le linker ilink32
20 # Le nom du projet de compilation (ici la DLL)
21 PROJECT=C:\dev\cvs\simgrid\build\builder6\simgrid\dll\debug\simgrid.dll
23 # Les options du compilateur BCC32
24 # -tWD Génèrer une DLL
25 # -tWM Génèrer une DLL multithread
26 # -c Ne pas effectuer la liaison
27 # -n Le répertoire est le répertoire obj
28 # -Od Désactiver toutes les optiomisations du compilateur
29 # -r- Désactivation de l'utilisation des variables de registre
30 # -b- Les énumérations ont une taille de un octet si possible
31 # -k- Activer le cadre de pile standart
32 # -y Générer les numéros de ligne pour le débogage
33 # -v Activer le débogage du code source
34 # -vi- Ne pas controler le développement des fonctions en ligne
35 # -a8 Aligner les données sur une frontière de 8 octets
36 # -p- Utiliser la convention d'appel C
39 #CFLAGS=-tWD -Vmp -X- -tWM- -c -nobj -Od -Vx -Ve -r- -b- -k -y -v -vi-
40 CFLAGS=-tWD -X- -tWM -c -nsimgrid\obj -Od -r- -b- -k -y -v -vi- -a8 -p-
42 # Les options du linker
43 # -l Répertoire de sortie intermédiaire
44 # -I Chemin du répertoire de sortie intermédiaire
45 # -c- La liaison n'est pas sensible à la casse
48 # -x Supprimer la création du fichier map
49 # -Gn Ne pas génèrer de fichier d'état
50 # -Gi Génèrer la bibliothèque d'importation
51 # -w Activer tous les avertissements
52 # -v Inclure les informations de débogage complètes
54 #LFLAGS = -l lib\debug -Iobj -D"" -c- -aa -Tpd -x -Gn -Gi -w -v
55 LFLAGS = -lsimgrid\lib\debug -Isimgrid\obj -c- -aa -Tpd -x -Gn -Gi -w -v
57 # Liste des avertissements désactivés
58 # -w-aus Une valeur est affectée mais n'est jamais utilisée
59 # -w-ccc Une condition est toujours vraie ou toujours fausse
60 # -w-csu Comparaison entre une valeur signée et une valeur non signée
61 # -w-dup La redéfinition d'une macro n'est pas identique
62 # -w-inl Les fonctions ne sont pas développées inline
63 # -w-par Le paramètre n'est jamais utilisé
64 # -w-pch Impossible de créer l'en-tête précompilée
65 # -w-pia Affectation incorrecte possible
66 # -w-rch Code inatteignable
67 # -w-rvl La fonction doit renvoyer une valeur
68 # -w-sus Conversion de pointeur suspecte
70 # Chemins des répertoires contenant des librairies (importation ou de code objet)
71 LIBPATH = $(BCB)\Lib;$(BCB)\Lib\obj;simgrid\obj
73 WARNINGS=-w-aus -w-ccc -w-csu -w-dup -w-inl -w-par -w-pch -w-pia -w-rch -w-rvl -w-sus
75 # Liste des chemins d'inclusion
76 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
78 # Macro définies par l'utilisateur.
79 # Cette macro permet de définir l'ensemble des fonctions exportées dans la DLL
80 USERDEFINES=DLL_EXPORT
83 # Macros du système définies
84 # On utilise pas la VCL ni la RTL dynamique et on utilise le mode de controle de type NO_STRICT
85 SYSDEFINES=NO_STRICT;_NO_VCL;_RTLDLL
87 # Liste des chemins des répertoires qui contiennent les fichiers de code source .c
88 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
90 # On demande au compilateur de rechercher les fichiers de code source c dans la liste des chemins définis ci-dessus
96 # Liste des fichiers objets à générés et dont dépendent la dll
97 OBJFILES = simgrid.obj snprintf.obj graphxml_parse.obj heap.obj \
98 log.obj log_default_appender.obj mallocator.obj set.obj \
99 swag.obj sysdep.obj xbt_main.obj xbt_matrix.obj \
100 asserts.obj config.obj cunit.obj dict.obj \
101 dict_cursor.obj dict_elm.obj dict_multi.obj dynar.obj \
102 ex.obj fifo.obj graph.obj gras.obj transport.obj \
103 ddt_parse.yy.obj cbps.obj datadesc.obj ddt_convert.obj \
104 ddt_create.obj ddt_exchange.obj ddt_parse.obj timer.obj \
105 msg.obj rpc.obj process.obj gras_module.obj \
106 surf.obj trace_mgr.obj maxmin.obj \
107 workstation_KCCFLN05.obj cpu.obj network.obj \
108 network_dassf.obj surf_timer.obj surfxml_parse.obj \
109 workstation.obj deployment.obj environment.obj global.obj \
110 gos.obj host.obj m_process.obj msg_config.obj task.obj \
111 sd_workstation.obj sd_global.obj sd_link.obj sd_task.obj \
112 transport_plugin_sg.obj sg_transport.obj sg_dns.obj \
113 sg_emul.obj sg_process.obj sg_time.obj sg_msg.obj \
114 xbt_peer.obj context.obj amok_base.obj peermanagement.obj
117 ALLOBJ = c0d32.obj $(OBJFILES)
119 ALLLIB = $(LIBFILES) import32.lib cw32i.lib
121 # Compilation de la DLL
122 $(PROJECT): $(OBJFILES)
123 $(BCB)\BIN\$(LINKER) @&&!
124 $(LFLAGS) -L$(LIBPATH) +
130 # Comme implicite de compilation des fichiers de code source c en fichier objet (pas de liaison)
132 $(BCB)\BIN\$(BCC32) $(CFLAGS) $(WARNINGS) -I$(INCLUDEPATH) -D$(USERDEFINES);$(SYSDEFINES) {$< }