# 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) $<
+# 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 \\r
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
+$(rep_ebin)/euphorik_bd_admin.beam: $(rep_erl)/euphorik_bd_admin.erl $(rep_include)/euphorik_bd.hrl $(rep_include)/euphorik_defines.hrl
erlc $(erlc_params)
# Module permettant l'extraction des conversations du minichat
# 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
+$(rep_ebin)/euphorik_daemon.beam: $(rep_erl)/euphorik_daemon.erl $(rep_include)/euphorik_defines.hrl
erlc $(erlc_params)
# Module avec plein de bordel dedant
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
+$(rep_ebin)/euphorik_test.beam: $(rep_erl)/euphorik_test.erl $(rep_include)/euphorik_bd.hrl
erlc $(erlc_params)
# Suppression des modules compilés