From dff358f9fb99d46e65adba61af01696ce10ebb9e Mon Sep 17 00:00:00 2001
From: Edward Brash <brash@jlab.org>
Date: Wed, 23 Oct 2013 12:59:45 -0400
Subject: [PATCH] Changes to remove dependence on locally packaged SCons

---
 SConscript.py     |  3 +++
 SConstruct.py     |  3 ++-
 src/SConscript.py | 25 +++++++++++++++++++------
 3 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/SConscript.py b/SConscript.py
index 63f47f4..52beeeb 100644
--- a/SConscript.py
+++ b/SConscript.py
@@ -24,6 +24,9 @@ pbaseenv.RootCint(roothcdict,hcheaders)
 pbaseenv.SharedObject(target = roothcobj, source = roothcdict)
 
 #######  Start of main SConscript ###########
+
+print ('LIBS = %s\n' % pbaseenv.subst('$LIBS'))
+
 analyzer = pbaseenv.Program(target = 'hcana', source = 'src/main.o')
 pbaseenv.Install('./bin',analyzer)
 pbaseenv.Alias('install',['./bin'])
diff --git a/SConstruct.py b/SConstruct.py
index 3dbd510..069202f 100644
--- a/SConstruct.py
+++ b/SConstruct.py
@@ -118,11 +118,12 @@ baseenv.Append(CPPDEFINES = '-DHALLC_MODS')
 
 directorylist = ['./','src','podd','podd/src','podd/hana_decode','podd/hana_scaler']
 
+baseenv.Append(SHLIBSUFFIX ='.'+baseenv.subst('$VERSION'))
 pbaseenv=baseenv.Clone()
 pbaseenv.Append(LIBS=[hallclib,hallalib,dclib,scalerlib])
 baseenv.Append(LIBS=[hallalib,dclib,scalerlib])
 Export('pbaseenv')
 
-SConscript(dirs = directorylist,name='SConscript.py',exports='pbaseenv')
+SConscript(dirs = directorylist,name='SConscript.py',exports='baseenv')
 
 #######  End of SConstruct #########
diff --git a/src/SConscript.py b/src/SConscript.py
index b5e176e..e21494f 100644
--- a/src/SConscript.py
+++ b/src/SConscript.py
@@ -4,7 +4,7 @@
 import os
 import re
 import SCons.Util
-Import('baseenv')
+Import('pbaseenv')
 
 list = Split("""
 THcInterface.cxx THcParmList.cxx THcAnalyzer.cxx \
@@ -25,13 +25,26 @@ THcRawShowerHit.cxx \
 THcAerogel.cxx THcAerogelHit.cxx
 """)
 
-baseenv.Object('main.C')
+pbaseenv.Object('main.C')
 
 sotarget = 'HallC'
 
-#srclib = baseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],SHLIBVERSION=['$VERSION'],LIBS=[''])
-srclib = baseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],LIBS=[''])
+#srclib = pbaseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],SHLIBVERSION=['$VERSION'],LIBS=[''])
+srclib = pbaseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],SHLIBPREFIX='../lib',LIBS=[''])
 print ('Source shared library = %s\n' % srclib)
-baseenv.Install('../',srclib)
-baseenv.Alias('install',['../'])
+
+linkbase =pbaseenv.subst('$SHLIBPREFIX')+sotarget
+
+cleantarget = linkbase+'.so.'+pbaseenv.subst('$VERSION')
+localmajorcleantarget = '../'+linkbase+'.so'
+
+print('cleantarget = %s\n' % cleantarget)
+print('localmajorcleantarget = %s\n' % localmajorcleantarget)
+try:
+	os.symlink(cleantarget,localmajorcleantarget)
+except:
+	print " Continuing ... "
+
+#baseenv.Install('../',srclib)
+#baseenv.Alias('install',['../'])
 
-- 
GitLab