# # # $Header$ # # Things common to both library and executable builds live in Makefile.common include $(HALLD_HOME)/src/BMS/Makefile.common .PHONY: mkdirs clean env VPATH = $(DEP_DIR) # First rule. Make sure directories and dependancy files exist all: mkdirs $(DEPS) $(LIBNAME)($(OBJS)) @rm -f $(DICT_FILES) ifeq ($(OSNAME),Darwin) ranlib $(LIBNAME) endif mkdirs: @mkdir -p $(LIB_DIR) @mkdir -p $(DEP_DIR) clean: rm -rf $(LIBNAME) $(DICT_FILES) .depends *.bak *~ core last.kumac* #*# # Rules to make DEPENDS files from source. Note that these are similar to the # rules in Makefile.bin, but use the implicit rules for archiving objects. %.d : %.cpp @$(DCXX) -MM -MT "$(LIBNAME)($(basename $@).o)" $(CXXFLAGS) $< > $(DEP_DIR)/$@ %.d : %.cc @$(DCXX) -MM -MT "$(LIBNAME)($(basename $@).o)" $(CXXFLAGS) $< > $(DEP_DIR)/$@ %.d : %.cxx @$(DCXX) -MM -MT "$(LIBNAME)($(basename $@).o)" $(CXXFLAGS) $< > $(DEP_DIR)/$@ %.d : %.c @$(DCC) -MM -MT "$(LIBNAME)($(basename $@).o)" $(CFLAGS) $< > $(DEP_DIR)/$@ %.d : %.F @$(DFC) -MM -MT "$(LIBNAME)($(basename $@).o)" $(FFLAGS) $< > $(DEP_DIR)/$@ # Rule to make ROOT dictionary %_Dict.cc: %.h rootcint -f $@ -c $(INCS) $< env: @echo FC = $(FC) @echo CC = $(CC) @echo CXX = $(CXX) @echo FFLAGS = $(FFLAGS) @echo CFLAGS = $(CFLAGS) @echo CXXFLAGS = $(CXXFLAGS) @echo FSRC = $(FSRC) @echo CSRC = $(CSRC) @echo CXXSRC = $(CXXSRC) @echo LIBS = $(LIBS) @echo OSNAME = $(OSNAME) @echo OBJS = $(OBJS) @echo LIBNAME = $(LIBNAME) @echo DEP_DIR = $(DEP_DIR) @echo DEPS = $(DEPS) @echo TMP = $(TMP) @echo PACKAGES = $(PACKAGES) @echo PACKAGE_MAKEFILES = $(PACKAGE_MAKEFILES) @echo HSRC = $(HSRC) @echo DICT_IN = $(DICT_IN) @echo DICT_SRC = $(DICT_SRC) @echo DICT_FILES = $(DICT_FILES)