# C++ sources
-SRCS = AliITS.cxx AliITSv0.cxx AliITSv1.cxx AliITSv3.cxx AliITSv4.cxx AliITSv5.cxx
+SRCS = AliITS.cxx AliITSv1.cxx AliITSv3.cxx AliITSv5.cxx AliITSdigit.cxx AliITSgeom.cxx AliITSgeomSPD.cxx AliITSgeomSDD.cxx AliITSgeomSSD.cxx AliITSmodule.cxx AliITSmoduleSPD.cxx AliITSmoduleSDD.cxx AliITSmoduleSSD.cxx AliITSdigitSSD.cxx AliITShit.cxx
# Fortran sources
-FSRCS = AliITSf.F
+FSRCS =
# C++ Headers
DICT = ITSCint.cxx
DICTH = $(DICT:.cxx=.h)
-DICTO = $(DICT:.cxx=.o)
+DICTO = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(DICT))
# FORTRAN Objectrs
-FOBJS = $(FSRCS:.F=.o)
+FOBJS = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(FSRCS))
# C Objects
-COBJS = $(CSRCS:.c=.o)
+COBJS = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(CSRCS))
# C++ Objects
-OBJS = $(SRCS:.cxx=.o) $(DICTO)
+OBJS = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(SRCS)) $(DICTO)
# C++ compilation flags
# Target
-SLIBRARY = $(ALICE_ROOT)/lib/libITS.$(SL)
-ALIBRARY = $(ALICE_ROOT)/lib/libITS.a
+SLIBRARY = $(LIBDIR)/libITS.$(SL)
+ALIBRARY = $(LIBDIR)/libITS.a
default: $(SLIBRARY)
-$(ALICE_ROOT)/lib/libITS.$(SL): $(OBJS) $(FOBJS)
+
+$(LIBDIR)/libITS.$(SL): $(OBJS)
$(DICT): $(HDRS)
############################ Dependencies #####################################
-include Make-depend
+-include tgt_$(ALICE_TARGET)/Make-depend
+
+### Target check creates violation reports (.viol), which depend on
+### stripped files (.ii), which in turn depend on preprocessed
+### files (.i). Dependences are in conf/GeneralDef.
+
+CHECKS = $(patsubst %.cxx,check/%.viol,$(SRCS))
+
+check: $(CHECKS)