5aa796cb5e44cda77d5dcf7b6c94d19a97e5a84e
[ep-processor-libraries/dsplib.git] / ti / dsplib / package.bld
1 /******************************************************************************
2  * FILE PURPOSE: Build description for package ti.dsplib
3  ******************************************************************************
4  * FILE NAME: package.bld  
5  *
6  * DESCRIPTION: This file contains attributes to build and create releases for 
7  *              package ti.dsplib
8  * 
9  * TABS: NONE
10  *
11  * Copyright (C) 2010 Texas Instruments, Inc.
12  ******************************************************************************/
14   var Package=xdc.loadCapsule('ti/mas/swtools/CommonBld.xs');
15   
16   /* Global Variables */
17   Package.bundlename="dsplib";
19   Package.bundletype="kernel";
21   var doxygenstring= " docs/doxygen ";
23   /* Local Variables */
24   
25   var IncludeList=new Array();
26  
27   /* List names of directories */
28  //IncludeList=["DSP_fft16x16","DSP_fft16x32","DSP_fft32x32","DSPF_sp_fftSPxSP"];
29  //IncludeList=["DSP_fft16x16","DSP_fft16x32","DSP_fft32x32","DSPF_sp_fftSPxSP","DSP_fft16x16_imre","DSP_fft16x16r","DSP_fft32x32s","DSP_ifft16x16","DSP_ifft16x16_imre", "DSP_ifft16x32","DSP_ifft32x32"];
30  //IncludeList=["DSP_fft16x16","DSP_fft16x32","DSP_fft32x32","DSPF_sp_fftSPxSP", "DSPF_sp_cholesky", "DSPF_dp_cholesky"];
31  //IncludeList=["DSP_urand32","DSP_urand16","DSPF_sp_urand","DSPF_sp_erand", "DSPF_sp_nrand"]; 
32  //IncludeList=["DSP_fft16x16","DSP_fft16x32","DSP_fft32x32","DSPF_sp_fftSPxSP", "DSPF_sp_lud","DSPF_dp_lud","DSPF_sp_evd","DSPF_dp_evd","DSPF_sp_qrd","DSPF_dp_qrd","DSPF_sp_svd","DSPF_dp_svd"];
33  
34   /* Command line handling */
35   Package.args["knl"] = {
36     value:"knl",
37       action: function(value) {
38         IncludeList = new Array(value);
39       },
40     usageComment: "       Select a kernel to compile"
41   }
44  var ExcludeList=[
45                   {name:"DSPF_sp_cholesky_cmplx",srcDir:"c64P"},
46                   {name:"DSPF_dp_cholesky_cmplx",srcDir:"c64P"},
47                   {name:"DSPF_sp_lud_cmplx",srcDir:"c64P"},
48                   {name:"DSPF_dp_lud_cmplx",srcDir:"c64P"},
49                   {name:"DSPF_sp_lud_inv_cmplx",srcDir:"c64P"},
50                   {name:"DSPF_dp_lud_inv_cmplx",srcDir:"c64P"},
51                   {name:"DSPF_sp_lud_sol_cmplx",srcDir:"c64P"},
52                   {name:"DSPF_dp_lud_sol_cmplx",srcDir:"c64P"},
53                   {name:"DSPF_sp_qrd_cmplx",srcDir:"c64P"},
54                   {name:"DSPF_dp_qrd_cmplx",srcDir:"c64P"},
55                   {name:"DSPF_sp_svd_cmplx",srcDir:"c64P"},
56                   {name:"DSPF_dp_svd_cmplx",srcDir:"c64P"},                               
57                   {name:"DSPF_sp_lud",srcDir:"c64P"},
58                   {name:"DSPF_dp_lud",srcDir:"c64P"},
59                   {name:"DSPF_sp_lud_inv",srcDir:"c64P"},
60                   {name:"DSPF_dp_lud_inv",srcDir:"c64P"},
61                   {name:"DSPF_sp_lud_sol",srcDir:"c64P"},
62                   {name:"DSPF_dp_lud_sol",srcDir:"c64P"},
63                   {name:"DSPF_sp_qrd",srcDir:"c64P"},
64                   {name:"DSPF_dp_qrd",srcDir:"c64P"},
65                   {name:"DSPF_sp_svd",srcDir:"c64P"},
66                   {name:"DSPF_dp_svd",srcDir:"c64P"},
67                   {name:"DSP_urand32",srcDir:"c64P"},
68                   {name:"DSP_urand16",srcDir:"c64P"},
69                   {name:"DSPF_sp_urand",srcDir:"c64P"},
70                   {name:"DSPF_sp_nrand",srcDir:"c64P"},
71                   {name:"DSPF_sp_erand",srcDir:"c64P"},
72                   {name:"DSPF_sp_cholesky",srcDir:"c64P"},
73                   {name:"DSPF_dp_cholesky",srcDir:"c64P"},
74                   {name:"DSPF_sp_fftSPxSP",srcDir:"c64P"},
75                   {name:"DSPF_sp_ifftSPxSP",srcDir:"c64P"},
76                   {name:"DSPF_sp_fftSPxSP_r2c",srcDir:"c64P"},
77                   {name:"DSPF_sp_ifftSPxSP_c2r",srcDir:"c64P"},
78                   {name:"DSPF_sp_fir_cplx",srcDir:"c64P"},
79                   {name:"DSPF_sp_fir_gen",srcDir:"c64P"},
80                   {name:"DSPF_sp_fir_r2",srcDir:"c64P"},
81                   {name:"DSPF_sp_fircirc",srcDir:"c64P"},
82                   {name:"DSPF_sp_autocor",srcDir:"c64P"},
83                   {name:"DSPF_sp_biquad",srcDir:"c64P"},
84                   {name:"DSPF_sp_convol",srcDir:"c64P"},
85                   {name:"DSPF_sp_bitrev_cplx",srcDir:"c64P"},
86                   {name:"DSPF_sp_dotp_cplx",srcDir:"c64P"},
87                   {name:"DSPF_sp_dotprod",srcDir:"c64P"},
88                   {name:"DSPF_sp_lms",srcDir:"c64P"},
89                   {name:"DSPF_sp_iir",srcDir:"c64P"},
90                   {name:"DSPF_sp_mat_trans",srcDir:"c64P"},
91                   {name:"DSPF_sp_iirlat",srcDir:"c64P"},
92                   {name:"DSPF_sp_maxidx",srcDir:"c64P"},
93                   {name:"DSPF_sp_mat_mul",srcDir:"c64P"},
94                   {name:"DSPF_sp_maxval",srcDir:"c64P"},
95                   {name:"DSPF_sp_mat_mul_cplx",srcDir:"c64P"},
96                   {name:"DSPF_sp_minerr",srcDir:"c64P"},
97                   {name:"DSPF_sp_minval",srcDir:"c64P"},
98                   {name:"DSPF_sp_vecadd",srcDir:"c64P"},
99                   {name:"DSPF_sp_vecmul",srcDir:"c64P"},
100                   {name:"DSPF_sp_vecrecip",srcDir:"c64P"},
101                   {name:"DSPF_sp_vecsum_sq",srcDir:"c64P"},
102                   {name:"DSPF_sp_w_vec",srcDir:"c64P"},
103                   {name:"DSPF_blk_eswap16",srcDir:"c64P"},
104                   {name:"DSPF_blk_eswap32",srcDir:"c64P"},
105                   {name:"DSPF_blk_eswap64",srcDir:"c64P"},
106                   {name:"DSPF_fltoq15",srcDir:"c64P"},
107                   {name:"DSPF_q15tofl",srcDir:"c64P"},
108                   {name:"DSPF_sp_blk_move",srcDir:"c64P"},
109                   {name:"DSPF_sp_cfftr2_dit",srcDir:"c64P"},
110                   {name:"DSPF_sp_cfftr4_dif",srcDir:"c64P"},
111                   {name:"DSPF_sp_icfftr2_dif",srcDir:"c64P"},
112                   {name:"DSP_fir_r8_h8",srcDir:"c64P"},
113                   {name:"DSP_fir_r8_h16",srcDir:"c64P"},
114                   {name:"DSP_fir_r8_h24",srcDir:"c64P"},
115                   {name:"DSPF_dp_fftDPxDP",srcDir:"c64P"},
116                   {name:"DSPF_sp_mat_mul_gemm_cplx",srcDir:"c64P"},
117                   {name:"DSPF_sp_mat_trans_cplx",srcDir:"c64P"},
118                   {name:"DSPF_sp_mat_submat_copy_cplx",srcDir:"c64P"},
119                   {name:"DSPF_dp_ifftDPxDP",srcDir:"c64P"},
120                   {name:"DSPF_dp_mat_mul_gemm",srcDir:"c64P"},
121                   {name:"DSPF_sp_mat_submat_copy",srcDir:"c64P"},
122                   {name:"DSPF_sp_mat_mul_gemm",srcDir:"c64P"},
123                   {name:"DSPF_dp_mat_trans",srcDir:"c64P"},
124                   {name:"DSPF_dp_mat_submat_copy",srcDir:"c64P"},
126                   {name:"DSPF_blk_eswap16",srcDir:"c66"},
127                   {name:"DSPF_blk_eswap32",srcDir:"c66"},
128                   {name:"DSPF_blk_eswap64",srcDir:"c66"},
129                   {name:"DSPF_fltoq15",srcDir:"c66"},
130                   {name:"DSPF_q15tofl",srcDir:"c66"},
131                   {name:"DSPF_sp_blk_move",srcDir:"c66"},
132                   {name:"DSPF_sp_cfftr2_dit",srcDir:"c66"},
133                   {name:"DSPF_sp_cfftr4_dif",srcDir:"c66"},
134                   {name:"DSPF_sp_icfftr2_dif",srcDir:"c66"},
136                   {name:"DSPF_sp_cholesky_cmplx",srcDir:"c674"},
137                   {name:"DSPF_dp_cholesky_cmplx",srcDir:"c674"},
138                   {name:"DSPF_sp_lud_cmplx",srcDir:"c674"},
139                   {name:"DSPF_dp_lud_cmplx",srcDir:"c674"},
140                   {name:"DSPF_sp_lud_inv_cmplx",srcDir:"c674"},
141                   {name:"DSPF_dp_lud_inv_cmplx",srcDir:"c674"},
142                   {name:"DSPF_sp_lud_sol_cmplx",srcDir:"c674"},
143                   {name:"DSPF_dp_lud_sol_cmplx",srcDir:"c674"},
144                   {name:"DSPF_sp_qrd_cmplx",srcDir:"c674"},
145                   {name:"DSPF_dp_qrd_cmplx",srcDir:"c674"},
146                   {name:"DSPF_sp_svd_cmplx",srcDir:"c674"},
147                   {name:"DSPF_dp_svd_cmplx",srcDir:"c674"},
148                   {name:"DSPF_dp_lud",srcDir:"c674"}, 
149                   {name:"DSPF_sp_lud",srcDir:"c674"}, 
150                   {name:"DSPF_sp_lud_inv",srcDir:"c674"},
151                   {name:"DSPF_dp_lud_inv",srcDir:"c674"},
152                   {name:"DSPF_sp_lud_sol",srcDir:"c674"},
153                   {name:"DSPF_dp_lud_sol",srcDir:"c674"},
154                   {name:"DSPF_dp_qrd",srcDir:"c674"}, 
155                   {name:"DSPF_sp_qrd",srcDir:"c674"}, 
156                   {name:"DSPF_dp_svd",srcDir:"c674"}, 
157                   {name:"DSPF_sp_svd",srcDir:"c674"}, 
158                   {name:"DSP_urand32",srcDir:"c674"},
159                   {name:"DSP_urand16",srcDir:"c674"},
160                   {name:"DSPF_sp_urand",srcDir:"c674"},
161                   {name:"DSPF_sp_nrand",srcDir:"c674"},
162                   {name:"DSPF_sp_erand",srcDir:"c674"},
163                   {name:"DSPF_sp_cholesky",srcDir:"c674"},
164                   {name:"DSPF_dp_cholesky",srcDir:"c674"},
165                   {name:"DSPF_dp_fftDPxDP",srcDir:"c674"},
166                   {name:"DSPF_sp_fftSPxSP_r2c",srcDir:"c674"},
167                   {name:"DSPF_sp_ifftSPxSP_c2r",srcDir:"c674"},
168                   {name:"DSPF_sp_mat_trans_cplx",srcDir:"c674"},
169                   {name:"DSPF_sp_mat_submat_copy_cplx",srcDir:"c674"},
170                   {name:"DSPF_dp_ifftDPxDP",srcDir:"c674"},
171                   {name:"DSPF_dp_mat_mul_gemm",srcDir:"c674"},
172                   {name:"DSPF_sp_mat_submat_copy",srcDir:"c674"},
173                   {name:"DSPF_dp_mat_trans",srcDir:"c674"},
174                   {name:"DSPF_dp_mat_submat_copy",srcDir:"c674"},
175                   {name:"DSPF_sp_vecadd",srcDir:"c674"},
176                   {name:"DSP_add16",srcDir:"c674"},
177                   {name:"DSP_add32",srcDir:"c674"},
178                   {name:"DSP_autocor",srcDir:"c674"},
179                   {name:"DSP_bexp",srcDir:"c674"},
180                   {name:"DSP_blk_eswap16",srcDir:"c674"},
181                   {name:"DSP_blk_eswap32",srcDir:"c674"},
182                   {name:"DSP_blk_eswap64",srcDir:"c674"},
183                   {name:"DSP_blk_move",srcDir:"c674"},
184                   {name:"DSP_dotprod",srcDir:"c674"},
185                   {name:"DSP_dotp_sqr",srcDir:"c674"},
186                   {name:"DSP_fft16x16",srcDir:"c674"},
187                   {name:"DSP_fft16x16r",srcDir:"c674"},
188                   {name:"DSP_fft16x16_imre",srcDir:"c674"},
189                   {name:"DSP_fft16x32",srcDir:"c674"},
190                   {name:"DSP_fft32x32",srcDir:"c674"},
191                   {name:"DSP_fft32x32s",srcDir:"c674"},
192                   {name:"DSP_firlms2",srcDir:"c674"},
193                   {name:"DSP_fir_cplx",srcDir:"c674"},
194                   {name:"DSP_fir_cplx_hM4X4",srcDir:"c674"},
195                   {name:"DSP_fir_gen",srcDir:"c674"},
196                   {name:"DSP_fir_gen_hM17_rA8X8",srcDir:"c674"},
197                   {name:"DSP_fir_r4",srcDir:"c674"},
198                   {name:"DSP_fir_r8",srcDir:"c674"},
199                   {name:"DSP_fir_r8_hM16_rM8A8X8",srcDir:"c674"},
200                   {name:"DSP_fir_sym",srcDir:"c674"},
201                   {name:"DSP_fltoq15",srcDir:"c674"},
202                   {name:"DSP_ifft16x16",srcDir:"c674"},
203                   {name:"DSP_ifft16x16_imre",srcDir:"c674"},
204                   {name:"DSP_ifft16x32",srcDir:"c674"},
205                   {name:"DSP_ifft32x32",srcDir:"c674"},
206                   {name:"DSP_iir",srcDir:"c674"},
207                   {name:"DSP_iir_lat",srcDir:"c674"},
208                   {name:"DSP_iir_ss",srcDir:"c674"},
209                   {name:"DSP_mat_mul",srcDir:"c674"},
210                   {name:"DSP_mat_mul_cplx",srcDir:"c674"},
211                   {name:"DSP_mat_trans",srcDir:"c674"},
212                   {name:"DSP_maxidx",srcDir:"c674"},
213                   {name:"DSP_maxval",srcDir:"c674"},
214                   {name:"DSP_minerror",srcDir:"c674"},
215                   {name:"DSP_minval",srcDir:"c674"},
216                   {name:"DSP_mul32",srcDir:"c674"},
217                   {name:"DSP_neg32",srcDir:"c674"},
218                   {name:"DSP_q15tofl",srcDir:"c674"},
219                   {name:"DSP_recip16",srcDir:"c674"},
220                   {name:"DSP_vecsumsq",srcDir:"c674"},
221                   {name:"DSP_w_vec",srcDir:"c674"}]
224 var TIREX_TARGET;
226   for (var k = 0; k < arguments.length; k++)
227   {
228    switch (arguments[k])
229    {
230     case "c66x":
231       TIREX_TARGET  = "C66X";
232       break;
233     case "c674x":
234       TIREX_TARGET  = "C674X";
235       break;
236     case "c64Px":
237       TIREX_TARGET  = "C64PX";
238       break;
239    }
240   }
241   
242 var SpecialList=[]
244 Package.archiveFiles["CommonArchiveFiles"] = {
245     files: [
246             "docs/manifest/Software_Manifest.html",
247             "docs/bundle/manifest/doxyfile.xdt",
248             "docs/bundle/doxygen/doxyfile.xdt",
249             "docs/manifest/manifest.xml.xdt",
250             "setenv.bat",
251             "setxdcpath.js",
252           ]
253   };
255   /* Manually include header files as CCS is not available in Proc-SDK Linux build */
256   Package.archiveFiles["headers"] = {
257     base_directory: "./src/",
258     target: ["c64Ple","c64Pbe","ce64Ple","ce64Pbe"],
259     files: [
260         "DSP_ifft16x16_imre/DSP_ifft16x16_imre.h",
261         "DSP_ifft16x16_imre/c64P/DSP_ifft16x16_imre.h",
262         "DSP_ifft16x16_imre/c64P/DSP_ifft16x16_imre_cn.h",
263         "DSP_ifft16x16_imre/c64P/gen_twiddle_ifft16x16_imre.h",
264         "DSP_ifft16x16_imre/c64P/DSP_ifft16x16_imre_i.h",
265         "DSP_maxidx/DSP_maxidx.h",
266         "DSP_maxidx/c64P/DSP_maxidx.h",
267         "DSP_maxidx/c64P/DSP_maxidx_cn.h",
268         "DSP_iir_lat/DSP_iir_lat.h",
269         "DSP_iir_lat/c64P/DSP_iir_lat_cn.h",
270         "DSP_iir_lat/c64P/DSP_iir_lat.h",
271         "DSP_fft16x32/DSP_fft16x32.h",
272         "DSP_fft16x32/c64P/DSP_fft16x32.h",
273         "DSP_fft16x32/c64P/gen_twiddle_fft16x32.h",
274         "DSP_fft16x32/c64P/DSP_fft16x32_i.h",
275         "DSP_fft16x32/c64P/DSP_fft16x32_cn.h",
276         "DSP_neg32/c64P/DSP_neg32_cn.h",
277         "DSP_neg32/c64P/DSP_neg32.h",
278         "DSP_neg32/DSP_neg32.h",
279         "DSP_recip16/DSP_recip16.h",
280         "DSP_recip16/c64P/DSP_recip16.h",
281         "DSP_recip16/c64P/DSP_recip16_cn.h",
282         "DSP_autocor/c64P/DSP_autocor_cn.h",
283         "DSP_autocor/c64P/DSP_autocor.h",
284         "DSP_autocor/DSP_autocor.h",
285         "DSP_fft16x16_imre/c64P/DSP_fft16x16_imre_cn.h",
286         "DSP_fft16x16_imre/c64P/DSP_fft16x16_imre_i.h",
287         "DSP_fft16x16_imre/c64P/gen_twiddle_fft16x16_imre.h",
288         "DSP_fft16x16_imre/c64P/DSP_fft16x16_imre.h",
289         "DSP_fft16x16_imre/DSP_fft16x16_imre.h",
290         "DSP_mat_trans/DSP_mat_trans.h",
291         "DSP_mat_trans/c64P/DSP_mat_trans_cn.h",
292         "DSP_mat_trans/c64P/DSP_mat_trans.h",
293         "DSP_maxval/DSP_maxval.h",
294         "DSP_maxval/c64P/DSP_maxval_cn.h",
295         "DSP_maxval/c64P/DSP_maxval.h",
296         "DSP_dotprod/c64P/DSP_dotprod_cn.h",
297         "DSP_dotprod/c64P/DSP_dotprod.h",
298         "DSP_dotprod/DSP_dotprod.h",
299         "DSP_dotp_sqr/DSP_dotp_sqr.h",
300         "DSP_dotp_sqr/c64P/DSP_dotp_sqr_cn.h",
301         "DSP_dotp_sqr/c64P/DSP_dotp_sqr.h",
302         "DSP_blk_eswap64/DSP_blk_eswap64.h",
303         "DSP_blk_eswap64/c64P/DSP_blk_eswap64.h",
304         "DSP_blk_eswap64/c64P/DSP_blk_eswap64_cn.h",
305         "DSP_ifft16x32/DSP_ifft16x32.h",
306         "DSP_ifft16x32/c64P/DSP_ifft16x32_i.h",
307         "DSP_ifft16x32/c64P/DSP_ifft16x32_cn.h",
308         "DSP_ifft16x32/c64P/DSP_ifft16x32.h",
309         "DSP_ifft16x32/c64P/gen_twiddle_fft16x32.h",
310         "DSP_ifft32x32/DSP_ifft32x32.h",
311         "DSP_ifft32x32/c64P/gen_twiddle_fft32x32.h",
312         "DSP_ifft32x32/c64P/DSP_ifft32x32.h",
313         "DSP_ifft32x32/c64P/DSP_ifft32x32_cn.h",
314         "DSP_ifft32x32/c64P/DSP_ifft32x32_i.h",
315         "DSP_bexp/DSP_bexp.h",
316         "DSP_bexp/c64P/DSP_bexp.h",
317         "DSP_bexp/c64P/DSP_bexp_cn.h",
318         "DSP_fltoq15/DSP_fltoq15.h",
319         "DSP_fltoq15/c64P/DSP_fltoq15.h",
320         "DSP_fltoq15/c64P/DSP_fltoq15_cn.h",
321         "DSP_iir/c64P/DSP_iir_cn.h",
322         "DSP_iir/c64P/DSP_iir.h",
323         "DSP_iir/DSP_iir.h",
324         "DSP_fft32x32s/DSP_fft32x32s.h",
325         "DSP_fft32x32s/c64P/gen_twiddle_fft32x32.h",
326         "DSP_fft32x32s/c64P/DSP_fft32x32s.h",
327         "DSP_fft32x32s/c64P/DSP_fft32x32s_i.h",
328         "DSP_fft32x32s/c64P/DSP_fft32x32s_cn.h",
329         "DSP_blk_eswap16/DSP_blk_eswap16.h",
330         "DSP_blk_eswap16/c64P/DSP_blk_eswap16_cn.h",
331         "DSP_blk_eswap16/c64P/DSP_blk_eswap16.h",
332         "DSP_fir_sym/DSP_fir_sym.h",
333         "DSP_fir_sym/c64P/DSP_fir_sym_cn.h",
334         "DSP_fir_sym/c64P/DSP_fir_sym.h",
335         "DSP_iir_ss/DSP_iir_ss.h",
336         "DSP_iir_ss/c64P/DSP_iir_ss_cn.h",
337         "DSP_iir_ss/c64P/DSP_iir_ss.h",
338         "DSP_fir_gen_hM17_rA8X8/DSP_fir_gen_hM17_rA8X8.h",
339         "DSP_fir_gen_hM17_rA8X8/c64P/DSP_fir_gen_hM17_rA8X8.h",
340         "DSP_fir_gen_hM17_rA8X8/c64P/DSP_fir_gen_hM17_rA8X8_cn.h",
341         "DSP_fft16x16/DSP_fft16x16.h",
342         "DSP_fft16x16/c64P/gen_twiddle_fft16x16.h",
343         "DSP_fft16x16/c64P/DSP_fft16x16_i.h",
344         "DSP_fft16x16/c64P/DSP_fft16x16_cn.h",
345         "DSP_fft16x16/c64P/DSP_fft16x16.h",
346         "DSP_minerror/DSP_minerror.h",
347         "DSP_minerror/c64P/DSP_minerror.h",
348         "DSP_minerror/c64P/DSP_minerror_cn.h",
349         "DSP_mat_mul_cplx/DSP_mat_mul_cplx.h",
350         "DSP_mat_mul_cplx/c64P/DSP_mat_mul_cplx.h",
351         "DSP_mat_mul_cplx/c64P/DSP_mat_mul_cplx_cn.h",
352         "DSP_mul32/DSP_mul32.h",
353         "DSP_mul32/c64P/DSP_mul32.h",
354         "DSP_mul32/c64P/DSP_mul32_cn.h",
355         "DSP_fir_r4/DSP_fir_r4.h",
356         "DSP_fir_r4/c64P/DSP_fir_r4.h",
357         "DSP_fir_r4/c64P/DSP_fir_r4_cn.h",
358         "DSP_fir_r8/DSP_fir_r8.h",
359         "DSP_fir_r8/c64P/DSP_fir_r8_cn.h",
360         "DSP_fir_r8/c64P/DSP_fir_r8.h",
361         "DSP_q15tofl/DSP_q15tofl.h",
362         "DSP_q15tofl/c64P/DSP_q15tofl_cn.h",
363         "DSP_q15tofl/c64P/DSP_q15tofl.h",
364         "DSP_vecsumsq/DSP_vecsumsq.h",
365         "DSP_vecsumsq/c64P/DSP_vecsumsq_cn.h",
366         "DSP_vecsumsq/c64P/DSP_vecsumsq.h",
367         "DSP_fir_cplx/DSP_fir_cplx.h",
368         "DSP_fir_cplx/c64P/DSP_fir_cplx.h",
369         "DSP_fir_cplx/c64P/DSP_fir_cplx_cn.h",
370         "DSP_blk_eswap32/DSP_blk_eswap32.h",
371         "DSP_blk_eswap32/c64P/DSP_blk_eswap32_cn.h",
372         "DSP_blk_eswap32/c64P/DSP_blk_eswap32.h",
373         "DSP_add16/DSP_add16.h",
374         "DSP_add16/c64P/DSP_add16_cn.h",
375         "DSP_add16/c64P/DSP_add16.h",
376         "DSP_fir_r8_hM16_rM8A8X8/DSP_fir_r8_hM16_rM8A8X8.h",
377         "DSP_fir_r8_hM16_rM8A8X8/c64P/DSP_fir_r8_hM16_rM8A8X8_cn.h",
378         "DSP_fir_r8_hM16_rM8A8X8/c64P/DSP_fir_r8_hM16_rM8A8X8.h",
379         "DSP_ifft16x16/DSP_ifft16x16.h",
380         "DSP_ifft16x16/c64P/DSP_ifft16x16_cn.h",
381         "DSP_ifft16x16/c64P/DSP_ifft16x16.h",
382         "DSP_ifft16x16/c64P/DSP_ifft16x16_i.h",
383         "DSP_ifft16x16/c64P/gen_twiddle_ifft16x16.h",
384         "DSP_fft32x32/DSP_fft32x32.h",
385         "DSP_fft32x32/c64P/DSP_fft32x32_cn.h",
386         "DSP_fft32x32/c64P/gen_twiddle_fft32x32.h",
387         "DSP_fft32x32/c64P/DSP_fft32x32.h",
388         "DSP_fft32x32/c64P/DSP_fft32x32_i.h",
389         "DSP_mat_mul/DSP_mat_mul.h",
390         "DSP_mat_mul/c64P/DSP_mat_mul_cn.h",
391         "DSP_mat_mul/c64P/DSP_mat_mul.h",
392         "DSP_fir_gen/DSP_fir_gen.h",
393         "DSP_fir_gen/c64P/DSP_fir_gen.h",
394         "DSP_fir_gen/c64P/DSP_fir_gen_cn.h",
395         "DSP_firlms2/DSP_firlms2.h",
396         "DSP_firlms2/c64P/DSP_firlms2.h",
397         "DSP_firlms2/c64P/DSP_firlms2_cn.h",
398         "DSP_blk_move/DSP_blk_move.h",
399         "DSP_blk_move/c64P/DSP_blk_move.h",
400         "DSP_blk_move/c64P/DSP_blk_move_cn.h",
401         "DSP_fft16x16r/DSP_fft16x16r.h",
402         "DSP_fft16x16r/c64P/gen_twiddle_fft16x16.h",
403         "DSP_fft16x16r/c64P/DSP_fft16x16r_i.h",
404         "DSP_fft16x16r/c64P/DSP_fft16x16r.h",
405         "DSP_fft16x16r/c64P/DSP_fft16x16r_cn.h",
406         "DSP_w_vec/DSP_w_vec.h",
407         "DSP_w_vec/c64P/DSP_w_vec_cn.h",
408         "DSP_w_vec/c64P/DSP_w_vec.h",
409         "DSP_add32/DSP_add32.h",
410         "DSP_add32/c64P/DSP_add32.h",
411         "DSP_add32/c64P/DSP_add32_cn.h",
412         "DSP_minval/c64P/DSP_minval_cn.h",
413         "DSP_minval/c64P/DSP_minval.h",
414         "DSP_minval/DSP_minval.h",
415         "DSP_fir_cplx_hM4X4/DSP_fir_cplx_hM4X4.h",
416         "DSP_fir_cplx_hM4X4/c64P/DSP_fir_cplx_hM4X4.h",
417         "DSP_fir_cplx_hM4X4/c64P/DSP_fir_cplx_hM4X4_cn.h",
418     ]
419   };
421   Package.archiveFiles["headers"] = {
422     base_directory: "./src/",
423     target: ["c674le","ce674le"],
424     files: [
425         "DSPF_sp_minerr/DSPF_sp_minerr.h",
426         "DSPF_sp_minerr/c674/DSPF_sp_minerr_cn.h",
427         "DSPF_sp_minerr/c674/DSPF_sp_minerr.h",
428         "DSPF_sp_mat_mul/DSPF_sp_mat_mul.h",
429         "DSPF_sp_mat_mul/c674/DSPF_sp_mat_mul.h",
430         "DSPF_sp_mat_mul/c674/DSPF_sp_mat_mul_cn.h",
431         "DSPF_sp_iirlat/c674/DSPF_sp_iirlat.h",
432         "DSPF_sp_iirlat/c674/DSPF_sp_iirlat_cn.h",
433         "DSPF_sp_iirlat/DSPF_sp_iirlat.h",
434         "DSPF_sp_vecsum_sq/c674/DSPF_sp_vecsum_sq_cn.h",
435         "DSPF_sp_vecsum_sq/c674/DSPF_sp_vecsum_sq.h",
436         "DSPF_sp_vecsum_sq/DSPF_sp_vecsum_sq.h",
437         "DSPF_sp_vecmul/c674/DSPF_sp_vecmul_cn.h",
438         "DSPF_sp_vecmul/c674/DSPF_sp_vecmul.h",
439         "DSPF_sp_vecmul/DSPF_sp_vecmul.h",
440         "DSPF_sp_ifftSPxSP/DSPF_sp_ifftSPxSP.h",
441         "DSPF_sp_ifftSPxSP/c674/DSPF_sp_ifftSPxSP_cn.h",
442         "DSPF_sp_ifftSPxSP/c674/DSPF_sp_ifftSPxSP.h",
443         "DSPF_sp_w_vec/DSPF_sp_w_vec.h",
444         "DSPF_sp_w_vec/c674/DSPF_sp_w_vec.h",
445         "DSPF_sp_w_vec/c674/DSPF_sp_w_vec_cn.h",
446         "DSP_fir_r8_h24/c674/DSP_fir_r8_h24.h",
447         "DSP_fir_r8_h24/c674/DSP_fir_r8_h24_cn.h",
448         "DSP_fir_r8_h24/DSP_fir_r8_h24.h",
449         "DSPF_sp_biquad/DSPF_sp_biquad.h",
450         "DSPF_sp_biquad/c674/DSPF_sp_biquad.h",
451         "DSPF_sp_biquad/c674/DSPF_sp_biquad_cn.h",
452         "DSPF_sp_fir_gen/c674/DSPF_sp_fir_gen_cn.h",
453         "DSPF_sp_fir_gen/c674/DSPF_sp_fir_gen.h",
454         "DSPF_sp_fir_gen/DSPF_sp_fir_gen.h",
455         "DSP_fir_r8_h8/DSP_fir_r8_h8.h",
456         "DSP_fir_r8_h8/c674/DSP_fir_r8_h8.h",
457         "DSP_fir_r8_h8/c674/DSP_fir_r8_h8_cn.h",
458         "DSPF_blk_eswap64/c674/DSPF_blk_eswap64_cn.h",
459         "DSPF_blk_eswap64/c674/DSPF_blk_eswap64.h",
460         "DSPF_blk_eswap64/DSPF_blk_eswap64.h",
461         "DSP_fir_r8_h16/DSP_fir_r8_h16.h",
462         "DSP_fir_r8_h16/c674/DSP_fir_r8_h16.h",
463         "DSP_fir_r8_h16/c674/DSP_fir_r8_h16_cn.h",
464         "DSPF_sp_lms/DSPF_sp_lms.h",
465         "DSPF_sp_lms/c674/DSPF_sp_lms_cn.h",
466         "DSPF_sp_lms/c674/DSPF_sp_lms.h",
467         "DSPF_sp_vecrecip/DSPF_sp_vecrecip.h",
468         "DSPF_sp_vecrecip/c674/DSPF_sp_vecrecip.h",
469         "DSPF_sp_vecrecip/c674/DSPF_sp_vecrecip_cn.h",
470         "DSPF_sp_dotprod/DSPF_sp_dotprod.h",
471         "DSPF_sp_dotprod/c674/DSPF_sp_dotprod_cn.h",
472         "DSPF_sp_dotprod/c674/DSPF_sp_dotprod.h",
473         "DSPF_sp_bitrev_cplx/DSPF_sp_bitrev_cplx.h",
474         "DSPF_sp_bitrev_cplx/c674/DSPF_sp_bitrev_cplx.h",
475         "DSPF_sp_bitrev_cplx/c674/DSPF_sp_bitrev_cplx_cn.h",
476         "DSPF_sp_minval/DSPF_sp_minval.h",
477         "DSPF_sp_minval/c674/DSPF_sp_minval.h",
478         "DSPF_sp_minval/c674/DSPF_sp_minval_cn.h",
479         "DSPF_sp_mat_mul_cplx/DSPF_sp_mat_mul_cplx.h",
480         "DSPF_sp_mat_mul_cplx/c674/DSPF_sp_mat_mul_cplx_cn.h",
481         "DSPF_sp_mat_mul_cplx/c674/DSPF_sp_mat_mul_cplx.h",
482         "DSPF_sp_convol/c674/DSPF_sp_convol_cn.h",
483         "DSPF_sp_convol/c674/DSPF_sp_convol.h",
484         "DSPF_sp_convol/DSPF_sp_convol.h",
485         "DSPF_sp_cfftr2_dit/c674/DSPF_sp_cfftr2_dit_cn.h",
486         "DSPF_sp_cfftr2_dit/c674/DSPF_sp_cfftr2_dit.h",
487         "DSPF_sp_cfftr2_dit/DSPF_sp_cfftr2_dit.h",
488         "DSPF_blk_eswap32/DSPF_blk_eswap32.h",
489         "DSPF_blk_eswap32/c674/DSPF_blk_eswap32.h",
490         "DSPF_blk_eswap32/c674/DSPF_blk_eswap32_cn.h",
491         "DSPF_sp_fir_cplx/c674/DSPF_sp_fir_cplx.h",
492         "DSPF_sp_fir_cplx/c674/DSPF_sp_fir_cplx_cn.h",
493         "DSPF_sp_fir_cplx/DSPF_sp_fir_cplx.h",
494         "DSPF_sp_dotp_cplx/DSPF_sp_dotp_cplx.h",
495         "DSPF_sp_dotp_cplx/c674/DSPF_sp_dotp_cplx_cn.h",
496         "DSPF_sp_dotp_cplx/c674/DSPF_sp_dotp_cplx.h",
497         "DSPF_sp_fircirc/DSPF_sp_fircirc.h",
498         "DSPF_sp_fircirc/c674/DSPF_sp_fircirc.h",
499         "DSPF_sp_fircirc/c674/DSPF_sp_fircirc_cn.h",
500         "DSPF_sp_cfftr4_dif/DSPF_sp_cfftr4_dif.h",
501         "DSPF_sp_cfftr4_dif/c674/DSPF_sp_cfftr4_dif.h",
502         "DSPF_sp_cfftr4_dif/c674/DSPF_sp_cfftr4_dif_cn.h",
503         "DSPF_fltoq15/DSPF_fltoq15.h",
504         "DSPF_fltoq15/c674/DSPF_fltoq15_cn.h",
505         "DSPF_fltoq15/c674/DSPF_fltoq15.h",
506         "DSPF_sp_autocor/c674/DSPF_sp_autocor.h",
507         "DSPF_sp_autocor/c674/DSPF_sp_autocor_cn.h",
508         "DSPF_sp_autocor/DSPF_sp_autocor.h",
509         "DSPF_sp_mat_mul_gemm/c674/DSPF_sp_mat_mul_gemm_cn.h",
510         "DSPF_sp_mat_mul_gemm/c674/DSPF_sp_mat_mul_gemm.h",
511         "DSPF_sp_mat_mul_gemm/DSPF_sp_mat_mul_gemm.h",
512         "DSPF_sp_iir/c674/DSPF_sp_iir_cn.h",
513         "DSPF_sp_iir/c674/DSPF_sp_iir.h",
514         "DSPF_sp_iir/DSPF_sp_iir.h",
515         "DSPF_sp_blk_move/DSPF_sp_blk_move.h",
516         "DSPF_sp_blk_move/c674/DSPF_sp_blk_move.h",
517         "DSPF_sp_blk_move/c674/DSPF_sp_blk_move_cn.h",
518         "DSPF_q15tofl/c674/DSPF_q15tofl_cn.h",
519         "DSPF_q15tofl/c674/DSPF_q15tofl.h",
520         "DSPF_q15tofl/DSPF_q15tofl.h",
521         "DSPF_sp_maxval/DSPF_sp_maxval.h",
522         "DSPF_sp_maxval/c674/DSPF_sp_maxval_cn.h",
523         "DSPF_sp_maxval/c674/DSPF_sp_maxval.h",
524         "DSPF_blk_eswap16/DSPF_blk_eswap16.h",
525         "DSPF_blk_eswap16/c674/DSPF_blk_eswap16_cn.h",
526         "DSPF_blk_eswap16/c674/DSPF_blk_eswap16.h",
527         "DSPF_sp_icfftr2_dif/DSPF_sp_icfftr2_dif.h",
528         "DSPF_sp_icfftr2_dif/c674/DSPF_sp_icfftr2_dif.h",
529         "DSPF_sp_icfftr2_dif/c674/DSPF_sp_icfftr2_dif_cn.h",
530         "DSPF_sp_mat_mul_gemm_cplx/DSPF_sp_mat_mul_gemm_cplx.h",
531         "DSPF_sp_mat_mul_gemm_cplx/c674/DSPF_sp_mat_mul_gemm_cplx_cn.h",
532         "DSPF_sp_mat_mul_gemm_cplx/c674/DSPF_sp_mat_mul_gemm_cplx.h",
533         "DSPF_sp_mat_trans/DSPF_sp_mat_trans.h",
534         "DSPF_sp_mat_trans/c674/DSPF_sp_mat_trans.h",
535         "DSPF_sp_mat_trans/c674/DSPF_sp_mat_trans_cn.h",
536         "DSPF_sp_fftSPxSP/DSPF_sp_fftSPxSP.h",
537         "DSPF_sp_fftSPxSP/c674/DSPF_sp_fftSPxSP.h",
538         "DSPF_sp_fftSPxSP/c674/DSPF_sp_fftSPxSP_cn.h",
539         "DSPF_sp_maxidx/c674/DSPF_sp_maxidx_cn.h",
540         "DSPF_sp_maxidx/c674/DSPF_sp_maxidx.h",
541         "DSPF_sp_maxidx/DSPF_sp_maxidx.h",
542         "DSPF_sp_fir_r2/DSPF_sp_fir_r2.h",
543         "DSPF_sp_fir_r2/c674/DSPF_sp_fir_r2.h",
544         "DSPF_sp_fir_r2/c674/DSPF_sp_fir_r2_cn.h",
545     ]
546   };
548   Package.archiveFiles["headers"] = {
549     base_directory: "./src/",
550     target: ["c66le","c66be","ce66le","ce66be"],
551     files: [
552         "DSPF_sp_minerr/c66/DSPF_sp_minerr_cn.h",
553         "DSPF_sp_minerr/c66/DSPF_sp_minerr.h",
554         "DSPF_sp_minerr/DSPF_sp_minerr.h",
555         "DSPF_sp_mat_mul/c66/DSPF_sp_mat_mul.h",
556         "DSPF_sp_mat_mul/c66/DSPF_sp_mat_mul_cn.h",
557         "DSPF_sp_mat_mul/DSPF_sp_mat_mul.h",
558         "DSP_ifft16x16_imre/c66/DSP_ifft16x16_imre.h",
559         "DSP_ifft16x16_imre/c66/DSP_ifft16x16_imre_cn.h",
560         "DSP_ifft16x16_imre/c66/gen_twiddle_ifft16x16_imre.h",
561         "DSP_ifft16x16_imre/DSP_ifft16x16_imre.h",
562         "DSP_maxidx/c66/DSP_maxidx.h",
563         "DSP_maxidx/c66/DSP_maxidx_cn.h",
564         "DSP_maxidx/DSP_maxidx.h",
565         "DSP_iir_lat/c66/DSP_iir_lat_cn.h",
566         "DSP_iir_lat/c66/DSP_iir_lat.h",
567         "DSP_iir_lat/DSP_iir_lat.h",
568         "DSP_fft16x32/c66/DSP_fft16x32.h",
569         "DSP_fft16x32/c66/gen_twiddle_fft16x32.h",
570         "DSP_fft16x32/c66/DSP_fft16x32_cn.h",
571         "DSP_fft16x32/DSP_fft16x32.h",
572         "DSPF_dp_lud_inv/DSPF_dp_lud_inv.h",
573         "DSPF_dp_lud_inv/c66/DSPF_dp_lud_inv.h",
574         "DSPF_dp_lud_inv/c66/DSPF_dp_lud_inv_cn.h",
575         "DSP_neg32/c66/DSP_neg32_cn.h",
576         "DSP_neg32/c66/DSP_neg32.h",
577         "DSP_neg32/DSP_neg32.h",
578         "DSPF_sp_iirlat/c66/DSPF_sp_iirlat.h",
579         "DSPF_sp_iirlat/c66/DSPF_sp_iirlat_cn.h",
580         "DSPF_sp_iirlat/DSPF_sp_iirlat.h",
581         "DSP_recip16/c66/DSP_recip16.h",
582         "DSP_recip16/c66/DSP_recip16_cn.h",
583         "DSP_recip16/DSP_recip16.h",
584         "DSPF_dp_cholesky_cmplx/c66/DSPF_dp_cholesky_cmplx_cn.h",
585         "DSPF_dp_cholesky_cmplx/c66/DSPF_dp_cholesky_cmplx.h",
586         "DSPF_dp_cholesky_cmplx/DSPF_dp_cholesky_cmplx.h",
587         "DSP_autocor/c66/DSP_autocor_cn.h",
588         "DSP_autocor/c66/DSP_autocor.h",
589         "DSP_autocor/DSP_autocor.h",
590         "DSP_fft16x16_imre/c66/DSP_fft16x16_imre_cn.h",
591         "DSP_fft16x16_imre/c66/gen_twiddle_fft16x16_imre.h",
592         "DSP_fft16x16_imre/c66/DSP_fft16x16_imre.h",
593         "DSP_fft16x16_imre/DSP_fft16x16_imre.h",
594         "DSP_mat_trans/c66/DSP_mat_trans_cn.h",
595         "DSP_mat_trans/c66/DSP_mat_trans.h",
596         "DSP_mat_trans/DSP_mat_trans.h",
597         "DSP_maxval/c66/DSP_maxval_cn.h",
598         "DSP_maxval/c66/DSP_maxval.h",
599         "DSP_maxval/DSP_maxval.h",
600         "DSPF_sp_vecsum_sq/c66/DSPF_sp_vecsum_sq_cn.h",
601         "DSPF_sp_vecsum_sq/c66/DSPF_sp_vecsum_sq.h",
602         "DSPF_sp_vecsum_sq/DSPF_sp_vecsum_sq.h",
603         "DSPF_sp_vecmul/c66/DSPF_sp_vecmul_cn.h",
604         "DSPF_sp_vecmul/c66/DSPF_sp_vecmul.h",
605         "DSPF_sp_vecmul/DSPF_sp_vecmul.h",
606         "DSPF_dp_mat_submat_copy/c66/DSPF_dp_mat_submat_copy.h",
607         "DSPF_dp_mat_submat_copy/c66/DSPF_dp_mat_submat_copy_cn.h",
608         "DSPF_dp_mat_submat_copy/DSPF_dp_mat_submat_copy.h",
609         "DSP_dotprod/c66/DSP_dotprod_cn.h",
610         "DSP_dotprod/c66/DSP_dotprod.h",
611         "DSP_dotprod/DSP_dotprod.h",
612         "DSPF_sp_lud_inv_cmplx/c66/DSPF_sp_lud_inv_cmplx_cn.h",
613         "DSPF_sp_lud_inv_cmplx/c66/DSPF_sp_lud_inv_cmplx.h",
614         "DSPF_sp_lud_inv_cmplx/DSPF_sp_lud_inv_cmplx.h",
615         "DSPF_sp_lud/c66/DSPF_sp_lud.h",
616         "DSPF_sp_lud/c66/DSPF_sp_lud_cn.h",
617         "DSPF_sp_lud/DSPF_sp_lud.h",
618         "DSPF_sp_ifftSPxSP/c66/DSPF_sp_ifftSPxSP_cn.h",
619         "DSPF_sp_ifftSPxSP/c66/DSPF_sp_ifftSPxSP.h",
620         "DSPF_sp_ifftSPxSP/c66/DSPF_sp_ifftSPxSP_opt.h",
621         "DSPF_sp_ifftSPxSP/DSPF_sp_ifftSPxSP.h",
622         "DSPF_dp_lud_sol/c66/DSPF_dp_lud_sol_cn.h",
623         "DSPF_dp_lud_sol/c66/DSPF_dp_lud_sol.h",
624         "DSPF_dp_lud_sol/DSPF_dp_lud_sol.h",
625         "DSPF_sp_w_vec/c66/DSPF_sp_w_vec.h",
626         "DSPF_sp_w_vec/c66/DSPF_sp_w_vec_cn.h",
627         "DSPF_sp_w_vec/DSPF_sp_w_vec.h",
628         "DSPF_sp_svd/c66/DSPF_sp_svd_cn.h",
629         "DSPF_sp_svd/c66/DSPF_sp_svd.h",
630         "DSPF_sp_svd/DSPF_sp_svd.h",
631         "DSP_dotp_sqr/c66/DSP_dotp_sqr_cn.h",
632         "DSP_dotp_sqr/c66/DSP_dotp_sqr.h",
633         "DSP_dotp_sqr/DSP_dotp_sqr.h",
634         "DSPF_dp_cholesky/c66/DSPF_dp_cholesky.h",
635         "DSPF_dp_cholesky/c66/DSPF_dp_cholesky_cn.h",
636         "DSPF_dp_cholesky/DSPF_dp_cholesky.h",
637         "DSP_blk_eswap64/c66/DSP_blk_eswap64.h",
638         "DSP_blk_eswap64/c66/DSP_blk_eswap64_cn.h",
639         "DSP_blk_eswap64/DSP_blk_eswap64.h",
640         "DSP_ifft16x32/c66/DSP_ifft16x32_cn.h",
641         "DSP_ifft16x32/c66/DSP_ifft16x32.h",
642         "DSP_ifft16x32/c66/gen_twiddle_ifft16x32.h",
643         "DSP_ifft16x32/DSP_ifft16x32.h",
644         "DSP_fir_r8_h24/c66/DSP_fir_r8_h24.h",
645         "DSP_fir_r8_h24/c66/DSP_fir_r8_h24_cn.h",
646         "DSP_fir_r8_h24/DSP_fir_r8_h24.h",
647         "DSPF_dp_qrd/DSPF_dp_qrd.h",
648         "DSPF_dp_qrd/c66/DSPF_dp_qrd.h",
649         "DSPF_dp_qrd/c66/DSPF_dp_qrd_cn.h",
650         "DSPF_sp_biquad/c66/DSPF_sp_biquad.h",
651         "DSPF_sp_biquad/c66/DSPF_sp_biquad_cn.h",
652         "DSPF_sp_biquad/DSPF_sp_biquad.h",
653         "DSPF_sp_fir_gen/c66/DSPF_sp_fir_gen_cn.h",
654         "DSPF_sp_fir_gen/c66/DSPF_sp_fir_gen.h",
655         "DSPF_sp_fir_gen/DSPF_sp_fir_gen.h",
656         "DSPF_sp_fftSPxSP_r2c/c66/DSPF_sp_fftSPxSP_r2c_cn.h",
657         "DSPF_sp_fftSPxSP_r2c/c66/DSPF_sp_fftSPxSP_r2c.h",
658         "DSPF_sp_fftSPxSP_r2c/DSPF_sp_fftSPxSP_r2c.h",
659         "DSP_ifft32x32/c66/DSP_ifft32x32.h",
660         "DSP_ifft32x32/c66/DSP_ifft32x32_cn.h",
661         "DSP_ifft32x32/c66/gen_twiddle_ifft32x32.h",
662         "DSP_ifft32x32/DSP_ifft32x32.h",
663         "DSPF_sp_erand/c66/DSPF_sp_erand_cn.h",
664         "DSPF_sp_erand/c66/DSPF_sp_erand.h",
665         "DSPF_sp_erand/DSPF_sp_erand.h",
666         "DSP_bexp/c66/DSP_bexp.h",
667         "DSP_bexp/c66/DSP_bexp_cn.h",
668         "DSP_bexp/DSP_bexp.h",
669         "DSPF_sp_urand/c66/DSPF_sp_urand.h",
670         "DSPF_sp_urand/c66/DSPF_sp_urand_cn.h",
671         "DSPF_sp_urand/DSPF_sp_urand.h",
672         "DSP_fltoq15/c66/DSP_fltoq15.h",
673         "DSP_fltoq15/c66/DSP_fltoq15_cn.h",
674         "DSP_fltoq15/DSP_fltoq15.h",
675         "DSP_urand16/c66/DSP_urand16.h",
676         "DSP_urand16/c66/DSP_urand16_cn.h",
677         "DSP_urand16/DSP_urand16.h",
678         "DSP_iir/c66/DSP_iir_cn.h",
679         "DSP_iir/c66/DSP_iir.h",
680         "DSP_iir/DSP_iir.h",
681         "DSP_urand32/c66/DSP_urand32.h",
682         "DSP_urand32/c66/DSPF_sp_math_i.h",
683         "DSP_urand32/c66/DSP_urand32_cn.h",
684         "DSP_urand32/DSP_urand32.h",
685         "DSP_fft32x32s/c66/DSP_fft32x32s.h",
686         "DSP_fft32x32s/c66/DSP_fft32x32s_cn.h",
687         "DSP_fft32x32s/c66/gen_twiddle_fft32x32s.h",
688         "DSP_fft32x32s/DSP_fft32x32s.h",
689         "DSP_fir_r8_h8/c66/DSP_fir_r8_h8.h",
690         "DSP_fir_r8_h8/c66/DSP_fir_r8_h8_cn.h",
691         "DSP_fir_r8_h8/DSP_fir_r8_h8.h",
692         "DSP_blk_eswap16/c66/DSP_blk_eswap16_cn.h",
693         "DSP_blk_eswap16/c66/DSP_blk_eswap16.h",
694         "DSP_blk_eswap16/DSP_blk_eswap16.h",
695         "DSPF_sp_qrd_cmplx/c66/DSPF_sp_qrd_cmplx_cn.h",
696         "DSPF_sp_qrd_cmplx/c66/DSPF_sp_qrd_cmplx.h",
697         "DSPF_sp_qrd_cmplx/DSPF_sp_qrd_cmplx.h",
698         "DSP_fir_sym/c66/DSP_fir_sym_cn.h",
699         "DSP_fir_sym/c66/DSP_fir_sym.h",
700         "DSP_fir_sym/DSP_fir_sym.h",
701         "DSP_fir_r8_h16/c66/DSP_fir_r8_h16.h",
702         "DSP_fir_r8_h16/c66/DSP_fir_r8_h16_cn.h",
703         "DSP_fir_r8_h16/DSP_fir_r8_h16.h",
704         "DSPF_sp_ifftSPxSP_c2r/c66/DSPF_sp_ifftSPxSP_c2r_cn.h",
705         "DSPF_sp_ifftSPxSP_c2r/c66/DSPF_sp_ifftSPxSP_c2r.h",
706         "DSPF_sp_ifftSPxSP_c2r/DSPF_sp_ifftSPxSP_c2r.h",
707         "DSPF_sp_lms/c66/DSPF_sp_lms_cn.h",
708         "DSPF_sp_lms/c66/DSPF_sp_lms.h",
709         "DSPF_sp_lms/DSPF_sp_lms.h",
710         "DSPF_sp_vecrecip/c66/DSPF_sp_vecrecip.h",
711         "DSPF_sp_vecrecip/c66/DSPF_sp_vecrecip_cn.h",
712         "DSPF_sp_vecrecip/DSPF_sp_vecrecip.h",
713         "DSPF_sp_dotprod/c66/DSPF_sp_dotprod_cn.h",
714         "DSPF_sp_dotprod/c66/DSPF_sp_dotprod.h",
715         "DSPF_sp_dotprod/DSPF_sp_dotprod.h",
716         "DSPF_sp_bitrev_cplx/c66/DSPF_sp_bitrev_cplx.h",
717         "DSPF_sp_bitrev_cplx/c66/DSPF_sp_bitrev_cplx_cn.h",
718         "DSPF_sp_bitrev_cplx/DSPF_sp_bitrev_cplx.h",
719         "DSPF_dp_svd/c66/DSPF_dp_svd_cn.h",
720         "DSPF_dp_svd/c66/DSPF_dp_svd.h",
721         "DSPF_dp_svd/DSPF_dp_svd.h",
722         "DSPF_dp_svd_cmplx/c66/DSPF_dp_svd_cmplx_cn.h",
723         "DSPF_dp_svd_cmplx/c66/DSPF_dp_svd_cmplx.h",
724         "DSPF_dp_svd_cmplx/DSPF_dp_svd_cmplx.h",
725         "DSPF_dp_lud_sol_cmplx/c66/DSPF_dp_lud_sol_cmplx.h",
726         "DSPF_dp_lud_sol_cmplx/c66/DSPF_dp_lud_sol_cmplx_cn.h",
727         "DSPF_dp_lud_sol_cmplx/DSPF_dp_lud_sol_cmplx.h",
728         "DSPF_sp_minval/c66/DSPF_sp_minval.h",
729         "DSPF_sp_minval/c66/DSPF_sp_minval_cn.h",
730         "DSPF_sp_minval/DSPF_sp_minval.h",
731         "DSP_iir_ss/c66/DSP_iir_ss_cn.h",
732         "DSP_iir_ss/c66/DSP_iir_ss.h",
733         "DSP_iir_ss/DSP_iir_ss.h",
734         "DSPF_sp_cholesky_cmplx/c66/DSPF_sp_cholesky_cmplx.h",
735         "DSPF_sp_cholesky_cmplx/c66/DSPF_sp_cholesky_cmplx_cn.h",
736         "DSPF_sp_cholesky_cmplx/DSPF_sp_cholesky_cmplx.h",
737         "DSPF_sp_mat_mul_cplx/c66/DSPF_sp_mat_mul_cplx_cn.h",
738         "DSPF_sp_mat_mul_cplx/c66/DSPF_sp_mat_mul_cplx.h",
739         "DSPF_sp_mat_mul_cplx/DSPF_sp_mat_mul_cplx.h",
740         "DSP_fir_gen_hM17_rA8X8/c66/DSP_fir_gen_hM17_rA8X8.h",
741         "DSP_fir_gen_hM17_rA8X8/c66/DSP_fir_gen_hM17_rA8X8_cn.h",
742         "DSP_fir_gen_hM17_rA8X8/DSP_fir_gen_hM17_rA8X8.h",
743         "DSPF_sp_convol/c66/DSPF_sp_convol_cn.h",
744         "DSPF_sp_convol/c66/DSPF_sp_convol.h",
745         "DSPF_sp_convol/DSPF_sp_convol.h",
746         "DSP_fft16x16/c66/gen_twiddle_fft16x16.h",
747         "DSP_fft16x16/c66/DSP_fft16x16_cn.h",
748         "DSP_fft16x16/c66/DSP_fft16x16.h",
749         "DSP_fft16x16/DSP_fft16x16.h",
750         "DSPF_sp_vecadd/c66/DSPF_sp_vecadd.h",
751         "DSPF_sp_vecadd/c66/DSPF_sp_vecadd_cn.h",
752         "DSPF_sp_vecadd/DSPF_sp_vecadd.h",
753         "DSP_minerror/c66/DSP_minerror.h",
754         "DSP_minerror/c66/DSP_minerror_cn.h",
755         "DSP_minerror/DSP_minerror.h",
756         "DSPF_sp_mat_submat_copy/c66/DSPF_sp_mat_submat_copy_cn.h",
757         "DSPF_sp_mat_submat_copy/c66/DSPF_sp_mat_submat_copy.h",
758         "DSPF_sp_mat_submat_copy/DSPF_sp_mat_submat_copy.h",
759         "DSPF_sp_fir_cplx/c66/DSPF_sp_fir_cplx.h",
760         "DSPF_sp_fir_cplx/c66/DSPF_sp_fir_cplx_cn.h",
761         "DSPF_sp_fir_cplx/DSPF_sp_fir_cplx.h",
762         "DSPF_sp_dotp_cplx/c66/DSPF_sp_dotp_cplx_cn.h",
763         "DSPF_sp_dotp_cplx/c66/DSPF_sp_dotp_cplx.h",
764         "DSPF_sp_dotp_cplx/DSPF_sp_dotp_cplx.h",
765         "DSPF_sp_cholesky/c66/DSPF_sp_cholesky_cn.h",
766         "DSPF_sp_cholesky/c66/DSPF_sp_cholesky.h",
767         "DSPF_sp_cholesky/DSPF_sp_cholesky.h",
768         "DSPF_dp_ifftDPxDP/c66/DSPF_dp_ifftDPxDP_cn.h",
769         "DSPF_dp_ifftDPxDP/c66/DSPF_dp_ifftDPxDP.h",
770         "DSPF_dp_ifftDPxDP/DSPF_dp_ifftDPxDP.h",
771         "DSPF_dp_lud_cmplx/c66/DSPF_dp_lud_cmplx.h",
772         "DSPF_dp_lud_cmplx/c66/DSPF_dp_lud_cmplx_cn.h",
773         "DSPF_dp_lud_cmplx/DSPF_dp_lud_cmplx.h",
774         "DSP_mat_mul_cplx/c66/DSP_mat_mul_cplx.h",
775         "DSP_mat_mul_cplx/c66/DSP_mat_mul_cplx_cn.h",
776         "DSP_mat_mul_cplx/DSP_mat_mul_cplx.h",
777         "DSP_mul32/c66/DSP_mul32.h",
778         "DSP_mul32/c66/DSP_mul32_cn.h",
779         "DSP_mul32/DSP_mul32.h",
780         "DSPF_sp_fircirc/c66/DSPF_sp_fircirc.h",
781         "DSPF_sp_fircirc/c66/DSPF_sp_fircirc_cn.h",
782         "DSPF_sp_fircirc/DSPF_sp_fircirc.h",
783         "DSP_fir_r4/c66/DSP_fir_r4.h",
784         "DSP_fir_r4/c66/DSP_fir_r4_cn.h",
785         "DSP_fir_r4/DSP_fir_r4.h",
786         "DSPF_sp_svd_cmplx/c66/DSPF_sp_svd_cmplx_cn.h",
787         "DSPF_sp_svd_cmplx/c66/DSPF_sp_svd_cmplx.h",
788         "DSPF_sp_svd_cmplx/DSPF_sp_svd_cmplx.h",
789         "DSP_fir_r8/c66/DSP_fir_r8_cn.h",
790         "DSP_fir_r8/c66/DSP_fir_r8.h",
791         "DSP_fir_r8/DSP_fir_r8.h",
792         "DSPF_sp_lud_sol_cmplx/c66/DSPF_sp_lud_sol_cmplx.h",
793         "DSPF_sp_lud_sol_cmplx/c66/DSPF_sp_lud_sol_cmplx_cn.h",
794         "DSPF_sp_lud_sol_cmplx/DSPF_sp_lud_sol_cmplx.h",
795         "DSPF_sp_mat_trans_cplx/c66/DSPF_sp_mat_trans_cplx_cn.h",
796         "DSPF_sp_mat_trans_cplx/c66/DSPF_sp_mat_trans_cplx.h",
797         "DSPF_sp_mat_trans_cplx/DSPF_sp_mat_trans_cplx.h",
798         "DSPF_dp_fftDPxDP/c66/DSPF_dp_fftDPxDP_cn.h",
799         "DSPF_dp_fftDPxDP/c66/DSPF_dp_fftDPxDP.h",
800         "DSPF_dp_fftDPxDP/DSPF_dp_fftDPxDP.h",
801         "DSP_q15tofl/c66/DSP_q15tofl_cn.h",
802         "DSP_q15tofl/c66/DSP_q15tofl.h",
803         "DSP_q15tofl/DSP_q15tofl.h",
804         "DSPF_dp_mat_mul_gemm/c66/DSPF_dp_mat_mul_gemm.h",
805         "DSPF_dp_mat_mul_gemm/c66/DSPF_dp_mat_mul_gemm_cn.h",
806         "DSPF_dp_mat_mul_gemm/DSPF_dp_mat_mul_gemm.h",
807         "DSP_vecsumsq/c66/DSP_vecsumsq_cn.h",
808         "DSP_vecsumsq/c66/DSP_vecsumsq.h",
809         "DSP_vecsumsq/DSP_vecsumsq.h",
810         "DSPF_dp_mat_trans/c66/DSPF_dp_mat_trans.h",
811         "DSPF_dp_mat_trans/c66/DSPF_dp_mat_trans_cn.h",
812         "DSPF_dp_mat_trans/DSPF_dp_mat_trans.h",
813         "DSPF_sp_lud_cmplx/c66/DSPF_sp_lud_cmplx.h",
814         "DSPF_sp_lud_cmplx/c66/DSPF_sp_lud_cmplx_cn.h",
815         "DSPF_sp_lud_cmplx/DSPF_sp_lud_cmplx.h",
816         "DSPF_sp_autocor/c66/DSPF_sp_autocor.h",
817         "DSPF_sp_autocor/c66/DSPF_sp_autocor_cn.h",
818         "DSPF_sp_autocor/DSPF_sp_autocor.h",
819         "DSPF_sp_mat_mul_gemm/c66/DSPF_sp_mat_mul_gemm_cn.h",
820         "DSPF_sp_mat_mul_gemm/c66/DSPF_sp_mat_mul_gemm.h",
821         "DSPF_sp_mat_mul_gemm/DSPF_sp_mat_mul_gemm.h",
822         "DSPF_sp_iir/c66/DSPF_sp_iir_cn.h",
823         "DSPF_sp_iir/c66/DSPF_sp_iir.h",
824         "DSPF_sp_iir/DSPF_sp_iir.h",
825         "DSP_fir_cplx/c66/DSP_fir_cplx.h",
826         "DSP_fir_cplx/c66/DSP_fir_cplx_cn.h",
827         "DSP_fir_cplx/DSP_fir_cplx.h",
828         "DSP_blk_eswap32/c66/DSP_blk_eswap32_cn.h",
829         "DSP_blk_eswap32/c66/DSP_blk_eswap32.h",
830         "DSP_blk_eswap32/DSP_blk_eswap32.h",
831         "DSP_add16/c66/DSP_add16_cn.h",
832         "DSP_add16/c66/DSP_add16.h",
833         "DSP_add16/DSP_add16.h",
834         "DSPF_sp_mat_submat_copy_cplx/c66/DSPF_sp_mat_submat_copy_cplx_cn.h",
835         "DSPF_sp_mat_submat_copy_cplx/c66/DSPF_sp_mat_submat_copy_cplx.h",
836         "DSPF_sp_mat_submat_copy_cplx/DSPF_sp_mat_submat_copy_cplx.h",
837         "DSPF_sp_lud_sol/c66/DSPF_sp_lud_sol.h",
838         "DSPF_sp_lud_sol/c66/DSPF_sp_lud_sol_cn.h",
839         "DSPF_sp_lud_sol/DSPF_sp_lud_sol.h",
840         "DSP_fir_r8_hM16_rM8A8X8/c66/DSP_fir_r8_hM16_rM8A8X8_cn.h",
841         "DSP_fir_r8_hM16_rM8A8X8/c66/DSP_fir_r8_hM16_rM8A8X8.h",
842         "DSP_fir_r8_hM16_rM8A8X8/DSP_fir_r8_hM16_rM8A8X8.h",
843         "DSP_ifft16x16/c66/DSP_ifft16x16_cn.h",
844         "DSP_ifft16x16/c66/DSP_ifft16x16.h",
845         "DSP_ifft16x16/c66/gen_twiddle_ifft16x16.h",
846         "DSP_ifft16x16/DSP_ifft16x16.h",
847         "DSP_fft32x32/c66/DSP_fft32x32_cn.h",
848         "DSP_fft32x32/c66/gen_twiddle_fft32x32.h",
849         "DSP_fft32x32/c66/DSP_fft32x32.h",
850         "DSP_fft32x32/DSP_fft32x32.h",
851         "DSPF_sp_maxval/c66/DSPF_sp_maxval_cn.h",
852         "DSPF_sp_maxval/c66/DSPF_sp_maxval.h",
853         "DSPF_sp_maxval/DSPF_sp_maxval.h",
854         "DSPF_sp_qrd/c66/DSPF_sp_qrd_cn.h",
855         "DSPF_sp_qrd/c66/DSPF_sp_qrd.h",
856         "DSPF_sp_qrd/DSPF_sp_qrd.h",
857         "DSP_mat_mul/c66/DSP_mat_mul_cn.h",
858         "DSP_mat_mul/c66/DSP_mat_mul.h",
859         "DSP_mat_mul/DSP_mat_mul.h",
860         "DSP_fir_gen/c66/DSP_fir_gen.h",
861         "DSP_fir_gen/c66/DSP_fir_gen_cn.h",
862         "DSP_fir_gen/DSP_fir_gen.h",
863         "DSPF_sp_mat_mul_gemm_cplx/c66/DSPF_sp_mat_mul_gemm_cplx_cn.h",
864         "DSPF_sp_mat_mul_gemm_cplx/c66/DSPF_sp_mat_mul_gemm_cplx.h",
865         "DSPF_sp_mat_mul_gemm_cplx/DSPF_sp_mat_mul_gemm_cplx.h",
866         "DSPF_sp_mat_trans/c66/DSPF_sp_mat_trans.h",
867         "DSPF_sp_mat_trans/c66/DSPF_sp_mat_trans_cn.h",
868         "DSPF_sp_mat_trans/DSPF_sp_mat_trans.h",
869         "DSPF_sp_nrand/c66/DSPF_sp_nrand.h",
870         "DSPF_sp_nrand/c66/DSPF_sp_nrand_cn.h",
871         "DSPF_sp_nrand/DSPF_sp_nrand.h",
872         "DSPF_sp_lud_inv/c66/DSPF_sp_lud_inv.h",
873         "DSPF_sp_lud_inv/c66/DSPF_sp_lud_inv_cn.h",
874         "DSPF_sp_lud_inv/DSPF_sp_lud_inv.h",
875         "DSP_firlms2/c66/DSP_firlms2.h",
876         "DSP_firlms2/c66/DSP_firlms2_cn.h",
877         "DSP_firlms2/DSP_firlms2.h",
878         "DSP_blk_move/c66/DSP_blk_move.h",
879         "DSP_blk_move/c66/DSP_blk_move_cn.h",
880         "DSP_blk_move/DSP_blk_move.h",
881         "DSP_fft16x16r/c66/DSP_fft16x16r.h",
882         "DSP_fft16x16r/c66/gen_twiddle_fft16x16r.h",
883         "DSP_fft16x16r/c66/DSP_fft16x16r_cn.h",
884         "DSP_fft16x16r/DSP_fft16x16r.h",
885         "DSPF_sp_fftSPxSP/c66/DSPF_sp_fftSPxSP.h",
886         "DSPF_sp_fftSPxSP/c66/DSPF_sp_fftSPxSP_opt.h",
887         "DSPF_sp_fftSPxSP/c66/DSPF_sp_fftSPxSP_cn.h",
888         "DSPF_sp_fftSPxSP/DSPF_sp_fftSPxSP.h",
889         "DSP_w_vec/c66/DSP_w_vec_cn.h",
890         "DSP_w_vec/c66/DSP_w_vec.h",
891         "DSP_w_vec/DSP_w_vec.h",
892         "DSPF_sp_maxidx/c66/DSPF_sp_maxidx_cn.h",
893         "DSPF_sp_maxidx/c66/DSPF_sp_maxidx.h",
894         "DSPF_sp_maxidx/DSPF_sp_maxidx.h",
895         "DSPF_dp_lud/DSPF_dp_lud.h",
896         "DSPF_dp_lud/c66/DSPF_dp_lud.h",
897         "DSPF_dp_lud/c66/DSPF_dp_lud_cn.h",
898         "DSP_add32/c66/DSP_add32.h",
899         "DSP_add32/c66/DSP_add32_cn.h",
900         "DSP_add32/DSP_add32.h",
901         "DSPF_sp_fir_r2/c66/DSPF_sp_fir_r2.h",
902         "DSPF_sp_fir_r2/c66/DSPF_sp_fir_r2_cn.h",
903         "DSPF_sp_fir_r2/DSPF_sp_fir_r2.h",
904         "DSPF_dp_qrd_cmplx/c66/DSPF_dp_qrd_cmplx_cn.h",
905         "DSPF_dp_qrd_cmplx/c66/DSPF_dp_qrd_cmplx.h",
906         "DSPF_dp_qrd_cmplx/DSPF_dp_qrd_cmplx.h",
907         "DSPF_dp_lud_inv_cmplx/c66/DSPF_dp_lud_inv_cmplx_cn.h",
908         "DSPF_dp_lud_inv_cmplx/c66/DSPF_dp_lud_inv_cmplx.h",
909         "DSPF_dp_lud_inv_cmplx/DSPF_dp_lud_inv_cmplx.h",
910         "DSP_minval/c66/DSP_minval_cn.h",
911         "DSP_minval/c66/DSP_minval.h",
912         "DSP_minval/DSP_minval.h",
913         "DSP_fir_cplx_hM4X4/c66/DSP_fir_cplx_hM4X4.h",
914         "DSP_fir_cplx_hM4X4/c66/DSP_fir_cplx_hM4X4_cn.h",
915         "DSP_fir_cplx_hM4X4/DSP_fir_cplx_hM4X4.h",
916     ]
917   };
919   Package.archiveFiles["bundle"] = {
920     base_directory: ".",
921     delivery_type: "bundle",
922     files: ["docs/DSPLIB_Software_Manifest.html", 
923             "docs/DSPLIB_Users_Manual.html",
924             "docs/doxygen/html",
925             "docs/manifest/html",
926             "examples",
927             ".metadata",
928             "README.txt"]
929   };
931   Package.archiveFiles["bundle-c64x"] = {
932     base_directory: "./docs",
933     delivery_type: "bundle",
934     files: ["DSPLIB_C64Px_TestReport.html"],
935     target:["c64Ple","c64Pbe","ce64Ple","ce64Pbe"]
936   };
937   Package.archiveFiles["bundle-c66x"] = {
938     base_directory: "./docs",
939     delivery_type: "bundle",
940     files: ["DSPLIB_C66x_TestReport.html"],
941     target:["c66le","c66be","ce66le","ce66be"]
942   };    
943   Package.archiveFiles["bundle-c674x"] = {
944     base_directory: "./docs",
945     delivery_type: "bundle",
946     files: ["DSPLIB_C674x_TestReport.html"],
947     target:["c674le","ce674le"]
948   };    
950   
951 /**********************************************************************************************
952   The main package.bld routine starts here 
953 ***********************************************************************************************/
955   /* Set up the targets array. Current implementation support c674x, c66x and c64x*/
956   Package.targets = [C64P, C64P_big_endian, C64P_elf, C64P_big_endian_elf, C66, C66_big_endian, C66_elf, C66_big_endian_elf, C674, C674_elf, VC98];
958     /* Set up version number for the package */
959   Package.pkgStdVer = "2.0";
960   Package.version = [3, 4, 0, 2, 3, 0];
961   
962   Package.createVersion();
964   /* Parse XDC Arguments */
965   Package.parseArgs(arguments);
966   
967   /* Default delivery type is "source" for this release */ 
968   Package.delivery_type = "src";  
969   
970   
971   /* Call Local function to set up parameters for ccs projects */
972   if(!String(Package.targs[0]).match("VC98"))
973   {
974     addArtifacts();
975   }
976   else
977   {
978     createExe();
979  }
980    
981   /* generate Doxyfile based on the version array above */
982   var tplt = xdc.loadTemplate("./docs/doxygen/doxyfile.xdt");
983   tplt.genFile("./docs/doxygen/Doxyfile",null, [Package.version,doxygenstring]);  
985   /* Generate Software Manifest XML file */
986   var tplt = xdc.loadTemplate("./docs/manifest/manifest.xml.xdt");
987   tplt.genFile("./docs/manifest/manifest.xml",Package);  
989   /* Generate DSPLIB bundle users manual Doxyfile */
990   tplt = xdc.loadTemplate("./docs/bundle/doxygen/doxyfile.xdt");
991   tplt.genFile("./docs/bundle/doxygen/Doxyfile",Package);      
993   /* Generate DSPLIB bundle manifest Doxyfile */
994   tplt = xdc.loadTemplate("./docs/bundle/manifest/doxyfile.xdt");
995   tplt.genFile("./docs/bundle/manifest/Doxyfile",Package);      
997   /* Generate TI REX meta data */
998   print( "Generating TI REX"); 
999   var tirex_tplt = xdc.loadTemplate("./package.ccs.json.xdt");
1000   tirex_tplt.genFile("./.metadata/.tirex/package.ccs.json",null,[TIREX_TARGET]);
1002   tirex_tplt = xdc.loadTemplate("./package.tirex.json.xdt");
1003   tirex_tplt.genFile("./.metadata/.tirex/package.tirex.json",null,[Package.version,TIREX_TARGET]);
1005   /* Include custom makefile to generate doxygen documents */
1006   Package.includeMake("Makedocs.mk");
1007   Package.bundleMakeDoc = "MakedocsBundle.mk";   
1009   if(!String(Package.targs[0]).match("VC98"))
1010   {
1011     Package.createProjects();
1012   }
1013  
1014   createknlhdr();
1016    
1017   /* Create Archive */ 
1018   Package.createArchive();
1019   
1020   /* Clean Package */
1021   Package.packageClean();
1023 /**********************************************************************************************
1024   The main package.bld routine ends here 
1025 ***********************************************************************************************/
1026   
1027   
1028   /** Local function to add projects **/
1029   function addArtifacts() {
1030     
1031     if (IncludeList == "") {
1032       var file = new java.io.File("src");
1033       IncludeList = file.list();
1034     }
1035     
1036     var libc_c674 = new Array();
1037     var libc_c64p = new Array();
1038     var libc_c66 = new Array();
1039     var libcn_c674 = new Array();
1040     var libcn_c64p = new Array();
1041     var libcn_c66 = new Array();
1042     
1043     
1044     for each (var dir in IncludeList) {
1045     
1046       if( dir == "common")
1047          continue;
1048       var special   = false; 
1049       var exclude64p   = false;
1050       var exclude66   = false;
1051       var exclude674   = false;
1052       var exclude64ple   = false;
1053       var exclude66le   = false;
1054       var exclude64pbe   = false;
1055       var exclude66be   = false;
1056       var exclude674le   = false;
1057       
1058       /* Check if dir is in exclude list */
1059       for each (var excludedir in ExcludeList) {
1060         if (excludedir.name == dir){
1061            if(excludedir.srcDir.toString().match("c64Ple")) {
1062              exclude64ple = true;
1063            }
1064            else if(excludedir.srcDir.toString().match("c64Pbe")) {
1065              exclude64pbe = true;
1066            }
1067            else if(excludedir.srcDir.toString().match("c64P")) {
1068              exclude64p = true;
1069            }
1070            
1071            if(excludedir.srcDir.toString().match("c674le")) {
1072              exclude674le = true;
1073            }
1074            else if(excludedir.srcDir.toString().match("c674")) {
1075              exclude674 = true;
1076            }
1077            
1078            if(excludedir.srcDir.toString().match("c66le")) {
1079              exclude66le = true;
1080            }
1081            else if(excludedir.srcDir.toString().match("c66be")) {
1082              exclude66be = true;
1083            }
1084            else if(excludedir.srcDir.toString().match("c66")) {
1085              exclude66 = true;
1086            }
1087          }
1088        }
1089       
1090       /* Check if dir is in special list */
1091       for each (var specialdir in SpecialList) {
1092         if (specialdir.name == dir && specialdir.srcDir == srcDir) {
1093           special = true;
1094           break;
1095         }
1096       }
1097       if (special == true) { cflags = specialdir.cflags; }
1099      
1100       /*****************************************************************************
1101         Local Variables 
1102        *****************************************************************************/
1103       var projectname = dir;
1104       var projectroot = "src/" + projectname + "/";
1105       var commonroot  = "src/common/";
1106       var prjtargroot;
1107       var prjtarget; 
1108       var linkfile;
1109       
1111       /*****************************************************************************
1112         Kernel C66x project
1113        *****************************************************************************/
1114       if(exclude66 == false)
1115       {
1116           if(exclude66le == true)
1117             prjtarget="66be";
1118           else if(exclude66be == true)
1119             prjtarget="66le";
1120           else
1121             prjtarget = "66"
1122           prjtargroot = projectroot + "/c66/";
1123           cmntargroot = commonroot  + "/c66/";
1125           linkfile = new Array();
1126           if (xdc.findFile(prjtargroot+"lnk.cmd")) 
1127           {
1128             linkfile.push(prjtargroot+"lnk.cmd");
1129           }
1130           else
1131           {
1132             linkfile.push(cmntargroot + "lnk.cmd");
1133           }
1134           
1135           findProjectFiles (projectroot,linkfile,dir,"66");
1136           findProjectFiles (prjtargroot,linkfile,dir,"66");
1137           
1138           /* Add library files */
1139           findLibFiles(prjtargroot, libc_c66, libcn_c66, dir);
1140         
1141           Package.ccsProjects.push({ pjtName:        projectname,
1142                                        location:       prjtargroot,
1143                                        buildArtifact:  "executable",
1144                                        srcFiles:       linkfile,
1145                                        cFlags:         " --mem_model:data=far",
1146                                        targets:        [prjtarget]   
1147                                    });
1148       }
1149       
1150       /*****************************************************************************
1151         Kernel C674x project
1152        *****************************************************************************/
1153       if(exclude674 == false)
1154       {
1155           prjtarget = "674"
1156           prjtargroot = projectroot + "/c674/";
1157           cmntargroot = commonroot  + "/c674/";
1158           linkfile = new Array();
1159           if (xdc.findFile(prjtargroot+"lnk.cmd")) 
1160           {
1161             linkfile.push(prjtargroot+"lnk.cmd");
1162           }
1163           else
1164           {
1165             linkfile.push(cmntargroot + "lnk.cmd");
1166           }
1167          findProjectFiles (projectroot,linkfile,dir,"674");
1168           findProjectFiles (prjtargroot,linkfile,dir,"674");
1169          
1170          /* Add library files */
1171           findLibFiles(prjtargroot, libc_c674, libcn_c674, dir);
1172          
1173          Package.ccsProjects.push({ pjtName:        projectname,
1174                                       location:       prjtargroot,
1175                                       buildArtifact:  "executable",
1176                                       srcFiles:       linkfile,
1177                                       cFlags:         " --mem_model:data=far",
1178                                       targets:        [prjtarget]   
1179                                   });
1180                                   
1181       }
1182       
1184       /*****************************************************************************
1185         Kernel C64x+ project
1186        *****************************************************************************/
1187      if(exclude64p == false)
1188        {
1189           if(exclude64ple == true)
1190             prjtarget="64Pbe";
1191           else if(exclude64pbe == true)
1192             prjtarget="64Ple";
1193           else
1194             prjtarget = "64P"
1195           
1196           prjtargroot = projectroot + "/c64P/";
1197           cmntargroot = commonroot  + "/c64P/";
1198           linkfile = new Array();
1199           if (xdc.findFile(prjtargroot+"lnk.cmd")) 
1200           {
1201             linkfile.push(prjtargroot+"lnk.cmd");
1202           }
1203           else
1204           {
1205             linkfile.push(cmntargroot + "lnk.cmd");
1206           }
1207           findProjectFiles (projectroot,linkfile,dir,"64P");
1208           findProjectFiles (prjtargroot,linkfile,dir,"64P");
1209           
1210           /* Add library files */
1211           findLibFiles(prjtargroot, libc_c64p, libcn_c64p, dir);
1212           Package.ccsProjects.push({ pjtName:        projectname,
1213                                        location:       prjtargroot,
1214                                        buildArtifact:  "executable",
1215                                        srcFiles:       linkfile,
1216                                        cFlags:         " --mem_model:data=far",
1217                                        targets:        [prjtarget]   
1218                                    });
1219       }
1220     }
1221         /* create rules for creating library for optimized and the natural C code */
1222    Package.files=new Array();
1224    /* C66x DSPLIB Intrinsic Library */
1225    Package.files["kernelc66"] =
1226    {
1227       files: libc_c66,
1228       def_flags: " --mem_model:data=far",
1229       target: ["ce66le","c66le","ce66be","c66be"]
1230    };
1232    /* C674x DSPLIB Intrinsic Library */
1233    Package.files["kernelc674"] =
1234    {
1235       files: libc_c674,
1236       def_flags: " --mem_model:data=far",
1237       target: ["c674le","ce674le"]
1238    };
1240    /* C64x+ DSPLIB Intrinsic Library */
1241    Package.files["kernelc64p"] =
1242    {
1243       files: libc_c64p,
1244       def_flags: " --mem_model:data=far",
1245       target: ["ce64Ple","c64Ple", "ce64Pbe","c64Pbe"]
1246    };
1248    /* Create DSPLIB library */
1249    Package.createLib("dsplib");
1250    
1251    /* C66x DSPLIB Natural C Library */
1252    Package.files["kernelc66"] =
1253    {
1254     files: libcn_c66,
1255     def_flags: " --mem_model:data=far",
1256         target: ["ce66le","c66le","ce66be","c66be"]
1257    };
1259    /* C674x DSPLIB Natural C Library */
1260    Package.files["kernelc674"] =
1261    {
1262     files: libcn_c674,
1263     def_flags: " --mem_model:data=far",
1264         target: ["ce674le","c674le"]
1265    };
1267    /* C64x+ DSPLIB Natural C Library */
1268    Package.files["kernelc64p"] =
1269    {
1270     files: libcn_c64p,
1271     def_flags: " --mem_model:data=far",
1272         target: ["ce64Ple","c64Ple", "ce64Pbe","c64Pbe"]
1273    };
1275    /* Rule to create Natural C library */
1276    Package.createLib("dsplib_cn");
1278     
1279   }
1281   /** Local function to add files for projects **/
1282   function findProjectFiles(path,lnkfile,knl,target) {
1283     var Files = new java.io.File(path);
1284     for each (var srcFile in Files.list()) {
1285       srcFile = String(srcFile);
1286       var srcPath = path + srcFile;
1287       var dot = srcFile.lastIndexOf(".");
1288       var extension = srcFile.substr(dot,srcFile.length);    
1289       if (extension == ".c") {
1290         if(srcFile.substr(0,dot) == knl)
1291        {
1292            continue;      
1293        }
1294        var underscore=srcFile.lastIndexOf("_");
1295        var fileType=srcFile.substr(underscore,dot-underscore);
1296        if (fileType=="_cn" || fileType=="_i")
1297        {
1298            continue;
1299        }
1300             
1301         if (xdc.findFile(srcPath)) {
1302             lnkfile.push(srcPath);
1303         }
1304       }
1305       /* Create Doxygen string */
1306       if(extension == ".h")
1307       {
1308           if (extension == ".h" && srcFile.toString().match(knl+".h") && String(Package.targs[0]).match(target)) 
1309           {
1310              doxygenstring += " " + srcPath;
1311           }
1312           if (xdc.findFile(srcPath)) 
1313          {
1314            lnkfile.push(srcPath);
1315          }
1316       }
1317     }
1318   } 
1320 /** Local function to add files for libraries **/
1321   function findLibFiles(path,libc, libcn, knl) {
1322     var Files = new java.io.File(path);
1323     for each (var srcFile in Files.list()) {
1324       srcFile = String(srcFile);
1325       var srcPath = path + srcFile;
1326       var dot = srcFile.lastIndexOf(".");
1327       var extension = srcFile.substr(dot,srcFile.length-dot);
1328           /* Add source C file to project */
1329           if (extension == ".s")
1330           {
1331             libc.push(srcPath);
1332             continue;
1333           }
1334           if (extension == ".sa")
1335           {
1336             libc.push(srcPath);
1337             continue;
1338           }
1339           if (srcFile == (knl + ".c") )
1340           {
1341             libc.push(srcPath);
1342             continue;
1343           }
1344       var underscore=srcFile.lastIndexOf("_");
1345       var fileType=srcFile.substr(underscore,dot-underscore);
1346           if (extension== ".c" && fileType=="_i")
1347           {
1348             libc.push(srcPath);
1349             continue;
1350           }
1351           if (extension== ".c" && fileType=="_cn")
1352           {
1353             libcn.push(srcPath);
1354             continue;
1355           }
1356     }
1357   }  
1358      
1359 function createExe()
1361    if (IncludeList == "") {
1362       var file = new java.io.File("src");
1363       IncludeList = file.list();
1364     }
1365     
1366     for each (var dir in IncludeList) {
1367       var special   = false; 
1368       var exclude66   = false;
1369      
1371       /* Check if dir is in exclude list */
1372       for each (var excludedir in ExcludeList) {
1373         if (excludedir.name == dir){
1374         
1375            if(excludedir.srcDir.toString().match("c66le")) {
1376              exclude66 = true;
1377            }
1378            else if(excludedir.srcDir.toString().match("c66")) {
1379              exclude66 = true;
1380            }
1381          }
1382       }
1383       
1384       /* Check if dir is in special list */
1385       for each (var specialdir in SpecialList) {
1386         if (specialdir.name == dir && specialdir.srcDir == srcDir) {
1387           special = true;
1388           break;
1389         }
1390       }
1391       if (special == true) { cflags = specialdir.cflags; }
1393        /*****************************************************************************
1394         Local Variables 
1395        *****************************************************************************/
1396       var projectname = dir;
1397       var projectroot = "./src/" + projectname + "/";
1398       var prjtargroot;
1399       var prjtarget; 
1400       var linkfile;
1402       if(exclude66 == false)
1403       {
1404           
1405           prjtargetsrc = projectroot+"/c66/"
1406           prjtargroot = projectroot + "/vc98/";
1407           linkfile = new Array();
1408           findVC98Files (projectroot,linkfile);
1409           findVC98Files (prjtargetsrc,linkfile);
1410           
1411           Package.files["CSRC"]=
1412           {
1413              base_directory: ".",
1414  
1415              files: linkfile.concat([
1416               "mex/c6xsim/C6xSimulator.c",
1417               "mex/c6xsim/C66_ag_intrins.c",
1418               "mex/c6xsim/C66_data_sim.c"]),
1419               
1420              def_flags: " -DTMS320C66X -D_TMS320C6600 -DLITTLE_ENDIAN_HOST -D_LITTLE_ENDIAN  -Imex/c6xsim",
1422          } 
1425         Package.exeTarget[0] = 
1426        {
1427      
1428           base_directory: prjtargroot,
1430           target:  "vc98",
1432           name:  projectname,
1433   
1434        };  
1436        Package.createExe();
1438       }
1440     }
1442 }    
1444  function findVC98Files(path,lnkfile) {
1445     var Files = new java.io.File(path);
1446     for each (var srcFile in Files.list()) {
1447       srcFile = String(srcFile);
1448       var srcPath = path + srcFile;
1449       var dot = srcFile.lastIndexOf(".");
1450       var extension = srcFile.substr(dot,srcFile.length);    
1451       if (extension == ".c") {
1452         if (xdc.findFile(srcPath)) {
1453             lnkfile.push(srcPath);
1454         }
1455       }
1456     }
1457     return lnkfile;
1458   }  
1459   
1460 function createknlhdr()
1462      /* Create Kernel API header file */
1463     var api = Package.bundlename+".h";
1464     var fileModule = xdc.module('xdc.services.io.File');
1465     try{
1466         var apiHeader = fileModule.open(api, "w");
1467      } catch (ex)
1468      {
1469       print( api + " cannot be written to. Please check Writing Permissions.");
1470       java.lang.System.exit(1);
1471      }
1472   Package.generatedFiles.push(api);
1473   Package.archiveFiles["CommonArchiveFiles"].files.push(api);
1474    /* Header Information */
1475   apiHeader.writeLine("/* ======================================================================= */");
1476   apiHeader.writeLine("/* "+ api +" --  Interface header file                 */");
1477   apiHeader.writeLine("/*                                                                         */");
1478   apiHeader.writeLine("/* Rev 0.0.1                                                               */");
1479   apiHeader.writeLine("/*                                                                         */");
1480   apiHeader.writeLine("/* Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/  */"); 
1481   apiHeader.writeLine("/*                                                                         */");
1482   apiHeader.writeLine("/*                                                                         */");
1483   apiHeader.writeLine("/*  Redistribution and use in source and binary forms, with or without     */");
1484   apiHeader.writeLine("/*  modification, are permitted provided that the following conditions     */");
1485   apiHeader.writeLine("/*  are met:                                                               */");
1486   apiHeader.writeLine("/*                                                                         */");
1487   apiHeader.writeLine("/*    Redistributions of source code must retain the above copyright       */");
1488   apiHeader.writeLine("/*    notice, this list of conditions and the following disclaimer.        */");
1489   apiHeader.writeLine("/*                                                                         */");
1490   apiHeader.writeLine("/*    Redistributions in binary form must reproduce the above copyright    */");
1491   apiHeader.writeLine("/*    notice, this list of conditions and the following disclaimer in the  */");
1492   apiHeader.writeLine("/*    documentation and/or other materials provided with the               */");
1493   apiHeader.writeLine("/*    distribution.                                                        */");
1494   apiHeader.writeLine("/*                                                                         */");
1495   apiHeader.writeLine("/*    Neither the name of Texas Instruments Incorporated nor the names of  */");
1496   apiHeader.writeLine("/*    its contributors may be used to endorse or promote products derived  */");
1497   apiHeader.writeLine("/*    from this software without specific prior written permission.        */");
1498   apiHeader.writeLine("/*                                                                         */");
1499   apiHeader.writeLine("/*  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS    */");
1500   apiHeader.writeLine("/*  \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT      */");
1501   apiHeader.writeLine("/*  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR  */");
1502   apiHeader.writeLine("/*  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT   */");
1503   apiHeader.writeLine("/*  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,  */");
1504   apiHeader.writeLine("/*  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT       */");
1505   apiHeader.writeLine("/*  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,  */");
1506   apiHeader.writeLine("/*  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY  */");
1507   apiHeader.writeLine("/*  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT    */");
1508   apiHeader.writeLine("/*  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE  */");
1509   apiHeader.writeLine("/*  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.   */");
1510   apiHeader.writeLine("/*                                                                         */");
1511   apiHeader.writeLine("/* ======================================================================= */");
1513      var projectDir = new java.io.File("./package/projects");
1514      var projectXml = projectDir.list();
1516      for each(var xml in projectXml)
1517      {
1518        xml=String(xml);
1519        var dot = xml.lastIndexOf(".");
1520        var extension = xml.substr(dot,xml.length);
1521        if(extension == ".xml")
1522        {
1523           var project=xdc.loadXML("./package/projects/"+xml);
1524           var headerfile = project["params"].name+".h";
1525           if(xdc.findFile("src/"+project["params"].name+"/"+headerfile))
1526           {
1527             apiHeader.writeLine("#include <"+Pkg.name.replace(/\./g,"/")+"/src/"+project["params"].name+"/"+headerfile+">");
1528           }
1529        }
1530      }
1532         
1533  /* nothing past this point */