write_header
//write_header(u,builder_name,tt_path)
//Entrée : u file descriptor
// builder_name : name of builder
// tt_path : nom d'une variable globale du chemin de la toolbox
// (ex tt_path='MODNUMSCI')
//Sortie : txt : le texte à éxecuter pour augmenter la taille de la pile scilab
function txt=write_header(u,builder_name,tt_path)
tt_loader1=['//Loader Script of modnum for scilab'
'//Generated by '+builder_name
'//'+date()+' A.Layec';'';
'//Redefine stacksize'
'sz=stacksize(); //default 5e6';
'while (sz(1)<50e6) then';
' ierr=execstr(''stacksize(sz(1)+5e6)'',''errcatch'');';
' if ierr<>0 then break, end';
' sz=stacksize();';
'end';
'clear sz;';
'clear ierr;';'';
'//Define modnum root path']
if MSDOS then
tt_loader=[tt_loader1;
tt_path+'=get_absolute_file_path(''loader.sce'');';
'if part('+tt_path+',length('+tt_path+'))==''\'' then';
' '+tt_path+'=part('+tt_path+',1:length('+tt_path+')-1);';
'end'
'//Search Scicoslab Version'
'exec('+tt_path+'+''\macros\build_util\find_scilab_ver.sci'');'
'exec('+tt_path+'+''\macros\build_util\get_modnumsci_version.sci'');']
else
tt_loader=[tt_loader1;
tt_path+'=get_absolute_file_path(''loader.sce'');';
'if part('+tt_path+',length('+tt_path+'))==''/'' then';
' '+tt_path+'=part('+tt_path+',1:length('+tt_path+')-1);';
'end'
'//Search Scicoslab Version'
'exec('+tt_path+'+''/macros/build_util/find_scilab_ver.sci'');'
'exec('+tt_path+'+''/macros/build_util/get_modnumsci_version.sci'');']
end
tt_loader=[tt_loader;
'[ok,ver]=find_scilab_ver();'
'if ~ok then'
' printf(""Modnum only work with ScicosLab\n"");'
' abort;'
'end'
''
'if ver<>'''+getversion()+''' then'
' ok=%f;'
' printf(""That version of Modnum has been built with ScicosLab '+getversion()+'.\n"");'
' printf(""Please use ScicosLab '+getversion()+', or try to recompile Modnum from source.\n"");'
' clear ver'
' abort;'
'end'
'clear ver'
'']
txt=tt_loader1;
fprintf(u,"%s\n",tt_loader);
endfunction