File indexing completed on 2025-02-21 09:17:49
0001 CXX = g++
0002 FLAGS = -g -Wno-deprecated -fPIC -m64 -fno-inline -Wno-write-strings
0003
0004
0005 DEPS += $(shell root-config --cflags)
0006 LIBS += $(shell root-config --glibs)
0007
0008
0009 LIBS += -L${EIC_SHELL_PREFIX}/lib
0010 LIBS += -lIRT -ledm4eic
0011 DEPS += -I${EIC_SHELL_PREFIX}/include
0012 DEPS += -I${EIC_SHELL_PREFIX}/include/IRT
0013 DEPS += -Isrc
0014
0015
0016 LIBS += -L/opt/local/lib
0017 LIBS += -lDDCore -lDDRec
0018 LIBS += -lpodio -lpodioRootIO -ledm4hep
0019 LIBS += -lfmt -lspdlog
0020 LIBS += -lG4global -lG4materials -lG4geometry -lG4persistency
0021 DEPS += -I/opt/local/include
0022 FLAGS += -DSPDLOG_FMT_EXTERNAL
0023
0024
0025
0026 BIN_TARGET = bin
0027 SOURCES := $(wildcard src/*.cpp)
0028 EXECUTABLES := $(addprefix $(BIN_TARGET)/, $(basename $(notdir $(SOURCES))))
0029
0030 EICRECON_DIR = ${DRICH_DEV}/EICrecon/src/services/geometry/richgeo
0031 DEPS += -I$(EICRECON_DIR)
0032
0033 LIB_TARGET = lib
0034 RICHGEO_LIB_NAME = RichGeo
0035 RICHGEO_LIB = $(LIB_TARGET)/lib$(RICHGEO_LIB_NAME).so
0036 RICHGEO_ROOT = $(EICRECON_DIR)
0037 RICHGEO_SOURCES := $(wildcard $(RICHGEO_ROOT)/IrtGeo*.cc) $(RICHGEO_ROOT)/ReadoutGeo.cc
0038 RICHGEO_HEADERS := $(wildcard $(RICHGEO_ROOT)/IrtGeo*.h) $(RICHGEO_ROOT)/ReadoutGeo.h $(RICHGEO_ROOT)/RichGeo.h
0039
0040 PIXEL_GAP_SOURCE = src/test_pixel_gap_cuts.cpp
0041 PIXEL_GAP_EXECUTABLE = $(BIN_TARGET)/test_pixel_gap_cuts
0042 SOURCES := $(filter-out $(PIXEL_GAP_SOURCE), $(SOURCES))
0043 EXECUTABLES := $(filter-out $(PIXEL_GAP_EXECUTABLE), $(EXECUTABLES))
0044
0045
0046
0047 all: $(EXECUTABLES) $(RICHGEO_LIB) $(PIXEL_GAP_EXECUTABLE)
0048
0049 $(EXECUTABLES): $(BIN_TARGET)/%: src/%.cpp
0050 mkdir -p $(BIN_TARGET)
0051 @echo "----- build $@.o -----"
0052 $(CXX) -c $< -o $@.o $(FLAGS) $(DEPS)
0053 @echo "--- make executable $@"
0054 $(CXX) -o $@ $@.o $(LIBS)
0055 $(RM) $@.o
0056
0057 $(RICHGEO_LIB): $(RICHGEO_HEADERS) $(RICHGEO_SOURCES)
0058 ifeq ($(IRT_ROOT_DICT_FOUND),1)
0059 mkdir -p $(LIB_TARGET)
0060 @echo "----- build $@ -----"
0061 $(CXX) $(RICHGEO_SOURCES) -shared -o $@ $(FLAGS) $(DEPS) $(LIBS)
0062 else
0063 @echo "WARNING: skip building $@ since IRT ROOT dict not found"
0064 endif
0065
0066 $(PIXEL_GAP_EXECUTABLE): $(PIXEL_GAP_SOURCE) $(RICHGEO_LIB)
0067 ifeq ($(IRT_ROOT_DICT_FOUND),1)
0068 mkdir -p $(BIN_TARGET)
0069 @echo "----- build $@.o -----"
0070 $(CXX) -c $< -o $@.o $(FLAGS) $(DEPS)
0071 @echo "--- make executable $@"
0072 $(CXX) -o $@ $@.o $(LIBS) -L$(LIB_TARGET) -l$(RICHGEO_LIB_NAME)
0073 $(RM) $@.o
0074 else
0075 @echo "WARNING: skip building $@ since IRT ROOT dict not found"
0076 endif
0077
0078 clean:
0079 @echo "CLEAN ======================================================"
0080 $(RM) $(EXECUTABLES) $(PIXEL_GAP_EXECUTABLE) $(RICHGEO_LIB)