Files
MagicSetEditor2/tools/gen.pl
T
twanvl d2196eea09 Finally got precompiled headers to work.
Now all C++ files need to #include <util/prec.hpp>
 That is why all .cpp files are touched by this commit

Many changes to installers and update checking:
     - the window is now called PackagesWindow, in a new source file
     - update checking is now independent from the PackagesWindow. For update checking only a list of package versions are needed (vector<PackageDependency>). This is much less information to download at each startup.
     - the list of available packages is now a list of available Installers, since an installer can contain multiple packages.
     - moved the logic of dependency checking etc. to data/installer
     - moved the actual installation to util/io/package_manager
     - moved directory iteration/creation logic to util/file_utils
     - added PackageDirectory: the local and global package directory now have their own object (was part of PackageManager)
     - added PackageVersion: for detecting if a package has been modified after it was installed.
     - added PackageDescription: description/header of a package. Basicly the same as what Packaged provides.
     - added DownloadableInstaller: where to find an insaller, what does it contain?
     - added InstallablePackage: brining it all together: installer, package, status, action.

Current status: the insaller is currently broken in a few places, more on that soon.

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@792 0fc631ac-6414-0410-93d0-97cfa31319b6
2007-12-29 18:30:41 +00:00

31 lines
500 B
Perl

# Generate a header and source file
$file = $ARGV[0];
$macro = uc $file;
$macro =~ s@/@_@g;
# read templates
open F, "../src/code_template.hpp";
$hpp = join('',<F>);
close F;
open F, "../src/code_template.cpp";
$cpp = join('',<F>);
close F;
# insert stuff
$hpp =~ s/_\r?\n/_$macro\n/g;
$cpp =~ s@<util/prec.hpp>@$&\n#include <$file.hpp>@g;
# write files
open F, "> ../src/$file.hpp";
print F $hpp;
close F;
open F, "> ../src/$file.cpp";
print F $cpp;
close F;