Scilab Function
eng


write_inf_rout_lib

File content


//write_inf_rout_lib
//Entrée : u : file descriptor
//         libname : nom de la libraire (sans extension)
//         path : chemin de la libraire dans '+tt_path+' ex /routines/modnum_lib/
//         files : nom des modules à inclure (sans extension)
//         flag : drapeau 0 : seulement la librairie
//                        1 : librairie + modules 'c'
//                        2 : librairie + modules 'f'
//         tt_path : string that give a main path (ex ''+tt_path+'')
function txt=write_inf_rout_lib(u,libname,path,files,flag,tt_path)
 if MSDOS then
  mylibname=libname+'.dll';
 else
  mylibname=libname+'.so';
 end
 
 if flag==0 then 
   tt_loader=['//Link '+libname+' library'
              'if ~exists(''Id_'+libname+''') then'
              '  Id_'+libname+'=link('+tt_path+'+""'+path+'/'+mylibname+'"");';
              'end'
             ]
 elseif flag==1 then
   var=[];
   for i=1:size(files,'*')
    var=var+''''+files(i)+''',';
   end
   var=part(var,1:length(var)-1);  
   tt_loader=['//Link '+libname+' library'
              'if ~exists(''Id_'+libname+''') then'
              '  Id_'+libname+'=link('+tt_path+'+""'+path+'/'+mylibname+'"",['+var+'],''c'');';
              'end'
              '';
              ];
  
 elseif flag==2 then
   var=[];
   for i=1:size(files,'*')
    var=var+''''+files(i)+''',';
   end
   var=part(var,1:length(var)-1);
   tt_loader=['//Link '+libname+' library';
              'if ~exists(''Id_'+libname+''') then'
              '  Id_'+libname+'=link('+tt_path+'+""'+path+'/'+mylibname+'"",['+var+']);';
              'end'
              '';
             ];
 end
 txt=tt_loader;
 fprintf(u,"%s\n",tt_loader);
endfunction