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