#Variables
include $(SCT_DAQ_ROOT)/build/Makefile.include
#Commands
include $(SCT_DAQ_ROOT)/build/Makefile.commands

Package := FittingService

#Lists of source files
HDRS := $(wildcard *.h)
SRCS := $(wildcard *.cpp)

ifdef NAGDIR
  INCLUDES += -I$(NAGDIR)/include -INag
  LDLIBS += -L$(NAGDIR) -lnagc
  SRCS += $(wildcard Nag/*.cpp)
  HDRS += $(wildcard Nag/*.h)
  install_headers: $(IncludeDir)/SctFitter/Nag
endif

OBJS := $(SRCS:.cpp=.o)
BINS :=

#Flags
CPPFLAGS += $(ROOTINCLUDES)

#Phony Targets
.PHONY: all c++ java install clean install_lib install_headers distclean test

all: c++ test java
c++: libSctFitter.so

test:
	
java:

install: install_lib install_headers

install_lib: $(LibDir)/libSctFitter.so

install_headers: $(IncludeDir)/SctFitter $(addprefix $(IncludeDir)/SctFitter/,$(HDRS))

distclean: clean
	-rm -f *.d Nag/*.d
clean:
	-rm -f *.o *.so Nag/*.o

#real targets
libSctFitter.so: $(OBJS)
	$(LIBCMD)


$(LibDir)/libSctFitter.so: libSctFitter.so
	$(CPCMD)

$(IncludeDir)/SctFitter/%.h: %.h
	$(CPCMD)

$(IncludeDir)/SctFitter:
	$(MKDIR)

$(IncludeDir)/SctFitter/Nag: $(IncludeDir)/SctFitter
	$(MKDIR)	
	
#Patterns
%.o: %.cpp
	$(CPPCMD)

$(IncludeDir)/$(Package)/%: %
	$(CPCMD)

#Pre-requisites
$(IncludeDir)/$(Package):
	$(MKDIR)

#Include dependancies
%.d: %.cpp
	$(DEPENDCMD)

ifeq ($(INCLUDEDEPENDANCIES),)
include $(SRCS:.cpp=.d)
endif

