-MLSRCS = memory.ml custom.ml ptset.ml finiteCofinite.ml tag.ml tagSet.ml options.ml tree.ml ata.ml ulexer.ml xPath.ml main.ml
-MLISRCS = memory.mli sigs.mli ptset.mli finiteCofinite.ml options.mli tag.mli tagSet.mli tree.mli ata.mli ulexer.mli xPath.mli
+BASESRC=custom.ml ptset.ml finiteCofinite.ml tag.ml tagSet.ml options.ml tree.ml ata.ml
+BASEMLI=sigs.mli ptset.mli finiteCofinite.mli tag.mli tagSet.mli options.mli tree.mli ata.mli
+MLSRCS = memory.ml $(BASESRC) ulexer.ml xPath.ml main.ml
+MLISRCS = memory.mli $(BASEMLI) ulexer.mli xPath.mli
+BASEOBJS= $(BASESRC:.ml=.cmx)
+BASEINT= $(BASEMLI:.ml=.cmi)