X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2FMakefile;h=0a778921870b5e0d692690d7fa72bc7757641d59;hp=bd7d76304faa4a4d62973549a6ef4559f7a63e21;hb=a47964940e7918e81acb7f87fd2f1d5d2ff89778;hpb=d46b9cc6453803962960373f4adff4e3b89b5b4d diff --git a/modules/Makefile b/modules/Makefile index bd7d763..0a77892 100755 --- a/modules/Makefile +++ b/modules/Makefile @@ -1,45 +1,77 @@ -# 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è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)/euphorik_minichat_conversation.beam \ -$(rep_ebin)/euphorik_requests.beam \ +# 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 -# 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 +# Module pour l'envoie d'email +$(rep_ebin)/smtp.beam: $(rep_erl)/smtp.erl erlc $(erlc_params) +# 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 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 - erlc $(erlc_params) - -# Module interpretant les messages XML du client -$(rep_ebin)/euphorik_protocole.beam: $(rep_erl)/euphorik_protocole.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 $(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 +# 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_deamon.beam: $(rep_erl)/euphorik_deamon.erl -# erlc $(erlc_params) - -# Suppression des modules compilés -clean: + +# 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