1 |
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
<project basedir="." default="deploySatInc" name="scripts">
|
3 |
<property environment="env"/>
|
4 |
|
5 |
<!-- CONFIGURATION FILE. The properties in this file overwrite the previous properties -->
|
6 |
<property file="../../KYoda.properties"/>
|
7 |
<!-- CONFIGURATION FILE. The properties in this file overwrite the previous properties -->
|
8 |
|
9 |
<!--
|
10 |
CONFIGURATION PARAMETERS
|
11 |
Modify here the parameters according to your own system
|
12 |
-->
|
13 |
<!-- PAMELA Software(s) root directory -->
|
14 |
<property name="pamSoftware"
|
15 |
value="/home/pamelaprod/yoda"/>
|
16 |
<!-- CERN's ROOT base directory -->
|
17 |
<property name="root"
|
18 |
value="/opt/root"/>
|
19 |
<!-- LOG4CXX base directory -->
|
20 |
<property name="log4cxx"
|
21 |
value="/opt/log4cxx"/>
|
22 |
<!-- ant-contrib base directory -->
|
23 |
<property name="ant-contrib.lib"
|
24 |
value="/opt/ant-contrib/lib"/>
|
25 |
<!-- source base directory -->
|
26 |
<property name="scripts"
|
27 |
value="${basedir}"/>
|
28 |
<property name="scripts.src"
|
29 |
value="${scripts}/src"/>
|
30 |
<property name="scripts.inc"
|
31 |
value="${scripts}/inc"/>
|
32 |
|
33 |
|
34 |
|
35 |
<!--
|
36 |
PARAMETRIZED PARAMETERS
|
37 |
From here to the end there is NO NEED to modify anything
|
38 |
-->
|
39 |
<!-- Linux -->
|
40 |
<property name="local" value="/usr/local"/>
|
41 |
<property name="local.include" value="${local}/include"/>
|
42 |
<property name="local.lib" value="${local}/lib"/>
|
43 |
|
44 |
<!-- CERN's ROOT -->
|
45 |
<property name="root.include" value="${root}/include"/>
|
46 |
<property name="root.lib" value="${root}/lib"/>
|
47 |
|
48 |
<!-- log4cxx -->
|
49 |
<property name="log4cxx.include" value="${log4cxx}/include"/>
|
50 |
<property name="log4cxx.lib" value="${log4cxx}/lib"/>
|
51 |
|
52 |
<!-- ant-contrib library -->
|
53 |
<path id="classpath">
|
54 |
<pathelement location="${ant-contrib.lib}/cpptasks.jar"/>
|
55 |
</path>
|
56 |
|
57 |
|
58 |
<!--
|
59 |
Load definition of C/C++ Tasks and Types
|
60 |
To allow the compilation and linking of C/C++ code
|
61 |
-->
|
62 |
<taskdef classpathref="classpath" loaderref="classpath.loaderRef" resource="cpptasks.tasks"/>
|
63 |
<typedef classpathref="classpath" loaderref="classpath.loaderRef" resource="cpptasks.types"/>
|
64 |
|
65 |
<!--
|
66 |
Load definition of Additional Tasks and Types
|
67 |
-->
|
68 |
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
|
69 |
<classpath>
|
70 |
<pathelement location="${ant-contrib.lib}/ant-contrib.jar"/>
|
71 |
</classpath>
|
72 |
</taskdef>
|
73 |
|
74 |
<target name="initScripts" unless="${compilationFolder}">
|
75 |
<tstamp>
|
76 |
<format property="compilationFolder" pattern="hmsS" unit="millisecond"/>
|
77 |
</tstamp>
|
78 |
<!-- Compiler parameters -->
|
79 |
<property name="compilationFolder.lib" value="${compilationFolder}/lib"/>
|
80 |
<property name="compilationFolder.include" value="${compilationFolder}/include"/>
|
81 |
|
82 |
<!-- scripts parameters -->
|
83 |
<property name="scripts.compilationFolder" value="${env.HOME}/tmp/${compilationFolder}"/>
|
84 |
<property name="scripts.obj" value="${scripts.compilationFolder}/obj"/>
|
85 |
<property name="scripts.lib" value="${scripts.compilationFolder}/lib"/>
|
86 |
<property name="scripts.bin" value="${scripts.compilationFolder}/bin"/>
|
87 |
|
88 |
<!-- Deploy parameters -->
|
89 |
<property name="deploy" value="${pamSoftware}"/>
|
90 |
<property name="deploy.lib" value="${deploy}/lib"/>
|
91 |
<property name="deploy.include" value="${deploy}/include"/>
|
92 |
<property name="deploy.bin" value="${deploy}/bin"/>
|
93 |
<property name="deploy.data" value="${deploy}/data"/>
|
94 |
</target>
|
95 |
|
96 |
<compiler id="scripts-gcc" name="g++">
|
97 |
<includepath location="${local.include}"/>
|
98 |
<includepath location="${log4cxx.include}"/>
|
99 |
<includepath location="${root.include}"/>
|
100 |
<compilerarg value="-O"/>
|
101 |
<compilerarg value="-g"/>
|
102 |
</compiler>
|
103 |
|
104 |
<compiler id="util-fort" name="g77">
|
105 |
<compilerarg value="-c"/>
|
106 |
<compilerarg value="-O0"/>
|
107 |
</compiler>
|
108 |
|
109 |
<linker id="scripts-link">
|
110 |
<libset dir="${root.lib}" libs="Cint, Core, Tree, Hist, Gpad, Graf, Matrix, HistPainter"/>
|
111 |
<libset dir="${log4cxx.lib}" libs="log4cxx"/>
|
112 |
<libset libs="stdc++"/>
|
113 |
</linker>
|
114 |
|
115 |
|
116 |
<!--
|
117 |
Clean the compilation folder
|
118 |
-->
|
119 |
<target description="Clean all build products." name="cleanScripts">
|
120 |
<delete dir="${scripts.compilationFolder}"/>
|
121 |
</target>
|
122 |
|
123 |
<target depends="initScripts" description="compile sgp4" name="sgp4">
|
124 |
<mkdir dir="${scripts.lib}"/>
|
125 |
<mkdir dir="${scripts.obj}"/>
|
126 |
<cc objdir="${scripts.obj}" outfile="${scripts.lib}/sgp4quick" outtype="shared">
|
127 |
<compiler extends="scripts-gcc">
|
128 |
<fileset dir="${scripts.src}" includes="sgp4.cpp">
|
129 |
</fileset>
|
130 |
<includepath location="${scripts.inc}"/>
|
131 |
</compiler>
|
132 |
</cc>
|
133 |
</target>
|
134 |
|
135 |
<target depends="deploysgp4" description="Create initScripts" name="SatInc">
|
136 |
<mkdir dir="${scripts.bin}"/>
|
137 |
<mkdir dir="${scripts.obj}"/>
|
138 |
<cc objdir="${scripts.obj}" outfile="${scripts.bin}/SatInc" outtype="executable">
|
139 |
<compiler extends="scripts-gcc">
|
140 |
<fileset dir="${scripts.src}" includes="InclinationInfo.cpp, SatInc.cpp"/>
|
141 |
<includepath location="${scripts.src}"/>
|
142 |
<includepath location="${scripts.inc}"/>
|
143 |
<includepath location="${pamSoftware}/include/utils"/>
|
144 |
</compiler>
|
145 |
|
146 |
<compiler extends="util-fort">
|
147 |
<fileset dir="${scripts.src}" includes="geopack.f"/>
|
148 |
</compiler>
|
149 |
<linker extends="scripts-link">
|
150 |
<libset dir="${pamSoftware}/lib" libs="yoda, utils"/>
|
151 |
<libset dir="${deploy.lib}" libs="sgp4quick"/>
|
152 |
</linker>
|
153 |
</cc>
|
154 |
</target>
|
155 |
|
156 |
|
157 |
<target depends="SatInc" description="Deploy SatInc" name="deploySatInc">
|
158 |
<mkdir dir="${deploy}"/>
|
159 |
<mkdir dir="${deploy.bin}"/>
|
160 |
<copy todir="${deploy.bin}">
|
161 |
<fileset dir="${scripts.bin}" includes="InclinationInfo, SatInc" excludes="*.*"/>
|
162 |
</copy>
|
163 |
<chmod dir="${deploy.bin}" perm="775" includes="**/*"/>
|
164 |
</target>
|
165 |
|
166 |
<target depends="sgp4" description="Deploy sgp4" name="deploysgp4">
|
167 |
<mkdir dir="${deploy}"/>
|
168 |
<mkdir dir="${deploy.lib}"/>
|
169 |
<!-- <copy todir="${deploy.lib}">
|
170 |
<fileset dir="${scripts.lib}" includes="libsgp4quick.so"/>
|
171 |
</copy> -->
|
172 |
<chmod dir="${deploy.lib}" perm="775" includes="**/*"/>
|
173 |
</target>
|
174 |
|
175 |
|
176 |
</project>
|