ObjSuf = o SrcSuf = cxx HedSuf = h DllSuf = so CXX = g++ LD = g++ ROOTEXEPATH = $(shell root-config --exec-prefix) ROOTLIBPATH = $(shell root-config --libdir) CXXFLAGS = -O2 -fPIC -Wno-deprecated $(shell root-config --cflags) SOFLAGS = -shared -Wl,-soname, LDFLAGS = -O GO4FIT_LINKDEF = Go4FitLinkDef.$(HedSuf) GO4FIT_DICT = G__Go4Fit GO4FIT_DH = $(GO4FIT_DICT).$(HedSuf) GO4FIT_DS = $(GO4FIT_DICT).$(SrcSuf) GO4FIT_DO = $(GO4FIT_DICT).$(ObjSuf) GO4FIT_H = $(filter-out $(GO4FIT_DH) $(GO4FIT_LINKDEF), $(wildcard *.$(HedSuf))) GO4FIT_S = $(filter-out $(GO4FIT_DS), $(wildcard *.$(SrcSuf))) GO4FIT_O = $(GO4FIT_S:.$(SrcSuf)=.$(ObjSuf)) GO4FIT_LIB = libGo4Fit.$(DllSuf) GO4FIT_MAP = libGo4Fit.rootmap all: $(GO4FIT_LIB) $(GO4FIT_MAP) clean: @rm -f $(GO4FIT_LIB) $(GO4FIT_MAP) $(GO4FIT_O) $(GO4FIT_DO) $(GO4FIT_DH) $(GO4FIT_DS) *.d $(GO4FIT_LIB): $(GO4FIT_O) $(GO4FIT_DO) $(LD) $(SOFLAGS)$(GO4FIT_LIB) $(LDFLAGS) $(GO4FIT_O) $(GO4FIT_DO) -o $(GO4FIT_LIB) @echo "$(Go4FitLib) done" $(GO4FIT_DS) $(GO4FIT_DH): $(GO4FIT_H) $(GO4FIT_LINKDEF) @echo "Generating $(GO4FIT_DICT) dictionary ..." @$(ROOTEXEPATH)/bin/rootcint -f $(GO4FIT_DS) -c -p -I. $(GO4FIT_H) $(GO4FIT_LINKDEF) $(GO4FIT_MAP): $(GO4FIT_LIB) @rm -f $(GO4FIT_MAP) @$(ROOTEXEPATH)/bin/rlibmap -r $(GO4FIT_MAP) -l ./$(GO4FIT_LIB) -d $(ROOTLIBPATH)/libMinuit.so -c $(GO4FIT_LINKDEF) @echo "Fit map file done" .SUFFIXES: .$(SrcSuf) .$(SrcSuf).$(ObjSuf): $(CXX) -c $< $(CXXFLAGS)