+PACKREVENG += $(@PACKAGE@PREPROC)
+
+# IRST code smell checker
+
+@PACKAGE@SMELL := $(patsubst %.cxx,@MODULE@/smell/%.smell,$(SRCS))
+
+smell-@MODULE@: $(@PACKAGE@SMELL)
+
+@MODULE@/smell/%_cxx.ml : @MODULE@/%.cxx
+ @[ -d $(dir $@) ] || mkdir -p $(dir $@)
+ $(MUTE)src2srcml $< $@
+
+@MODULE@/smell/%_h.ml : @MODULE@/%.h
+ @[ -d $(dir $@) ] || mkdir -p $(dir $@)
+ $(MUTE)src2srcml $< $@
+
+@MODULE@/smell/%.smell : @MODULE@/smell/%_cxx.ml @MODULE@/smell/%_h.ml
+ $(MUTE)echo smelling $@
+ java -classpath $(SMELL_DETECTOR_DIR):$(SMELL_DETECTOR_DIR)/xom-1.1.jar -Xmx500m SmellDetector $? > $@
+
+.PRECIOUS: $(patsubst %.cxx,@MODULE@/smell/%_h.ml,$(SRCS)) $(patsubst %.cxx,@MODULE@/smell/%_cxx.ml,$(SRCS))
+
+# targets to create .par archives (jgrosseo)
+@PACKAGE@.par: $(patsubst %,@MODULE@/@PACKAGE@/%,$(filter-out dict.%, $(HDRS) $(SRCS) $(DHDR) $(PKGFILE) Makefile Makefile.arch lib@PACKAGE@.pkg PROOF-INF))
+ @echo "Creating archive" $@ ...
+ @cd @MODULE@; tar cfzh ../$@ @PACKAGE@
+ @rm -rf @MODULE@/@PACKAGE@
+ @echo "done"