From 29e90cdaa4d3db2ec5975bdbcedca925f6e7d79b Mon Sep 17 00:00:00 2001
From: "Stephen A. Wood" <saw@jlab.org>
Date: Wed, 29 Feb 2012 16:08:18 -0500
Subject: [PATCH] Hall A analyzer a submodule. Make setup scripts work from
 anywhere (so can be added to login script) Makefile builds the Hall A
 analyzer.

---
 Makefile             | 13 ++++++++++++-
 setup.csh            | 20 ++++++++++++++++++++
 setup.sh             |  5 +++--
 src/THcInterface.cxx |  2 +-
 4 files changed, 36 insertions(+), 4 deletions(-)
 create mode 100644 setup.csh

diff --git a/Makefile b/Makefile
index d7e5091..03a70d5 100644
--- a/Makefile
+++ b/Makefile
@@ -125,9 +125,10 @@ DISTFILE      = $(PKG).tar.gz
 #------------------------------------------------------------------------------
 OBJ           = $(SRC:.cxx=.o)
 RCHDR	      = $(SRC:.cxx=.h) src/THcGlobals.h
-HDR           = $(SRC:.cxx=.h)
+HDR           = $(SRC:.cxx=.h) 
 DEP           = $(SRC:.cxx=.d) src/main.d
 OBJS          = $(OBJ) $(USERDICT).o
+HDR_COMPILEDATA = $(ANALYZER)/src/ha_compiledata.h
 
 all:		$(USERLIB) hcana
 
@@ -137,6 +138,8 @@ LIBDC        := $(LIBDIR)/libdc.so
 LIBSCALER    := $(LIBDIR)/libscaler.so
 HALLALIBS    := -L$(LIBDIR) -lHallA -ldc -lscaler
 
+src/THcInterface.d:  $(HDR_COMPILEDATA)
+
 hcana:		src/main.o $(LIBDC) $(LIBSCALER) $(LIBHALLA) $(USERLIB)
 		$(LD) $(LDFLAGS) $< $(HALLALIBS) -L. -lHallC $(GLIBS) -o $@
 
@@ -144,6 +147,14 @@ $(USERLIB):	$(HDR) $(OBJS)
 		$(LD) $(LDFLAGS) $(SOFLAGS) -o $@ $(OBJS)
 		@echo "$@ done"
 
+$(HDR_COMPILEDATA): $(ANALYZER)/Makefile
+		@echo "Building Podd"		
+		@cd $(ANALYZER) ; make
+
+$(LIBHALLA): $(ANALYZER)/Makefile
+		@echo "Building Podd"		
+		@cd $(ANALYZER) ; make
+
 $(USERDICT).cxx: $(RCHDR) $(HDR) $(LINKDEF)
 	@echo "Generating dictionary $(USERDICT)..."
 	$(ROOTSYS)/bin/rootcint -f $@ -c $(INCLUDES) $^
diff --git a/setup.csh b/setup.csh
new file mode 100644
index 0000000..3eccf7f
--- /dev/null
+++ b/setup.csh
@@ -0,0 +1,20 @@
+#!/bin/csh
+
+set called=($_)
+if ("$called" != "") then
+  set scriptdir=$called[2]
+else
+  set scriptdir=$0
+endif
+set MYDIR=`dirname $scriptdir`
+set MYDIR=`cd $MYDIR && pwd`    # ensure absolute path
+setenv ANALYZER $MYDIR/podd
+setenv HCANALYZER $MYDIR
+# Check if LD_LIBRARY_PATH is defined
+if ( $LD_LIBRARY_PATH == "" ) then
+   setenv LD_LIBRARY_PATH ""
+endif
+setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${ANALYZER}:${HCANALYZER}"
+
+
+
diff --git a/setup.sh b/setup.sh
index 2b42d96..8dea062 100644
--- a/setup.sh
+++ b/setup.sh
@@ -1,7 +1,8 @@
 #!/bin/bash
 
-export ANALYZER=/home/saw/ROOT/analyzer-1.5.22
-export HCANALYZER=/home/saw/ROOT/HALLC
+MYDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+export ANALYZER=${MYDIR}/podd
+export HCANALYZER=${MYDIR}
 # Check if defined
 if [ ! ${LD_LIBRARY_PATH} ]; then
   export LD_LIBRARY_PATH=""
diff --git a/src/THcInterface.cxx b/src/THcInterface.cxx
index a4c6d04..023c2ab 100644
--- a/src/THcInterface.cxx
+++ b/src/THcInterface.cxx
@@ -201,7 +201,7 @@ void THcInterface::PrintLogo( Bool_t lite )
      Printf("  ************************************************");
      Printf("  *                                              *");
      Printf("  *            W E L C O M E  to  the            *");
-     Printf("  *       H A L L A   C++  A N A L Y Z E R       *");
+     Printf("  *          H A L L C ++  A N A L Y Z E R       *");
      Printf("  *                                              *");
      Printf("  *        Release %10s %18s *",halla_version,__DATE__);
      Printf("  *  Based on ROOT %8s %20s *",root_version,root_date);
-- 
GitLab