//purge_modnum //Entrée flag 'clean' pour enlever les fichiers objets (.obj,.o) // 'distclean' pour enlever // les fichiers objets (.obj .o) // les fichiers binaire .bin // les librairies (name lib .so .dll .lib .def) // les palettes (*.cosf) //WARNING : i don't find a way to delete dll in windob //because protected function []=purge_modnumsci(flag) //set here directories to be explored (in MODNUMSCI) macros_dir = '/macros/'+... ['build_util'; 'find_file'; 'misc'; 'pll'; 'scicos_blocks/Communication'; 'scicos_blocks/Filter'; 'scicos_blocks/Integer'; 'scicos_blocks/NonLinear'; 'scicos_blocks/Old' 'scicos_blocks/Pll'; 'scicos_blocks/Signal'; 'scicos_blocks/Sinks'; 'scicos_blocks/Sources'; 'scicos_blocks/Tools'; 'scicos_util'; 'scicos_overload'; 'signal';]; routines_dir = '/routines/'+... ['modnum_lib'; // 'scicos\codegen'; 'scicos/communication'; 'scicos/filter'; 'scicos/integer'; 'scicos/nonlinear'; 'scicos/old'; 'scicos/other'; 'scicos/pll'; 'scicos/sinks'; 'scicos/sources'; 'scicos/tools']; pal_dir = ['macros/scicos_blocks'] //** def object and rm cmd **// if MSDOS then macros_dir=pathconvert(macros_dir,%f,%t,'w'); routines_dir=pathconvert(routines_dir,%f,%t,'w'); pal_dir=pathconvert(pal_dir,%f,%t,'w'); rm_cmd='del /F '; obj_ext='*.obj'; lib_ext='*.dll *.exp *.lib *.def'; else rm_cmd="rm -f "; obj_ext='*.o' lib_ext='*.so' end select flag //*** clean ***// case 'clean' then cur_rep=pwd(); for i=1:size(routines_dir,'*') chdir(MODNUMSCI+routines_dir(i)); tt='unix_g(rm_cmd+obj_ext)' disp(tt) //ierr=execstr(tt,'errcatch'); end chdir(cur_rep); //*** distclean ***// case 'distclean' then cur_rep=pwd(); for i=1:size(macros_dir,'*') chdir(MODNUMSCI+macros_dir(i)); tt='unix_g(rm_cmd+''*.bin lib names'')' disp(tt) //ierr=execstr(tt,'errcatch'); end for i=1:size(routines_dir,'*') chdir(MODNUMSCI+routines_dir(i)); tt='unix_g(rm_cmd+obj_ext)'; ierr=execstr(tt,'errcatch'); tt='unix_g(rm_cmd+lib_ext)' //ierr=execstr(tt,'errcatch'); end for i=1:size(pal_dir,'*') chdir(MODNUMSCI+pal_dir(i)); tt='unix_g(rm_cmd+''*.cosf'')' //ierr=execstr(tt,'errcatch'); end chdir(MODNUMSCI); tt='unix_g(rm_cmd+''loader.sce'')' //ierr=execstr(tt,'errcatch'); chdir(cur_rep); //*** invalid flag ***// else printf("Invalid flag\n"); end endfunction