Files @ bc383c25c970
Branch filter:

Location: EI/VirtualLeaf/src/build_models/translate_plugin.pl

Michael Guravage
Moved the Windows LIBXML2, LIBICONV and LIBZ libraries into the
destribtion, and changed the various project files accordingly.

--
user: Michael Guravage <michael.guravage@cwi.nl>
branch 'default'
added lib/libiconv/include/iconv.h
added lib/libiconv/include/libcharset.h
added lib/libiconv/include/localcharset.h
added lib/libiconv/lib/charset.alias
added lib/libiconv/lib/libcharset.la
added lib/libiconv/lib/libiconv.la
added lib/libiconv/share/doc/libiconv/COPYING
added lib/libiconv/share/doc/libiconv/COPYING.LIB
added lib/libiconv/share/doc/libiconv/NEWS
added lib/libiconv/share/doc/libiconv/NOTES
added lib/libxml2/include/libxml/DOCBparser.h
added lib/libxml2/include/libxml/HTMLparser.h
added lib/libxml2/include/libxml/HTMLtree.h
added lib/libxml2/include/libxml/SAX.h
added lib/libxml2/include/libxml/SAX2.h
added lib/libxml2/include/libxml/c14n.h
added lib/libxml2/include/libxml/catalog.h
added lib/libxml2/include/libxml/chvalid.h
added lib/libxml2/include/libxml/debugXML.h
added lib/libxml2/include/libxml/dict.h
added lib/libxml2/include/libxml/encoding.h
added lib/libxml2/include/libxml/entities.h
added lib/libxml2/include/libxml/globals.h
added lib/libxml2/include/libxml/hash.h
added lib/libxml2/include/libxml/list.h
added lib/libxml2/include/libxml/nanoftp.h
added lib/libxml2/include/libxml/nanohttp.h
added lib/libxml2/include/libxml/parser.h
added lib/libxml2/include/libxml/parserInternals.h
added lib/libxml2/include/libxml/pattern.h
added lib/libxml2/include/libxml/relaxng.h
added lib/libxml2/include/libxml/schemasInternals.h
added lib/libxml2/include/libxml/schematron.h
added lib/libxml2/include/libxml/threads.h
added lib/libxml2/include/libxml/tree.h
added lib/libxml2/include/libxml/uri.h
added lib/libxml2/include/libxml/valid.h
added lib/libxml2/include/libxml/xinclude.h
added lib/libxml2/include/libxml/xlink.h
added lib/libxml2/include/libxml/xmlIO.h
added lib/libxml2/include/libxml/xmlautomata.h
added lib/libxml2/include/libxml/xmlerror.h
added lib/libxml2/include/libxml/xmlexports.h
added lib/libxml2/include/libxml/xmlmemory.h
added lib/libxml2/include/libxml/xmlmodule.h
added lib/libxml2/include/libxml/xmlreader.h
added lib/libxml2/include/libxml/xmlregexp.h
added lib/libxml2/include/libxml/xmlsave.h
added lib/libxml2/include/libxml/xmlschemas.h
added lib/libxml2/include/libxml/xmlschemastypes.h
added lib/libxml2/include/libxml/xmlstring.h
added lib/libxml2/include/libxml/xmlunicode.h
added lib/libxml2/include/libxml/xmlversion.h
added lib/libxml2/include/libxml/xmlwin32version.h
added lib/libxml2/include/libxml/xmlwriter.h
added lib/libxml2/include/libxml/xpath.h
added lib/libxml2/include/libxml/xpathInternals.h
added lib/libxml2/include/libxml/xpointer.h
added lib/libxml2/lib/libxml2.dll
added lib/libxml2/lib/libxml2.lib
added lib/libz/include/zconf.h
added lib/libz/include/zlib.h
changed src/ChangeLog
changed src/Makefile
changed src/VirtualLeaf.pro
changed src/build_models/ChangeLog
changed src/build_models/Makefile
changed src/build_models/plugin_auxingrowth.pro
changed src/build_models/plugin_meinhardt.pro
changed src/build_models/plugin_test.pro
changed src/libplugin.pro
#!/usr/bin/perl

$cfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";
$hfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";
$pfilename = shift(@ARGV) || die "Usage: translate_plugin.pl [cfile] [hfile] [profile]\n";

$ocfname = $cfilename; $ocfname =~ s/\.cpp/_tl.cpp/g;
$ohfname = $hfilename; $ohfname =~ s/\.h/_tl.h/g;
$opfname = $pfilename; $opfname =~ s/\.pro/_tl.pro/g;

print STDERR "Translating '$cfilename' to '$ocfname', '$hfilename' to '$ohfname', and '$pfilename' to '$opfname'\n";

open cfile,"<$cfilename";
open ocfile,">$ocfname";

while (<cfile>) {
    
    #s/$hfilename/$ohfname/g;
    
    # translate function definitions
    if (/[a-zA-Z0-9 ]*::OnDivide/) {
	s/ParentInfo &parent_info/ParentInfo *parent_info/g;
	s/CellBase &daughter1/CellBase *daughter1/g;
	s/CellBase &daughter2/CellBase *daughter2/g;
    }
    
    if (/[a-zA-Z0-9 ]*::SetCellColor/) {
	s/CellBase &c/CellBase *c/g;
	s/QColor &color/QColor *color/g;
    }
    
    if (/[a-zA-Z0-9 ]*::CellHouseKeeping/) {
	s/CellBase &c/CellBase *c/g;
    }
    
    # translate member function calls
    s/\bparent_info\b\./parent_info->/g;
    s/\bdaughter1\b\./daughter1->/g;
    s/\bdaughter2\b\./daughter2->/g;
    s/\bc\b\./c->/g;
    s/\bcolor\b\./color->/g;
    print ocfile;
    
}

open hfile,"<$hfilename";
open ohfile,">$ohfname";

while (<hfile>) {
    if (/[ \t]*virtual[ \t]+void[ \t]+CellHouseKeeping/) {
	s/CellBase &c/CellBase *c/g;
    }
    if (/[ \t]*virtual[ \t]+void[ \t]+OnDivide/) {
	s/ParentInfo &parent_info/ParentInfo *parent_info/g;
	s/CellBase &daughter1/CellBase *daughter1/g;
	s/CellBase &daughter2/CellBase *daughter2/g;
    }
    if (/[ \t]*virtual[ \t]+void[ \t]+SetCellColor/) {
	s/CellBase &c/CellBase *c/g;
	s/QColor &color/QColor *color/g;
    }
    
    
    print ohfile;
    
}

open pfile,"<$pfilename";
open opfile,">$opfname";

while (<pfile>) {
    
    s/\bplugin\b\.h/plugin_tl\.h/g;
    s/\bplugin\b\.cpp/plugin_tl\.cpp/g;
    
    print opfile;
    
}

#finis