From ab91dc84a4216081b612cdeba026121200a430ac Mon Sep 17 00:00:00 2001
From: "Stephen A. Wood" <zviwood@gmail.com>
Date: Wed, 14 Jun 2017 20:52:00 -0400
Subject: [PATCH] Get fixed parts of HallC_LinkDef.h from pre and postamble
 files

---
 SConscript.py                 | 20 ++------------------
 src/HallC_LinkDef.h_postamble |  2 ++
 src/HallC_LinkDef.h_preamble  | 11 +++++++++++
 3 files changed, 15 insertions(+), 18 deletions(-)
 create mode 100644 src/HallC_LinkDef.h_postamble
 create mode 100644 src/HallC_LinkDef.h_preamble

diff --git a/SConscript.py b/SConscript.py
index c1a0618..fdb351d 100644
--- a/SConscript.py
+++ b/SConscript.py
@@ -13,23 +13,7 @@ roothcobj = pbaseenv.subst('$HC_SRC')+'/HallCDict.so'
  
 hcheadersbase = Glob('src/*.h',exclude=['src/THcGlobals.h','src/HallC_LinkDef.h'])
 
-cmd = "echo '#ifdef __CINT__' > src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo ' ' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo '#pragma link off all globals;' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo '#pragma link off all classes;' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo '#pragma link off all functions;' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo ' ' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo '#pragma link C++ global gHcParms;' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo '#pragma link C++ global gHcDetectorMap;' >> src/HallC_LinkDef.h"
-os.system(cmd)
-cmd = "echo ' ' >> src/HallC_LinkDef.h"
+cmd = "cat src/HallC_LinkDef.h_preamble > src/HallC_LinkDef.h"
 os.system(cmd)
 
 for hcheaderfile in hcheadersbase:
@@ -39,7 +23,7 @@ for hcheaderfile in hcheadersbase:
     cmd1 = "echo '#pragma link C++ class %s+;' >> src/HallC_LinkDef.h" % newbasefilename[1]
     os.system(cmd1)
 
-cmd = "echo '#endif' >> src/HallC_LinkDef.h"
+cmd = "cat src/HallC_LinkDef.h_postamble >> src/HallC_LinkDef.h"
 os.system(cmd)
 
 hcheaders = Glob('src/*.h',exclude=['src/HallC_LinkDef.h'])+Glob('src/HallC_LinkDef.h')
diff --git a/src/HallC_LinkDef.h_postamble b/src/HallC_LinkDef.h_postamble
new file mode 100644
index 0000000..5a3d3bc
--- /dev/null
+++ b/src/HallC_LinkDef.h_postamble
@@ -0,0 +1,2 @@
+// Postamble for HallC_Linkdef.h file
+#endif
diff --git a/src/HallC_LinkDef.h_preamble b/src/HallC_LinkDef.h_preamble
new file mode 100644
index 0000000..88e466d
--- /dev/null
+++ b/src/HallC_LinkDef.h_preamble
@@ -0,0 +1,11 @@
+// Preamble to HallC_LinkDef.h file
+
+#ifdef __CINT__
+ 
+#pragma link off all globals;
+#pragma link off all classes;
+#pragma link off all functions;
+ 
+#pragma link C++ global gHcParms;
+#pragma link C++ global gHcDetectorMap;
+ 
-- 
GitLab