X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2FMakefile;h=0a778921870b5e0d692690d7fa72bc7757641d59;hp=1675c835a17c6c3ea223e36c6930de7e15a20ceb;hb=a47964940e7918e81acb7f87fd2f1d5d2ff89778;hpb=6feaef2a51f7226c41d69f9e86f605718b78aa02 diff --git a/modules/Makefile b/modules/Makefile index 1675c83..0a77892 100755 --- a/modules/Makefile +++ b/modules/Makefile @@ -1,52 +1,77 @@ -# Répertoire dans lequel se trouve les modules compilés (beam) -rep_ebin = ebin +# coding: utf-8 +# Répertoire dans lequel se trouve les modules compilés (beam) +rep_ebin = ebin + +# Répertoire dans lequel se trouve les fichiers sources +rep_erl = erl + +# Répertoire dans lequel se trouve les fichier hrl (définition de record) +rep_include = include + +# Paramètres du compilateur +# il est possible de compiler en natif en executant : +# $ make NATIVE=true +# les différents tests on montrés que ca n'augmentait pas les performances +# car très lié à la base de données +# TODO : simplifier et éviter les répetitions +ifdef NATIVE + erlc_params = +native -I $(rep_include) -o $(rep_ebin) $< +else + erlc_params = -I $(rep_include) -o $(rep_ebin) $< +endif + +# Compilation de toute l'application euphorik +all: $(rep_ebin)/smtp.beam \ +$(rep_ebin)/euphorik_bd.beam \ +$(rep_ebin)/euphorik_minichat_conversation.beam \ +$(rep_ebin)/euphorik_requests.beam \ +$(rep_ebin)/euphorik_protocole.beam \ +$(rep_ebin)/euphorik_daemon.beam \ +$(rep_ebin)/euphorik_bd.beam \ +$(rep_ebin)/euphorik_bd_admin.beam \ +$(rep_ebin)/euphorik_common.beam \ +$(rep_ebin)/euphorik_test.beam -# Répertoire dans lequel se trouve les fichiers sources -rep_erl = erl - -# Répertoire dans lequel se trouve les fichier hrl (définition de record) -rep_include = include - -# Paramètre du compilateur -erlc_params = -I $(rep_include) -o $(rep_ebin) $< - -# Compilation de toute l'application euphorik -all: $(rep_ebin)/euphorik_bd.beam \ -$(rep_ebin)/minichat.beam \ -$(rep_ebin)/euphorik_requests.beam \ -$(rep_ebin)/euphorik_protocole.beam \ -$(rep_ebin)/captcha.beam \ -$(rep_ebin)/euphorik_format.beam \ -$(rep_ebin)/euphorik_deamon.beam - -# Module pour la gestion de la BD, principalement la création -$(rep_ebin)/euphorik_bd.beam: $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl - erlc $(erlc_params) - -# Module permettant l'ajout et la demande de message dans le minichat -$(rep_ebin)/minichat.beam: $(rep_erl)/minichat.erl $(rep_include)/euphorik_bd.hrl +# Module pour l'envoie d'email +$(rep_ebin)/smtp.beam: $(rep_erl)/smtp.erl erlc $(erlc_params) - -# Module traitant les requêtes AJAX du client javascript d'euphorik -$(rep_ebin)/euphorik_requests.beam: $(rep_erl)/euphorik_requests.erl - erlc $(erlc_params) - -# Module interpretant les messages XML du client -$(rep_ebin)/euphorik_protocole.beam: $(rep_erl)/euphorik_protocole.erl - erlc $(erlc_params) - -# Module pour la génération du captcha -$(rep_ebin)/captcha.beam: $(rep_erl)/captcha.erl + +# Module pour la gestion des données persistante la BD +$(rep_ebin)/euphorik_bd.beam: $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl $(rep_include)/euphorik_defines.hrl erlc $(erlc_params) -# Module pour le formatage -$(rep_ebin)/euphorik_format.beam: $(rep_erl)/euphorik_format.erl - erlc $(erlc_params) - -# Module effectuant periodiquement certaines tâches -$(rep_ebin)/euphorik_deamon.beam: $(rep_erl)/euphorik_deamon.erl - erlc $(erlc_params) - -# Suppression des modules compilés -clean: - rm ebin/*.beam \ No newline at end of file +# Module pour la mise à jour de la BD +$(rep_ebin)/euphorik_bd_admin.beam: $(rep_erl)/euphorik_bd_admin.erl $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl $(rep_include)/euphorik_defines.hrl + erlc $(erlc_params) + +# Module permettant l'extraction des conversations du minichat +$(rep_ebin)/euphorik_minichat_conversation.beam: $(rep_erl)/euphorik_minichat_conversation.erl $(rep_include)/euphorik_bd.hrl + erlc $(erlc_params) + +# Module traitant les requêtes AJAX du client javascript d'euphorik +$(rep_ebin)/euphorik_requests.beam: $(rep_erl)/euphorik_requests.erl $(rep_include)/euphorik_defines.hrl + erlc $(erlc_params) + +# Module interpretant les messages XML du client +$(rep_ebin)/euphorik_protocole.beam: $(rep_erl)/euphorik_protocole.erl $(rep_include)/euphorik_defines.hrl + erlc $(erlc_params) + +# Module pour la génération du captcha +#$(rep_ebin)/captcha.beam: $(rep_erl)/captcha.erl +# erlc $(erlc_params) + +# Module effectuant periodiquement certaines tâches +$(rep_ebin)/euphorik_daemon.beam: $(rep_erl)/euphorik_daemon.erl $(rep_include)/euphorik_defines.hrl $(rep_erl)/euphorik_bd_admin.erl + erlc $(erlc_params) + +# Module avec plein de bordel dedant +$(rep_ebin)/euphorik_common.beam: $(rep_erl)/euphorik_common.erl + erlc $(erlc_params) + +# Module dédié au tests +$(rep_ebin)/euphorik_test.beam: $(rep_erl)/euphorik_test.erl $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl + erlc $(erlc_params) + +# Suppression des modules compilés +clean: + rm ebin/*.beam