]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - generic_module.py
radiant: mkdir config parent dir
[xonotic/netradiant.git] / generic_module.py
1 # Copyright (C) 2001-2006 William Joseph.
2 # For a list of contributors, see the accompanying CONTRIBUTORS file.
3
4 # This file is part of GtkRadiant.
5
6 # GtkRadiant is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
10
11 # GtkRadiant is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with GtkRadiant; if not, write to the Free Software
18 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
19
20
21 import os
22 import sys
23
24 def svnAddText(filename):
25   os.system("svn add " + filename);
26   os.system("svn ps svn:eol-style native " + filename);
27
28 def createHeaderTemplate(filename, name):
29   file = open(filename, "wt")
30   file.write("\n")
31   file.write("#if !defined(INCLUDED_" + name.upper() + "_H)\n")
32   file.write("#define INCLUDED_" + name.upper() + "_H\n")
33   file.write("\n")
34   file.write("#endif\n")
35
36 def createCPPTemplate(filename, name):
37   file = open(filename, "wt")
38   file.write("\n")
39   file.write("#include \"" + name + ".h\"\n")
40   file.write("\n")
41   file.close()
42
43 if __name__ == "__main__":
44   if not len(sys.argv) == 2:
45     print "usage: " + sys.argv[0] + " <module-path>"
46     
47   path = sys.argv[1]
48   name = os.path.split(path)[1];
49   
50   h = os.path.normpath(path + ".h")
51   print "writing " + h;
52   createHeaderTemplate(h, name)
53   svnAddText(h)
54
55   cpp = os.path.normpath(path + ".cpp")
56   print "writing " + cpp;
57   createCPPTemplate(cpp, name)
58   svnAddText(cpp)
59