include ../Makefile.include
#

SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %.cpp,%.o,$(SRCS))
BINS := $(patsubst %.cpp,%,$(SRCS))
SCRIPTS := setup.sh setup.csh

# Edit the following as appropriate (retain the order!)

# For MT2:
CPPFLAGS += $(MT2LIB_CPPFLAGS)    # see defn in ../Makefile.include
LDFLAGS  += $(MT2LIB_LDFLAGS)     # see defn in ../Makefile.include

# For Minuit2:
CPPFLAGS += $(MINUIT2_CPPFLAGS)   # see defn in ../Makefile.include
LDFLAGS  += $(MINUIT2_LDFLAGS)    # see defn in ../Makefile.include

## For CLHEP:
#CPPFLAGS += $(CLHEP_CPPFLAGS)     # see defn in ../Makefile.include
#LDFLAGS  += $(CLHEP_LDFLAGS)      # see defn in ../Makefile.include

default: $(BINS) $(SCRIPTS)
	@echo 
	@echo	
	@echo "Good! Everything was built successfully."
	@echo
	@echo "Don't forget to put the directory(s) which includes the Minuit2 libraries, and the MT2 library in your LD_LIBRARY_PATH before you run the example programs. If you use bash or csh this might involve you doing something like one of the following:"
	@echo
	@echo ' export LD_LIBRARY_PATH=$${LD_LIBRARY_PATH}:$(MT2LIB_LIB_DIR):$(MINUIT2_LIB_DIR)'
	@echo ' export ROOTSYS=$(ROOTHOME)'
	@echo
	@echo "or"
	@echo
	@echo ' setenv LD_LIBRARY_PATH $${LD_LIBRARY_PATH}:$(MT2LIB_LIB_DIR):$(MINUIT2_LIB_DIR)'
	@echo ' setenv ROOTSYS $(ROOTHOME)'
	@echo

setup.sh:
	echo 'export LD_LIBRARY_PATH=$(MT2LIB_LIB_DIR):$(MINUIT2_LIB_DIR):$${LD_LIBRARY_PATH}' > $@
	echo 'export ROOTSYS=$(ROOTHOME)' >> $@

setup.csh:
	@echo 'setenv LD_LIBRARY_PATH $(MT2LIB_LIB_DIR):$(MINUIT2_LIB_DIR):$${LD_LIBRARY_PATH}' > $@
	@echo 'setenv ROOTSYS $(ROOTHOME)' >> $@

%: %.o
	g++ -ldl -o $@ $< $(LDFLAGS)

%.o: %.cpp
	g++ -c $< $(CPPFLAGS)

$(OBJS) : ExampleEvent.h $(wildcard ../Mt2/*.h)

clean:
	rm -f *.o $(BINS) *~ setup.sh setup.csh M2C_332Calculator_Example
